Objective-J Information & Objective-J Links at HealthHaven.com
advertise
add site
services
publishers
database
health videos
Bookmark and Share

search wiki for    ?
web dir firms image gallery news pdf wiki shop video 
about
toolbar
stats
live show
health store
more stuff
JOIN/LOGIN
Featured Results:
CIRCLE INSTITUTE core lab Objective
CIRCLE INSTITUTE core lab Objective
circle-institute.com
 Objective Prostate Cancer Information for Physicians - Aureon
Objective Prostate Cancer Information for Physicians - Aureon
aureon.com
 Objective of the project
Objective of the project
biotethics.org
 Sporotrichosis,H&E, 20x Objective
Sporotrichosis,H&E, 20x Objective
telemedicine.org
 
Objective-J
Paradigm Multi-paradigm: reflective, object oriented, functional, imperative, scripting
Appeared in 2008
Developer 280 North, Inc.
Typing discipline dynamic, weak, duck
Influenced by Objective-C, JavaScript
License LGPL
Website http://cappuccino.org/

Objective-J is a programming language developed as part of the Cappuccino web development framework. Its syntax is nearly identical to the Objective-C syntax and it shares with JavaScript the same relationship that Objective-C has with the C programming language: that of being a strict, but small, superset; adding traditional inheritance and Smalltalk/Objective-C style dynamic dispatch. Pure JavaScript, being a prototype-based language, already has a notion of object orientation and inheritance, but Objective-J adds the use of class-based programming to JavaScript.

Programs written in Objective-J need to be preprocessed before being run by a web browser's JavaScript virtual machine. This step can occur in the web browser at runtime or by a compiler which translates Objective-J programs into pure JavaScript code. The Objective-J compiler is written in JavaScript, consequently deploying Objective-J programs does not require a plugin attached to the web browser.

Contents

[edit] Application

The first widely known use of Objective-J is in the Cappuccino-based web application 280 Slides. Even though Objective-J can be used (and has been designed) independently from the Cappuccino framework, Objective-J has primarily been invented to support web development in Cappuccino. Easy conversion to Objective-C means that Objective-J web applications can be ported to the iPhone.[1]

[edit] Syntax

Objective-J is a superset of JavaScript, which implies that any valid JavaScript code is also valid Objective-J code. The following example shows the definition in Objective-J of a class named Address; this class extends the root object CPObject, which plays a role similar to the Objective-C's NSObject. This example differs from traditional Objective-C in that the root object reflects the underlying Cappuccino framework as opposed to Cocoa, Objective-J does not use pointers and, as such, type definitions do not contain asterisk characters (in Objective-C, all objects must be dynamically allocated). In addition, instance variable definitions are never done in the @implementation file.

 @implementation Address : CPObject {    CPString name;    CPString city; } - (id)initWithName:(CPString)aName city:(CPString)aCity {     self = [super init];      name = aName;     city = aCity;      return self; } -(void)setName:(CPString)aName {       name = aName; } -(CPString)name {       return name; } +(id)newAddressWithName:(CPString)aName city:(CPString)aCity {       return [[self alloc] initWithName:aname city:aCity]; }  @end  

As with Objective-C, class method definitions and instance method definitions start with '+' (plus) and '-' (dash), respectively.

[edit] Memory Management

Like Objective-C 2.0's garbage-collected mode, objects in Objective-J do not need to be manually released because they are automatically freed by JavaScript's garbage collector.

[edit] See also

[edit] External links

[edit] Notes

  1. ^ SD Times Issue No. 219, April 1, 2009, pp. 1, 21



Product Results (view all...)

search wiki for    ?
web dir firms image gallery news pdf wiki shop video 



↑ top of page ↑about thumbshots