french english

RSS 1.0 
 
 Login 
 Password 
 Créer un compte 
 
09-10-08 / 23:13 : JSCocoa : appel d'Objective-C depuis javascript (cjed)
Après Cappuccino, un nouveau projet open-source (développé par un français) promouvant Cocoa vient d'être lancé, JSCocoa. Cette biblitothèque javascript utilise le moteur JavascriptCore (moteur javascript du framework WebKit d'Apple) afin d'appeler du code C et Objective-C d'après du javascript.

Contrairement à Cappuccino (qui est une réécriture complète de classes Objective-C en javascript et utilise un compilateur dynamique du code client Objective-J vers du javascript standard), JSCocoa propose une syntaxe purement javascript (donc moins transparente que l'Objective-J - ie moins proche de l'équivalent Objective-C). Cependant JSCocoa reprend certaines notations de Rubby et jQuery pour simplifier la syntaxe.

Au final c'est bien de l'Objective-C qui est appelé (contrairement à la solution Cappuccino), via le runtime ObjCRuntime, BridgeSupport et libffi. La solution ne fonctionne donc que sur MacOSX (10.5.5, PPC et Intel), ce qui limite son intérêt comparé à Cappuccino. A moins qu'Apple ne livre un ObjCRuntime pour Windows, mais les classes Cocoa devraient alors être portées (la fameuse YellowBox...), ce qui rendrait le bridge javascript moins utile, comme c'est le cas d'ailleurs déjà pour JSCocoa sur OSX (permet en fait de simplifier le déploiement, via un simple navigateur, et permet l'accessibilité aux fonctions du système, sujet sur lequel Cappuccino pourrait utiliser ce type de bridge).

Puisqu'il ne s'agit que d'un bridge, l'installation ne pèse que 1,3Mo (contient un exemple, JSCoreAnimation). JSCocoa permet de charger des NIBs depuis le code javascript, mais les IBOutlet et IBAction doivent y être déclarés manuellement.

Finalement JSCocoa n'est qu'une simplification de la procédure présentée il y a quelques mois, à savoir l'appel d'Objective-C depuis une WebView (View de Webkit), au travers d'un WebScriptObject.
C'est aussi la troisième solution popularisant Cocoa en quelques mois, sans compter l'UIKit de l'iPhone.
Commentaires
Poster un commentaire 
  
    
  image de securisation du formulaire


  
      (sera ajouté après validation)