Applet Java : L'auteur du framework Pulpcore envisage un portage pour Android
Un appel aux dons pour accélérer l'initiative
Le 2009-09-28 13:46:47, 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:
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:
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 ?
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:
- divers exemples des possibilités graphiques
- la page officielle du projet (Google Code).
- un benchmark (indépendant) des différentes technos RIA/Framework, dont pulpcore.
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.
-
Traroth2Membre émériteC'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.le 29/09/2009 à 10:25
-
cob59Membre éprouvé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...le 12/10/2009 à 13:43 -
nouknoukModérateurJe désespérais moi aussi. Merci pour ton post, ça me permet de savoir qu'on n'est pas si seuls finalement
Si ça te tente, developpez.com serait -j'en suis certain- très intéressé par ta proseMaintenant, est-il judicieux d'investir du temps dans une adaptation 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...
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.le 12/10/2009 à 17:03 -
cob59Membre éprouvé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.le 13/10/2009 à 12:49 -
nouknoukModérateurJe ne comprends pas ce que tu veux dire, alors.
Excellente nouvelleJe 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.
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.le 13/10/2009 à 13:00