Feb
27th

FOWA : Construire une application web avec Cappuccino et Objective-J

Travailler chez DuProprio comme développeur a plusieurs avantages, et un des bons est certainement d’avoir pu me rendre au FOWA (Future of Web Apps) 2009 qui avait lieu Miami cette semaine!

event badge

Lundi, j’ai eu la chance d’assister un workshop donné par Francisco Tolmasky’s (280 North) et intitulé “How to build advanced web apps with Cappuccino and Objective-J”.

J’ai vraiment trippé et suis très enthousiaste face ce nouveau framework. J’imagine déj plusieurs projets lancer afin de pouvoir jouer dans le code et tester tout ça. C’était assez technique comme présentation par contre alors je vais me contenter de tracer un aperçu pour l’instant. Une fois mes tests effectués, j’essaierai de publier d’autres observations plus détaillées et des exemples de développement.

« Cappuccino is an open source framework that makes it easy to build desktop-caliber applications that run in a web browser. »

C’est la phrase que 280north utilise pour décrire son nouveau framework et elle illustre parfaitement bien le but du framework. On parle ici de “desktop-caliber applications”, pas de site internet conventionnel. On parle de construire des applications en ligne telles que Google Maps, Google Docs, 280slides.com, etc… Des applications que l’on utilise pour faire un travail, pas pour consulter ou échanger de l’information. C’est une distinction essentielle faire, car le framework est très orienté dans cette direction et il risque de vous décevoir pour tout autre type de développement.

Voici quelques points et caractéristiques que j’ai relevé durant l’atelier et un vidéo que j’ai trouvé de la conférence que Francisco a donné FOWA London l’an dernier :

Aperçu très rapido de Cappuccino et Objective-J

  • Bâti sur l’api Cocoa, utilisé pour le développement d’applications Mac et iPhone
  • Objective-J utilise le caractère @ en préfixe des fonctions pour ajouter sans interférer des fonctions javascript
  • Pas besoin de compiler le code, facile développer / tester
  • typage des variables fortement suggéré pour des fonctions de débugguages dans le futur, mais pas obligé
  • object.method() devient [object method]
  • on attends plus après les browser pour ajouter des fonctions et les supporter, depuis 5 ans rien de nouveau. On ajoute les fonctions qu’on veut
  • MVC Application framework
  • Support des fonctions de base des systèmes d’exploitations comme “nouveau, enregistrer, autosave, annuler, refaire, etc…”. La grande majorité des fonctions que l’on attend d’une application desktop mais que l’on a jamais le temps de développer pour une application en ligne
  • Contrôle incroyable du positionnement des éléments grâce aux Layouts et aux Views. Il est facile de décider comment se comportent les différentes sections de la page lors des redimensionnement de la fenêtre afin d’avoir un plan de travail toujours optimal (ancré gauche, étirement vertical, etc…).
  • Plusieurs contrôles très “sexy” sont disponibles pour créer des formulaires de contrôle avancés. C’est éléments peuvent même être “skinnés” et s’afficheront exactement de la même façon dans tous les navigateurs.

Visitez cappuccino.org pour plus d’infos et quelques demos »

Surveillez aussi 280atlas.com, l’éditeur wysiwyg qui devrait être disponible dans les prochaines semaines pour faciliter au maximum le développement sur cette plateforme.

Frédérick Dubois
DuProprio.com / ByTheOwner.com

2 Responses to “FOWA : Construire une application web avec Cappuccino et Objective-J”

  1. Bonjour,

    Je suis en train de rédigier des tutoriaux sur cappuccino. Cela pourra aider les personnes qui veulent voir ce dont quoi le framework est capable de faire (aucune connaissance avancée de javascript ou de cocoa est requise pour débuter).

    http://www.nice-panorama.com/Programmation/cappuccino/

  2. cjed says:

    Un framework de bridge Cappuccino/Java, CP2JavaWS, est disponible en open source (LGPL) sur sourceforge. Il propose un accès simplifié (transparent) des services Java distants, via un object Objective-J de type proxy, et avec une syntaxe similaire celle de GWT (mais sans nécessiter de génération). Il gère également l’accès via authentification digest, la navigation dans les table view (sans pagination apparente) et la création de vues master/detail automatiques :
    http://sourceforge.net/projects/cp2javaws/
    Démo : http://cp2javaws.appspot.com/

Leave a Reply