Célkitűzés-J

Célkitűzés-J
Az első változat kelte 2008
Paradigma objektum-orientált , reflektív , imperatív , funkcionális , Script
Szerző 280 North, Inc.
Utolsó verzió 0.6
Gépelés dinamikus , gyenge , kacsa
Befolyásolta C-objektív , JavaScript
Végrehajtások Cappuccino
Engedély LGPL
Weboldal http://cappuccino.org/


Az Objective-J egy programozási nyelv, amelyet a Cappuccino keretrendszerrel egyidejűleg fejlesztettek ki . Szintaxisa lényegében megegyezik a C-objektuméval . Ezenkívül megosztja a Javascript-lel ugyanazt a kapcsolatot, mint az Objective-C és a C nyelv között  : ez egyfajta szuperhalmaz, amely hozzáadja az öröklődés fogalmát , valamint a stílus dinamikus tipizálását. Smalltalk / Objective-C a JavaScript-hez .

Az Objective-J-ben írt programokat össze kell állítani, mielőtt elindíthatnák őket egy webböngészőben . Ezt az összeállítást közvetlenül a böngészőben futtathatja le egy fordító, amely az Objective-J programokat tiszta JavaScript kódra fordítja. Az Objective-J fordító JavaScript-ben van megírva, így az Objective-J-ben írt programok telepítéséhez nincs szükség plugin- re a böngészőhöz.

Alkalmazás

Az Objective-J első ismert felhasználását a Cappuccino keretrendszerrel alkalmazták a 280Slides webalkalmazás fejlesztésére . Bár az Objective-J a Cappuccino kerettől függetlenül is használható (és megtervezett), az Objective-J-t eredetileg azért fejlesztették ki, hogy támogassa a webes fejlesztéseket a Cappuccino segítségével.

Szintaxis

Az Objective-J a JavaScript egy halmaza, ez azt jelenti, hogy minden érvényes JavaScript-kód érvényes az Objective-J-kódban is. A következő példa az Address nevű osztály Objective-J deklarációját mutatja be , ez az osztály a CPObject alapobjektum egyik alosztálya, amely ugyanazt a szerepet tölti be, mint az NSObject az Objective-C / Cocoa fájlban. Még akkor is, ha ez nem azonos az alapobjektum nevével, ez a kód példa lehet az Objective-C osztálydeklarációjára is.

@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

Csakúgy, mint az Objective-C-ben, az osztály metódusok és a példány metódusok deklarálása „+” (plusz) és „-” (mínusz) kezdettel kezdődik.

Memóriakezelés

Ellentétben a Objective-C tárgyak Objective-J nem kell elengedni, mert azok automatikusan megjelent a szemétgyűjtő in English  : szemétgyűjtő JavaScript.

Lásd is

Kapcsolódó cikk

Külső linkek