Archives pour la catégorie “Flex”
Publié par aranud dans Flex, Livres
Pour faire suite à mon post précédent sur les meilleurs livres pour démarrer en Flex, voici le résultat de mes lectures concernant des livres un peu plus pointus.
  |
Actionscript 3.0 Cookbook
Voici un livre de recettes qui s’adresse à ceux qui connaissent un peu Flex. Ce livre répond illico-presto à des questions simples du genre “comment supprimer le 3ème caractère d’une chaine?” ou encore “comment dessiner un rectangle?”. N’espérez donc pas apprendre a programmer en Flex / ActionScript juste en lisant ce livre. D’ailleurs, ce livre se lit assez mal. C’est pas vraiment passionnant de lire les recettes les unes apres les autres.
Par contre, ce livre peut s’avérer très utile en complément d’un livre pour débuter en Flex. Il m’a été très utile lorsque j’ai commencé à écrire mes premières vraies applications en Flex.
Conclusion: Débutants en Flex, commencez par autre chose, Experts en Flex passez votre chemin et les autres, allez-y, vous y apprendrez peut-être des choses. |
|
  |
Essential ActionScript 3.0
La bible de l’ActionScript 3.0. Ce livre est réservé à ceux qui veulent faire des choses compliquées avec Flex, et comme les choses compliquées en Flex se font en ActionScript… il faut connaitre ce qu’il y a sous le capot de Flex. Et c’est précisément ce que ce livre vous montrera.
Pour moi le livre est composé de deux parties. La première partie traite uniquement du langage (classe, héritage, namespace, etc.) et vous permettra de faire le tour complet de ActionScript. Quand je dis complet, c’est vraiment complet. Le chapitre sur les namespaces est d’ailleurs assez ardu et j’ai du le lire plusieurs fois pour arriver à comprendre tout ce qui était écrit !!
La seconde partie est de loin la plus intéressante et traite de l’API mise à notre disposition par le Flash player. La aussi, c’est traité en profondeur. Il y a 55 pages pour expliquer en long en large et en travers XML et E4X, un chapitre pour comprendre les DisplayList, un autre pour savoir comment le Garbage Collector du Flash player fonctionne, etc.
Conclusion: Un must-have pour tous ceux qui veulent aller très loin avec Flex. Si tel n’est pas votre but, épargnez-vous la lecture (indigeste) des 850 pages de ce livre! |
|
  |
Foundation Actionscript Animation: Making Things Move
Si vous n’êtes pas rassasié après avoir lu Essential ActionScript 3.0, vous pouvez tenter celui-ci. A titre personnel, ce livre ne m’a ni beaucoup appris, ni beaucoup servi.
En fait ce livre vous explique comment animer des objets en ActionScript 3.0. Mais on parle ici plus d’objets Flash que de composants Flex. Concernant les animations justement, une bonne partie du livre traite de maths et de physique, à savoir trigonométrie, algèbre matricielle, vitesse, accélération, attraction, gravité, etc.
Bref, un livre qui peut vous servir si vous cherchez à faire des jeux en Flash. Si comme moi, vous développez des RIA (Rich Internet Application) en Flex, l’intérêt de ce livre est plus que limité. |
Pas de commentaire »
Publié par aranud dans Flex, Livres
Comme à chaque fois que je dois travailler sur une nouvelle technologie, une nouvelle librairie ou un nouveau language, je commence par lire un maximum de livres sur le sujet. Un livre ne suffit généralement pas car chacun à ses spécifités: certains sont mieux pour débuter mais deviennent ensuite inutiles, d’autres sont inabordables au départ, etc.
Acheter des livres peut paraitre superflu alors qu’il existe d’un coté plein d’articles sur Internet pour se former sans dépenser un sou, et de l’autre des formations sur-mesure de quelques jours à un semaine (BaaO en propose de très bonnes sur Flex) pour ceux qui veulent monter en compétence rapidement. D’un autre coté, c’est un bon deal. On apprend plus vite et mieux qu’en lisant une série d’articles plus ou moins bons sur Internet et ça coute de l’ordre de 100 Euros (2 a 3 livres entre 30 et 40 euros). Comparé à une semaine de formation à 2000 euros, c’est 20 fois moins cher et plus complet.
Lorsque j’ai commencé à m’intéresser à Flex 2, je n’ai pas dérogé à la règle et j’ai acheté tous les livres disponibles. Voici mon point de vue sur chacun des livres qui étaient disponible sur Flex en juin 2007.
  |
Programming Flex 2
Un livre bien écrit et très agréable à lire. On y trouve notamment une bonne introduction aux languages ActionScript 3 et MXML. Par contre, point ici de Flex Builder; ce livre ne traite que du Flex SDK.
Ce livre traite en profondeur de Flex 2 en nous épargnant les trivialités d’usage. La plupart des sujets un peu compliqués de Flex 2 à savoir les states, les effets, les styles, le drag and drop, les item renderers, la gestion du focus, et le data binding sont donc traités en détails.
Le livre est en revanche très leger sur la présentation et l’utilisation des différents composants graphiques disponibles en standard dans Flex 2 (DataGrid, TreeView, Menu, PopUp, etc.). Il ne traite d’ailleurs pas du tout de Flex Charting. Inutile donc de chercher dans ce livre comment utiliser le composant PieChart. Ce livre ne traite également que partiellement de l’accès aux données distantes (Web Services, RemoteObjects, …). Adobe Flex DataServices (LiveCycle Data Services) n’est pas du tout couvert.
En conclusion, c’est un livre idéal pour découvrir Flex si vous aimez lire loin de votre écran (dans le train, …). Vous apprécierez d’autant plus ce livre si vous pratiquez déjà un langage objets (Java, C#) et êtes familier avec un ou plusieurs frameworks graphiques à base de composants (Windows Forms, Swing, ASP.NET, JSF, ou autres). |
| |
  |
Professional Adobe Flex 2
Ce livre, c’est l’exact opposé du livre précédent. Il couvre pratiquement tous les sujet, y compris Flex Builder, les Charts, Flex Data Services, et même les nouveautés de la version 2.0.1….mais il n’y a aucune trame.
C’est l’archétype du bouquin écrit à la va-vite par un ensemble d’auteurs (3 dans notre cas) sans aucune cohésion. Le résultat c’est que le livre utilise par exemple la notion de behavior dans un chapitre mais ne l’introduit que 4 chapitres plus tard. De même, ActionScript n’est présenté qu’au chapitre 16 (sur 26) alors qu’il est utilisé tout au long du livre.
Conclusion, ce livre n’est intéressant que si vous avez déjà fait le tour de Flex et que vous cherchez à approfondir votre connaissance en lisant les chapitres qui vous intéressent. |
| |
  |
Adobe Flex 2: Training from the Source
Un livre original ! Ce livre est en fait un tutoriel géant qui vous permettra de découvrir tous les fonctionnalités de Flex 2.
Pratiquement tous les concepts sont abordés, en commençant par les plus simples et en terminant par les plus complexes. Je vous conseille donc vivement de lire le livre dans l’ordre. Néanmoins, il est possible de sauter un ou plusieurs chapitres grâce au CD fourni qui contient tous les sources du livres.
Pour conclure, choisissez ce livre pour démarrer en Flex si vous aimez les tutoriels et que vous n’avez pas peur de lire devant votre écran. Ce livre est également utile ponctuellement par la suite pour se remémorer comment marche tel ou tel fonctionalité de Flex (drag and drop, binding, etc.) |
| |
  |
The Essential Guide to Flex 2 with ActionScript 3.0
Pas vraiment excellent, ni vraiment mauvais. Sans savoir réellement expliquer pourquoi, je n’ai pas accroché avec ce livre. Peut-être parce que c’est le dernier que j’ai lu et que je n’ai rien appris de plus que ce que j’avais lu dans les autres livres, peut-être également parce que l’auteur a trop tendance a systématiquement survoler les sujets abordés.
Je n’ai pas aimé ce livre également parce qu’il essaye de marier un style narratif, à la façon Programming Flex 2, avec des tutoriels comme dans Training from the Sources. Et finalement le résultat n’est pas convaincant à mes yeux. Je pense qu’après avoir lu ce livre, un débutant en Flex saura à peu près se débrouiller en Flex mais qu’il lui manquera un petit quelque chose pour bien comprendre Flex et se sentir à l’aise.
En conclusion, je pense qu’il vaut mieux vous tourner vers d’autres livres sauf si votre objectif est juste de vous faire une opinion sur Flex sans réellement le pratiquer. |
4 commentaires »
Comme toute API qui se respecte, celle de Flex 2 réserve son lot de bizarreries. Cette semaine, j’ai eu besoin d’afficher un label cliquable. Et pour bien montrer à mes utilisateurs Web que ce label est cliquable, je voulais que le curseur en forme de main s’affiche lorsque la souris passe au dessus de ce label.
C’est le genre de truc qu’on fait des milliers de fois sans se poser de question en HTML:
<span style=”cursor:hand;cursor:pointer;text-decoration:underline” onclick=”alert(’Facile…’)”>Cliquer ici</span>
En Flex, l’équivalent se nomme useHandCursor. On s’attend donc à ce que le code suivant fonctionne:
<mx:Label text=”Cliquer ici” useHandCursor=”true”/>
Que nenni ! Rien nada. Pas de curseur en forme de main, rien. De deux choses l’une: Ou bien c’est un bug, mais dans ce cas comment se fait-il que personne n’ai trouvé ce bug aussi évident depuis la sortie de Flex 2 en 2006?… ou bien c’est un de ces cas où le design de l’API laisse à desirer et où changer la valeur de la propriété ne suffit pas. Encore faut-il trouver ce qui manque.
Et là, les gars de chez Adobe-Macromedia m’ont épaté:
Il faut modifier non pas UNE propriété…
non pas DEUX….
mais… TROIS !!!
Et, oui, c’est carrément trois propriétés qu’il faut changer pour voir apparaitre ce fameux curseur en forme de main.
Il faut donc dire à notre label, de montrer son curseur (useHandCursor=true), de se comporter comme un bouton (buttonMode=true) et enfin de ne pas déléguer les évènements de la souris à ses enfants (mouseChildren=false). On a connu plus intuitif !
Pour résumer voici le code MXML qu’il faut écrire pour voir notre curseur fétiche.
<mx:Label text=”Mais tu vas cliquer ici, oui !” useHandCursor=”true” buttonMode=”true” mouseChildren=”false” />

Selon Brad Abrams, un des pères de l’API de .NET, une API bien conçue est une API qui fait tomber le développeur dans la fosse du succès (The Pit of Success). Tel un marcheur qui essayerait de passer d’une vallée à une autre, et qui passera naturellement par le col plutôt que d’escalader le pic, une API bien conçue guide les développeurs dans la bonne direction, et leur rend la tache compliquées quand ils ne sont pas sur le bon chemin.
Dans le cas de useHandCursor, par exemple, je pense qu’il aurait été préférable de surcharger la propriété pour mettre à jour les 2 autres propriétés, ou au moins de l’indiquer clairement dans la documentation.
12/03/2008: Remplacé showHandCursor par useHandCursor.
4 commentaires »
Comme j’aime beaucoup les Identicons et que je n’ai pas trouvé d’implementation Flex après une fouille minutieuse sur Google, j’ai décidé de me retrousser les manches et de m’y coller. Le résultat tient dans un petit package de 2 classes et met à votre disposition un composant affichant l’identicon de votre choix.
Ce composant Identicon prend en paramètre un code (integer) et affiche l’identicon correspondant. Il vaudra mieux lui préciser ses dimensions (width et height) et on pourra changer la couleur de fond (blanche par défaut). Pour afficher l’identicon associée à une chaine de caractères, la classe Identicon possède une fonction statique qui calcule le hash code d’une chaine.
J’ai monté une petite application de test qui vous permet d’entrer une chaine de caractères et de voir l’identicon correspondant. Pour cela, j’ai utilisé une List avec un itemRenderer affichant le composant Identicon et un label.

Cliquez sur l’image ci-dessus pour acceder à l’application.
Les sources sont disponibles en open-source (licence WTFPL).
Enjoy 
Un commentaire »
Publié par aranud dans Flex
J’ai mis à jour FlexSpy ce week-end. Au menu de cette version 1.1:
- La possibilité de rechercher un composant directement en cliquant dessus
- La mise en surbrillance du composant lorsqu’on le sélectionne dans l’arbre des composants
- Une fenêtre redimensionnable et non modale par défaut
- Un code un peu mieux documenté

FlexSpy démo (right-click pour voir les sources)
Télécharger FlexSpy-1.1.zip (sources + swc)
Pour ajouter FlexSpy à votre application, suivez le guide:
- Dezippez le contenu de FlexSpy-1.1.zip dans le repertoire de votre choix (ex: C:\work\FlexSpy)
- Dans FlexBuilder, ouvrez la fenêtre de propriétés de votre projet (Project menu > Properties)
- Dans la partie gauche de la fenêtre de propriétés, selectionnez Flex Library Build Path, puis l’onglet Library path dans la partie droite
- Cliquez sur le bouton Add SWC…
- Selectionnez le fichier FlexSpy.swc dans le répertoire que vous avez choisi à l’étape 1 (ex: C:\work\FlexSpy\bin\FlexSpy.swc) et cliquez sur OK pour fermer la fenêtre.
- Ensuite, ajoutez un bouton qui appelle la méthode FlexSpy.show() dans votre application ainsi que l’import qui va bien… compilez votre projet et voilà !
import com.flexspy.FlexSpy;
]]>
4 commentaires »
|