Zooms des semaines passées
Salut à tous,
Chaque semaine nous publierons une information liée à dojotoolkit: article vu sur le net, tip, cas pratique, fonction méconnue, etc...
Un zoom dont l'objectif est de faire précis, net, rapide, digeste
Tout le monde peut contribuer en postant en enfilade dans cette discussion, son titre sera changé chaque semaine.
ERE
Semaine du 04/01/09: Zoom sur Dojo / Spring
Zoom sur Dojo / Spring
Salut à tous,
Après les fêtes, rien de mieux que reprendre en lisant un excellent article/tutoriel dédié aux acteurs du monde Java (et oui il existe un monde en dehors de PHP...) et du framework incontournable Spring (encore que ce soit à revoir avec les EJB 3.1 mais c'est un autre débat).
Spring Javascript permet d'intégrer et de réaliser facilement des écrans HTML et Ajax dans le cadre d'une application J2EE ou Sprin MVC. Spring a choisi Dojo comme première implémentation mais gageons que jQuery suivra rapidement.
En attendant, bonne lecture, je vous redirige vers la page dédiée à Dojo mais ne vous privez pas de lire l'article en entier, il est excellent pour qui veut en savoir plus sur Java/Spring.
http://stsmedia.net/spring-finance-p...an-validation/
ERE
Semaine du 11/01/10: Zoom sur le positionnement du framework
Zoom sur le positionnement du framework
Salut,
Cette semaine ni code ni lien à se mettre sous la dent, juste une question que je pose à chacun: appréciez vous Dojo en temps que développeur(euse) ? On lit ici ou là des comparatifs de framework javascript, tant en terme de courbe d'apprentissage, de rapidité ou de richesse fonctionnelle etc... Et évidemment chaque framework est, ou peut sembler, le meilleur pour celui qui l'utilise volontairement au quotidien :P . Sans compter que l'évolution du Net fait constamment bouger les lignes de la notion de "bon" framework.
Mais vous, vous qui développez des applications avec Dojo, vous qui avez déjà peut-être manipulé d'autres frameworks ou qui êtes des pros du bon vieux code javascript brut de décoffrage, comment ressentez vous Dojo ? Correspond il aux attentes des développeurs d'aujourd'hui ? Est il trop compliqué ? La productivité annoncée est elle au rendez-vous ?
Enfin avec quel(s) outil(s)/langage server (PHP, JSP, Grails, Python...) l'utilisez vous, ou dans quel contexte ?
Pour finir sur une ligne de code ;) : comment ajouter une checkbox à chaque onglet d'un Tabcontainer ?
Code:
1 2 3 4 5
|
dojo.query("#tabContainer .dijitTabPane").forEach(
function(n){
new dijit.form.CheckBox({ }).placeAt("tabContainer_tablist_"+n.id, "first");
}); |
ERE
Dojo Dojo Dojooooo ♪ Haaaaan, les vaches... ♫
Bonjour, bonjour,
J'avoue avoir fort peu manipulé le Dojo, et n'avoir joué avec aucun autre framework. :oops:
Je reste cependant intéressé (de loin) par cette "nouveauté" (bon, d'accord, le temps passe). Je peux donc dire que je ressens Dojo comme qqch d'encore trop instable et qu'il faudrait continuer à développer. Certes, je ne connais pas la version 1.4, mais en 1.3 je constate de lourds ralentissements de l'affichage de mes pages. Outre cela, je suis terrifié par le nombre gigantesques de fichiers qui constituent la bibliothèque et qu'on peut soit-même augmenter. 8O
Voila pour moi deux points scabreux, l'ergonomie du client, et celle du développeur. :aie:
A part ça, j'ai trouvé à Dojo des fonctionnalités qui me simplifient la vie (la gestion des grid, les autocomplete, etc.). :ccool:
Ensuite, j'ai une petite contradiction à évoquer. J'avais tantôt l'impression de ne pas avoir la main sur tous les composants, et tantôt je pouvais modifier à ma guise certains éléments. Est-ce qu'on doit nous laisser la main sur tout, ça c'est une question existentielle. ;)
Alors oui, il est compliqué aux premiers abords, pas tjs lisible avec toutes ses possibilités, mais quand on le titille un peu, on se rend compte qu'il y a quand même une structure qui a été longuement réfléchie, même si je rappelle qu'il faut continuer à l'améliorer. J'ai utilisé trois versions de Dojo différentes en trois mois, j'ai donc pu voir l'évolution. Et évolution, il y a eu! :D
Bon courage à tous, car j'ai parfois l'impression que du côté francophone on ne se bat pas au portillon pour utiliser le Dojo... ;)
Semaine du 18/01/10: Zoom sur les nouveaux thèmes
Zoom sur les nouveaux thèmes Dijit
D'après les informations circulant chez sitepen (la société qui canalise Dojo) et dans les newsletters une version 1.5 ou 1.6 verrait le jour en avril. A cette occasion 2 nouveau thèmes sont susceptibles de faire leur apparition. D'abord LUCID, un thème initié par IBM et qui est en cours de réalisation: vous pouvez le voir ici http://archive.dojotoolkit.org/night...ml?theme=lucid. Notez que chez dojotoolkit "bill" s'occupe de migrer pas mal de Dijit; on peut suivrel'évolution du travail ici: http://bill.dojotoolkit.org/lucid/
Ensuite le thème ARISTOJO réalisé chez SitePen et quasi terminé: http://sitepen.com/~canderson/aristo...emeTester.html.
Gageons que ces nouveaux thèmes soient réellement fournis avec la 1.5 car du côté de chez IBM on ne serait pas spécialement opposé à une mise à disposition pour la version 2.0 !
Enfin en vue de la version 2 une question a été posée concernant la prise en considération des navigateurs des mobiles et de leurs spécificités.
Le site de la semaine est celui de lucid-desktop (rien à voir avec le nom du thème précédent) http://www.lucid-desktop.org/demo/
Entièrement réalisé en Dojo (v1.1 je crois, pas la version la plus rapide) c'est un bureau virtuel. Il n'est pas complet, loin de là mais montre les capacités du framework pour ceux qui ont encore des doutes.
Bon dev,
ERE
Semaine du 25/01/10: Zoom sur dojo.xd.js
Semaine du 25/01/10: Zoom sur dojo.xd.js
Quasiment tous les codes fournis sur ce forum font référence à la bibliothèque Dojo sur ce modèle de code bien connu:
Code:
<script type="text/javascript" src="/dojo_1.4/dojo/dojo.js" djConfig="isDebug: true, parseOnLoad: true"></script>
(Ce qui d'ailleurs oblige généralement à changer les paths pour tester ;) )
Mais savez vous que Google et AOL hébergent les librairies de Dojo et offrent ainsi un lien "universel", qui de plus est ultrarapide et permet une mise en cache. Evidemment cette liaison externalisée peut avoir des impacts (localisation des widgets et librairies personnels, etc...), mais depuis la version 1.3 de Dojo le "loader" a été revu pour avoir une structure semblable entre les deux modes d'accès aux ressources (c'est notamment un des rôles de l'attribut dojo.baseUrl).
Pour bénéficier de cette architecture, on oublie dojo.js et on fait alors référence à un fichier Dojo dojo.xd.js, Xd signifiant "XDomain".
Code:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.4.0/dojo/dojo.xd.js" djConfig="isDebug: true, parseOnLoad: true"></script>
ou encore:
Code:
<script type="text/javascript" src="http://o.aolcdn.com/dojo/1.4/dojo/dojo.xd.js"></script>
Pour être complet, notez qu'il en va de même pour les CSS fournies:
Code:
1 2 3
| <style type="text/css">
@import "http://ajax.googleapis.com/ajax/libs/dojo/1.4.0/dojox/widget/Loader/Loader.css";
</style> |
Testez par exemple ce code travaillé dernièrement sur le forum, en effectuant un simple copier-coller :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| <html >
<head>
<title>Dojo XDomain</title>
<style type="text/css">
@import "http://ajax.googleapis.com/ajax/libs/dojo/1.4.0/dojox/widget/Loader/Loader.css";
@import "http://ajax.googleapis.com/ajax/libs/dojo/1.4.0/dijit/themes/tundra/tundra.css";
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.4.0/dojo/dojo.xd.js"
djConfig="isDebug:true, parseOnLoad: true"></script>
<script type="text/javascript">
dojo.require("dojo.parser");
dojo.require("dojox.widget.Loader");
dojo.require("dijit.form.Button");
dojo.ready(function() {
loader = new dojox.widget.Loader({loadMessage: "Simulation de Chargement du chart"});
});
</script>
</head>
<body class="tundra">
<button dojoType="dijit.form.Button" onClick="doJob();">3 secondes</button>
<script type="text/javascript">
function renderChart() {}
function doJob()
{
loader._show();
renderChart();
//pour la simulation
setTimeout('loader._hide()', 3000);
}
</script>
</body>
</html> |
Notez une chose fondamentale: étant donné que le téléchargement n'est pas synchrone dans notre cas (dojo.xd.js va charger au fil de l'eau les librairies demandées), il est impératif de commencer à travailler le code dojo (création d'objets,etc ...) à partir de dojo.addOnload ou dojo.ready (en v1.4, c'est un alias du précédent).
Bon dev,
ERE
Award Great Indian Developer Summit
Le toolkit Dojo reçoit un award de la part de la Great Indian Developer Summit 2012 (GIDS).
:fleche: Lien vers la discussion sur le forum.