Developpez.com

Plus de 2 000 forums
et jusqu'à 5 000 nouveaux messages par jour

Applet Java : L'auteur du framework Pulpcore envisage un portage pour Android
Un appel aux dons pour accélérer l'initiative

Le , par nouknouk, Modérateur
Bonjour à tous,

dans le cadre du développement d'applets Java (non signées, eye candy et relativement légères), un framework 2D distribué en LGPL existe déjà: Pulpcore, créé par David Brackeen.

La grande ligne directrice à l'origine de ce développement est grosso modo de frounir un framework capable de concurrencer au niveau de l'expérience utilisateur les réalisations faites au moyen de Flash, notamment:

  • un framework compatible avec un maximum de browser 'out of the box' (IE, Firefox, Safari, Chrome).
  • un framework évitant l'installation d'un plugin tierce partie pour la plus grande proportion d'utilisateurs possible, d'où une compatibilité Java 1.4 ainsi qu'un moteur de rendu 2D full software.
  • un moteur de rendu 2D (bitmap uniquement, pas de vectoriel) qui offre de bonnes performances tout en proposant un multitudes d'effets (Blending, rotation, scale, ...) et une gestion intelligente du rendu (dirty rectangles, ...).
  • un framework proposant d'emblée une collection d'outils dont le développeur pourrait avoir besoin. Par exemple, une simple recompilation du projet en mode 'release' est capable d'obfusquer le code, d'optimiser la taille des ressources (images, ...) en plus de les inclure dans un paquetage ZIP, de générer une page HTML avec le code pour lancer l'applet, etc...


Pour voir par vous même:


La présentation étant faite, venons en au coeur du sujet, à savoir Android.

En effet, David Brackeen a annoncé il y a quelques temps que le portage du framework était envisagé dans un futur relativement proche (Immediate and long-range plans for PulpCore).

L'idée avouée serait d'avoir un framework capable de générer tout aussi bien une applet intégrable dans une page web qu'une application prévue pour Android au moyen d'une simple recompilation:

As for compiling, yes, you'd have to select either "applet" or "android" at build-time. However, I think this can be done with zero source changes - so you'd have the same source code for both applets and android.

Une campagne de dons a d'ailleurs été lancée: bien que David compte effectivement porter le framework à moyen terme sur Android, ce n'est malheureusement pas sa priorité faute de temps disponible. Il a proposé d'ouvrir une campagne de dons pour lui donner les moyens de travailler au plus vite sur cet aspect ; une estimation de sa part a abouti à une somme d'environ 2000$ au total.

Et vous, seriez-vous intéressé par un tel framework pour simplifier le développement d'applications (notamment de jeux) pour Android ? Ou bien pensez-vous que l'API de base d'Android suffit largement et que l'utilité d'un tel framework est faible ?

Que pensez-vous de l'intérêt de déployer une même application à la fois comme Applet dans une page web et comme application Android ?

Seriez-vous prêt à participer financièrement pour voir un tel framework disponible à court terme ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Traroth2 Traroth2 - Expert éminent http://www.developpez.com
le 29/09/2009 à 10:25
C'est une excellente nouvelle. Je me suis un peu amusé avec Pulpcore, et c'est vraiment intéressant, comme framework : simple à mettre en oeuvre, léger, performant. Idéal pour Android, en fait.
Avatar de cob59 cob59 - Membre éprouvé http://www.developpez.com
le 12/10/2009 à 13:43
Pas plus de réponses sur ce topic ?

Je l'utilise depuis quelques mois, et je dois dire que pulpcore est vraiment agréable à utiliser, "programer-friendly" et enfantin à mettre en place sous forme d'Applet. Je crois que pulpcore pourrait devenir une alternative crédible à Flash si une plus large communauté d'utilisateurs venaient apporter leur contribution en articles, tutoriels et projets-exemples (ceux-ci sont plutôt intéressants mais ceux-ci ne proposent pas leurs sources ).

Maintenant, est-il judicieux d'investir du temps dans une adaptation sous Android ?
Je ne connais pas l'API de base d'Android, donc j'ignore si cela représente beaucoup de travail et si cela en vaudrait la peine. Mais le projet mériterait peut-être de s'étendre un peu plus aux desktop/laptop pour faire parler de lui, avant d'envisager des applications mobiles...
Avatar de nouknouk nouknouk - Modérateur http://www.developpez.com
le 12/10/2009 à 17:03
Citation Envoyé par cob59  Voir le message
Pas plus de réponses sur ce topic ?

Je désespérais moi aussi. Merci pour ton post, ça me permet de savoir qu'on n'est pas si seuls finalement

Je crois que pulpcore pourrait devenir une alternative crédible à Flash si une plus large communauté d'utilisateurs venaient apporter leur contribution en articles, tutoriels et projets-exemples (ceux-ci sont plutôt intéressants mais ceux-ci ne proposent pas leurs sources ).

Je suis assez d'accord pour les articles & tutoriels. Faire un tutoriel pour pulpcore est d'ailleurs dans ma TODO list personnelle depuis quasiment un an, mais je n'arrive malheureusement toujours pas à me dégager assez de temps libre pour le faire.

Si ça te tente, developpez.com serait -j'en suis certain- très intéressé par ta prose

Maintenant, est-il judicieux d'investir du temps dans une adaptation sous Android ?

Je manque actuellement de connaissances sur l'utilisation concrète de la plateforme Android pour dire si la portage serait réellement un gros plus pour un développeur qui veut 'juste' faire une appli sous Android.

Par contre, il y a un point sur lequel je vois personnellement tout l'intérêt du portage: faire des applications (typiquement des petits jeux) que les utilisateurs découvriront sur leur ordinateur et qu'ils continueront à utiliser sur leur smartphone.

L'inverse est d'ailleurs vrai également: faire découvrir une application en profitant de la 'visibilité' offerte par l'Android Market, et proposer à l'utilisateur de retrouver l'application sur son ordinateur à la maison.

Mais le projet mériterait peut-être de s'étendre un peu plus aux desktop/laptop pour faire parler de lui, avant d'envisager des applications mobiles...

Un peu off-topic, mais bon...

Je ne suis pas d'accord: je ne pense pas que pulpcore ait intérêt à viser les applications 'desktop'. Pour moi, l'intérêt de pulpcore réside dans les possibilités qu'il offre aux applets, qui -par nature- imposent une restriction majeure supplémentaire: ça doit marcher 'tout de suite'. Cela a pour conséquences:

- de vouloir éviter les applets signées. La sandbox Java limite alors énormément de choses.

- Le JAR à télécharger doit être léger: une applet n'est pas faite pour 'peser' 10Mo. Sinon, le visiteur passera rapidement son chemin.

- la recherche d'un maximum de compatibilité avec les vieilles versions de Java. Même principe: le visiteur qui arrive sur le site web doit pouvoir utiliser l'applet sans (re-)télécharger la dernière version de la JRE. Sinon il se sauvera.

Le cas du desktop me semble très différent dans ce sens qu'il ne vise plus le même public et/ou les mêmes usages: si un visiteur a déjà accepté le principe de télécharger et d'installer une application 'desktop', il ne rechignera pas à attendre quelques minutes de plus à cause de la lourdeur du téléchargement et/ou la nécessité d'installer une JRE (plus) récente.

Dans le cas d'une appli desktop, les restrictions des applets en moins font qu'il est alors très aisé de s'appuyer sur des framework tiers qui proposeront d'autres gros avantages, comme par exemple l'accélération matérielle du rendu.
Avatar de cob59 cob59 - Membre éprouvé http://www.developpez.com
le 13/10/2009 à 12:49
En fait par " s'étendre aux desktop/laptop " j'entendais : par l'intermédiaire d'un banal navigateur, grâce à des Applet. Je suis d'accord qu'installer des jeux Java comme applications "tierces" serait un peu étouffant et rebuterait l'utilisateur, ce n'est pas ce que je voulais dire.
Je crois justement que pulpcore choisit la bonne stratégie, en misant une une config Client pas forcément neuve et sur l'intégration silencieuse et automatique de l'Applet.

Concernant la rédaction d'un cours/tutoriel j'y réfléchissais en fait
Je crois maitriser les Stage/Scene/Sprite/etc suffisamment bien pour écrire un tutoriel d'initiation à ces concepts.
Mais je ne connais ni les autres Frameworks Java (Slick, GTGE, JGame, Processing), ni aucun langage de RIA, et je ne connais Flash que superficiellement.
Donc pour la partie "comparatifs" je me fie surtout à ce qu'on dit.
Avatar de nouknouk nouknouk - Modérateur http://www.developpez.com
le 13/10/2009 à 13:00
Citation Envoyé par cob59  Voir le message
En fait par " s'étendre aux desktop/laptop " j'entendais : par l'intermédiaire d'un banal navigateur, grâce à des Applet.

Je ne comprends pas ce que tu veux dire, alors.

Citation Envoyé par cob59  Voir le message
Concernant la rédaction d'un cours/tutoriel j'y réfléchissais en fait
Je crois maitriser les Stage/Scene/Sprite/etc suffisamment bien pour écrire un tutoriel d'initiation à ces concepts.

Excellente nouvelle Je pense que ceci serait déjà suffisant ; une petite partie supplémentaire sur l'installation/configuration du framework et son intégration dans un IDE (typiquement NetBeans pour lequel pulpcore a déjà un plugin) serait idéale.

Mais je ne connais ni les autres Frameworks Java (Slick, GTGE, JGame, Processing), ni aucun langage de RIA, et je ne connais Flash que superficiellement. Donc pour la partie "comparatifs" je me fie surtout à ce qu'on dit.

Le tuto n'a pas vocation à présenter un comparatif, encore moins exhaustif. Tout juste indiquer les fonctionnalités offertes par Pulpcore, point barre (exemple, le tuto de la SDL, extrêmement bien fourni pour le coup).

Je te conseille de te rapprocher de l'équipe 2D/3D/Jeux par MP pour plus d'infos si tu es prêt à donner un peu de temps à la communauté pour faire ce tuto.
Offres d'emploi IT
Développeur android
apéro resto disco - Rhône Alpes - La Motte-Servolex (73290)
Futurs ingénieurs informatique H/F
Adaming - Midi Pyrénées - Toulouse (31000)
Developpeur mobile IOs/android H/F
BlackSwan - Ile de France - Paris (75002)

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique Android : Feanorin -