<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pierre Schambacher.com &#187; flex</title>
	<atom:link href="http://www.pierreschambacher.com/blog/tag/flex/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pierreschambacher.com</link>
	<description>Ingénieur en Informatique pour Intellicore</description>
	<lastBuildDate>Fri, 28 May 2010 06:45:08 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Pourquoi je souhaite arrêter le Flex</title>
		<link>http://www.pierreschambacher.com/blog/pourquoi-je-souhaite-arreter-le-flex/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=pourquoi-je-souhaite-arreter-le-flex</link>
		<comments>http://www.pierreschambacher.com/blog/pourquoi-je-souhaite-arreter-le-flex/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 20:04:25 +0000</pubDate>
		<dc:creator>Pierre Schambacher</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[cv]]></category>
		<category><![CDATA[flex]]></category>

		<guid isPermaLink="false">http://www.pierreschambacher.com/?p=202</guid>
		<description><![CDATA[Dans ma recherche d&#8217;emploi, nombreux ont été ceux qui m&#8217;ont proposé un poste de développeur Flex, et beaucoup ont été surpris d&#8217;apprendre que je ne souhaitais plus en faire.
Outrage que ce jeune diplômé qui saborde sa plus grosse expérience et voudrait changer d&#8217;horizon !! Voici donc quelques explications pour expliquer ma décision qui pourraient en [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Dans ma recherche d&#8217;emploi, nombreux ont été ceux qui m&#8217;ont proposé un poste de développeur Flex, et beaucoup ont été surpris d&#8217;apprendre que je ne souhaitais plus en faire.<br />
Outrage que ce jeune diplômé qui saborde sa plus grosse expérience et voudrait changer d&#8217;horizon !! Voici donc quelques explications pour expliquer ma décision qui pourraient en guider certains dans le choix de la technologie.</p>
<p style="text-align: justify;"><span id="more-202"></span></p>
<h1 style="text-align: justify;">Expert bien avant l&#8217;heure</h1>
<p style="text-align: justify;">Flex est une technologie jeune qui a le vent en poupe depuis peu. Combien de personnes en France peuvent justifier une expérience professionnelle d&#8217;un an de développement sur ce framework ? Peu.<br />
Aussi malgré le fait que je sorte à peine d&#8217;école, je suis considéré comme &laquo;&nbsp;Expert Flex&nbsp;&raquo;. Les propositions qui m&#8217;ont été faites sur Flex était simples: vous savez des choses, utilisez les ! Mais ça ne colle pas vraiment avec ma vision du premier emploi. Je n&#8217;ai pas l&#8217;âge d&#8217;être un expert, j&#8217;ai envie d&#8217;apprendre des choses, découvrir de nouvelles possibilités. J&#8217;ai envie que mon entreprise m&#8217;apporte quelque chose en retour du travail que je fournis, et non pas livrer mes connaissances sans en avoir en retour, ou trop peu.</p>
<h1 style="text-align: justify;">Outil principalement graphique</h1>
<p style="text-align: justify;">Lorsque l&#8217;on fait une application il y a deux aspects: la logique métier et l&#8217;aspect graphique.<br />
Personnellement c&#8217;est la logique métier qui m&#8217;amuse le plus, la réflexion sur le modèle, les algorithmes, &#8230; Faire les fenêtres ne me dérange pas mais je ne suis pas bon d&#8217;une part, et je n&#8217;ai pas envie de me prendre la tête avec d&#8217;autre part. Le soucis avec Flex est que l&#8217;on passe la plupart de son temps à travailler sur l&#8217;aspect graphique. La principale préoccupation dans le développement en Flex est d&#8217;encastrer correctement les éléments d&#8217;interface tout en trouvant comment contourner les limitations imposées pour arriver à ce que l&#8217;on veut &#8230;<br />
Après, je parle pour moi-même ! De très nombreuses personnes s&#8217;éclatent sans doute à faire des interfaces bien agencées mais ce n&#8217;est pas mon cas, et ça transforme donc souvent Flex en source d&#8217;ennui.</p>
<h1 style="text-align: justify;">Limitations &#8230;</h1>
<p style="text-align: justify;">Je l&#8217;ai abordé précédemment, le framework en version 3 est par endroit vraiment mal foutu. L&#8217;API est pauvre, certaines choses sont mal pensées et on finit rapidement par passer plus de temps à réfléchir sur les difficultés de l&#8217;outil que sur l&#8217;application sur laquelle on travaille&#8230; Depuis quelques jours j&#8217;ai recommencé à faire du Java et je suis en permanence impressionné par la rapidité et la facilité avec laquelle j&#8217;avance. Inutile de luter contre le langage et le framework, au contraire ils aident à aller plus vite !!!<br />
Pour reprendre le point précédent, je dirais qu&#8217;avec Flex on passe 20% de son temps à faire du code métier, 30% de son temps à coder des contournements du framework et 50% de son temps à lutter avec les composants graphiques. Un outil bien peu productif donc au final.</p>
<h1 style="text-align: justify;">Enfermement</h1>
<p style="text-align: justify;">Après avoir vu l&#8217;effet d&#8217;une expérience d&#8217;un an, je n&#8217;ai pas envie de voir comment je serais traité si je venais à avoir une expérience de 5 ans en Flex&#8230; En tant que jeune diplômé j&#8217;ai encore la possibilité facilement de changer d&#8217;horizon car les entreprises tolèrent que je débute, mais d&#8217;ici quelques années ce sera sans doute plus difficile à faire.<br />
J&#8217;évite cet enfermement d&#8217;une part parce que je ne me vois pas faire du Flex toute ma carrière, mais aussi parce que cela peut s&#8217;avérer dangereux. Miser toute ma carrière sur une technologie qui aura peut-être complètement disparu dans quelques années n&#8217;est pas rassurant. Même si Flex est à la mode en ce moment, qui sait ce qu&#8217;il adviendra dans les 5 ans à venir ? Notamment avec son étroite collaboration avec Flash que beaucoup de gens voudraient voir disparaitre de leur navigateur&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pierreschambacher.com/blog/pourquoi-je-souhaite-arreter-le-flex/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Retour d&#8217;expérience sur le cours de Flex à Polytech&#8217;Nice Sophia</title>
		<link>http://www.pierreschambacher.com/blog/retour-dexperience-sur-le-cours-de-flex-a-polytechnice-sophia/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=retour-dexperience-sur-le-cours-de-flex-a-polytechnice-sophia</link>
		<comments>http://www.pierreschambacher.com/blog/retour-dexperience-sur-le-cours-de-flex-a-polytechnice-sophia/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 18:43:49 +0000</pubDate>
		<dc:creator>Pierre Schambacher</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[3615mavie]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[ingénieur]]></category>
		<category><![CDATA[sophia]]></category>

		<guid isPermaLink="false">http://www.pierreschambacher.com/?p=207</guid>
		<description><![CDATA[Vendredi dernier, j&#8217;intervenais dans mon ancienne école Polytech&#8217;Nice Sophia afin de former quelques étudiants de la promotion 2010 sur le framework Adobe Flex. Je souhaite faire un petit retour sur cette expérience et la partager donc voici le contenu du cours et du TP avec mes impressions.
Tout d&#8217;abord, vous pouvez librement télécharger mon cours (bien [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Vendredi dernier, j&#8217;intervenais dans mon ancienne école Polytech&#8217;Nice Sophia afin de former quelques étudiants de la promotion 2010 sur le framework Adobe Flex. Je souhaite faire un petit retour sur cette expérience et la partager donc voici le contenu du cours et du TP avec mes impressions.</p>
<p style="text-align: justify;"><span id="more-207"></span>Tout d&#8217;abord, vous pouvez librement télécharger mon <a title="Cours de Flex" href="http://www.pierreschambacher.com/wp-content/uploads/2009/10/Cours-Flex.pdf">cours</a> (bien que sans doute peu explicite sans le discours prévu pour l&#8217;accompagner) ainsi que le <a title="TP Polytech Flex Twitter" href="http://www.pierreschambacher.com/wp-content/uploads/2009/10/TP-PolyTweet.pdf">TP</a>.</p>
<h1 style="text-align: justify;">Bonjour, je suis votre prof aujourd&#8217;hui</h1>
<p style="text-align: justify;">C&#8217;est assez impressionnant de rentrer dans une salle pour y faire cours, et que tous les élèves viennent vous saluer en arrivant&#8230; car en effet il y a encore un mois j&#8217;étais un étudiant comme eux et je connaissais déjà la plupart de mes élèves. Évidemment cela aide d&#8217;une part à être en confiance et d&#8217;autre part à avoir le calme dans la classe <img src='http://www.pierreschambacher.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<h1 style="text-align: justify;">Le Cours</h1>
<p style="text-align: justify;">Concernant le cours en lui-même, je savais que je serais probablement limite pour tenir les 2h prévues, mais la réalité s&#8217;est avéré encore pire que prévue. Une fois devant cette 15aine d&#8217;étudiants (et amis) je n&#8217;ai pas pu m&#8217;empêcher de tracer à vive allure, enchaînant slide sur slide et arrivant au bout bien plus vite que prévu&#8230; Certains m&#8217;ont dit en fin du cours qu&#8217;ils auraient aimé que je ralentisse mais personne n&#8217;a osé m&#8217;interrompre, dommage <img src='http://www.pierreschambacher.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p style="text-align: justify;">J&#8217;ai eu un certain nombre de questions en fin de cours, portant plus sur les cas où Flex est un bon choix que sur des points techniques, c&#8217;est bon signe d&#8217;une part sur l&#8217;explication que j&#8217;en ai faite et sur leur maturité de réflexion d&#8217;autre part. Dommage en revanche que mon expérience Flex se soit faite sur un projet confidentiel, m&#8217;empêchant de dire beaucoup&#8230;</p>
<h1 style="text-align: justify;">Le TP</h1>
<p style="text-align: justify;">Après une longue séance &laquo;&nbsp;install party&nbsp;&raquo; de Flex Builder, nous voilà partis pour un TP avec pour objectif de développer un client Twitter. Je suis assez satisfait dans le sens où beaucoup sont allé assez loin dans un petit projet qui pouvait s&#8217;avérer ardu pour un néophyte. J&#8217;ai même quelques étudiants n&#8217;ayant jamais vu Flex (ou JavaFX ni Silverlight) qui sont arrivés à terminer le client avec toutes les fonctionnalités demandées (Yohann si tu me lis <img src='http://www.pierreschambacher.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ).<br />
Autre chose que j&#8217;ai remarqué, beaucoup ont préféré me pauser des questions sur la marche à suivre plutôt que de chercher sur Google, j&#8217;espère que c&#8217;était parce qu&#8217;il s&#8217;agissait d&#8217;un cours et qu&#8217;ils ont bien le réflexe de chercher sur internet ailleurs. En tout cas j&#8217;ai été bien occupé pendant ces 2h et je remercie encore Christian et Sandie qui m&#8217;ont assisté pour répondre à toutes les questions. En tout cas, coup de chance mis à part un plantage d&#8217;une configuration eclipse j&#8217;ai pu répondre à toutes les questions <img src='http://www.pierreschambacher.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h1 style="text-align: justify;">Au final, quoi dire ?</h1>
<p style="text-align: justify;">Premièrement j&#8217;ai ressenti la certaine &laquo;&nbsp;expertise&nbsp;&raquo; pour laquelle on m&#8217;a demandé d&#8217;intervenir dans le sens où je ne sais plus vraiment ce qui est évident et ce qui ne l&#8217;est pas. Le TP notamment contient de nombreuses explications de choses qui ont été lues en diagonales car évidentes, mais en revanche je ne dis rien sur le fonctionnement d&#8217;un HTTPService qui n&#8217;est pas des plus simples pour le néophyte. Si j&#8217;avais à recommencer je m&#8217;aiderais surement de quelqu&#8217;un n&#8217;ayant jamais touché à Flex pour vérifier que je n&#8217;oublie pas de parler d&#8217;un point difficile et que je ne m&#8217;étends pas sur une évidence.<br />
Deuxièmement j&#8217;ai été surpris par la rapidité de compréhension de mon auditoire. Comme je l&#8217;ai déjà dit nombreux sont ceux qui se sont bien avancé dans le TP et plusieurs l&#8217;ont terminé. Je ne pense pas que ma prestation ait quelque chose à voir là dedans, je pense tout simplement avoir eu un bon auditoire attentif et sérieux et je sais ma chance sur ce point.<br />
Troisièmement et dernièrement, un cours est quelque chose de long à préparer. Il m&#8217;a fallu une bonne demi journée pour préparer ma présentation et encore un peu plus pour le TP. L&#8217;élaboration du TP est vraiment longue du fait que l&#8217;on code quelque chose, qu&#8217;on en vérifie la robustesse, et il faut ensuite trouver comment guider les élèves à faire ce que l&#8217;on vient de faire, en les aidant un peu mais pas trop non plus. Malgré le temps que j&#8217;ai consacré à toute cette préparation, le cours était très loin d&#8217;être parfait mais j&#8217;espère que j&#8217;aurais l&#8217;occasion une prochaine fois de faire mieux. <img src='http://www.pierreschambacher.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.pierreschambacher.com/blog/retour-dexperience-sur-le-cours-de-flex-a-polytechnice-sophia/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Expérience d’un ingénieur sur Adobe Flex</title>
		<link>http://www.pierreschambacher.com/blog/experience-d%e2%80%99un-ingenieur-sur-adobe-flex/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=experience-d%25e2%2580%2599un-ingenieur-sur-adobe-flex</link>
		<comments>http://www.pierreschambacher.com/blog/experience-d%e2%80%99un-ingenieur-sur-adobe-flex/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 17:46:54 +0000</pubDate>
		<dc:creator>Pierre Schambacher</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Programmation]]></category>
		<category><![CDATA[cv]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[ingénieur]]></category>

		<guid isPermaLink="false">http://www.pierreschambacher.com/?p=152</guid>
		<description><![CDATA[Après avoir utilisé le framework Flex pendant une année au cours de mon stage d&#8217;ingénieur à Polytech&#8217;Nice Sophia (voir mon CV), je souhaite donner un peu mon avis sur cette technologie, ses avantages, ses inconvénients, points forts et faibles. Comme pour WebObjects, voici une petite description pour les personnes qui ne connaitraient pas Flex.
Adobe Flex [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Après avoir utilisé le framework Flex pendant une année au cours de mon stage d&#8217;ingénieur à Polytech&#8217;Nice Sophia (voir mon <a title="CV Ingénieur Sophia" href="http://www.pierreschambacher.com/cv">CV</a>), je souhaite donner un peu mon avis sur cette technologie, ses avantages, ses inconvénients, points forts et faibles. Comme pour WebObjects, voici une petite description pour les personnes qui ne connaitraient pas Flex.</p>
<p style="text-align: justify;">Adobe Flex est un framework de développement de clients riches (ou clients lourds) compilé vers la machine virtuelle Flash. Pour les personnes connaissant Silverlight, Flex a inspiré Microsoft pour sa création. Les interfaces sont réalisées à l&#8217;aide d&#8217;un langage basé sur XML, le MXML (XAML pour Silverlight) et le comportement est écrit à l&#8217;aide du langage Action Script 3 (.Net pour Silverlight).<br />
Il ne surtout pas considérer Flex comme un outil fait pour les designeurs, c&#8217;est un framework créé pour les développeurs.</p>
<p style="text-align: justify;"><span id="more-152"></span></p>
<h2 style="text-align: justify;">Déploiement</h2>
<p style="text-align: justify;">Comme dit dans l&#8217;introduction, Flex est compilé dans un fichier SWF qui est lu par la machine virtuelle Flash. Pour lire une application Flex, la version 9 du plug-in est au minimum nécessaire, or plus de <a title="Statistiques d'installation des plugins" href="http://riastats.com/" target="_blank">95%</a> des personnes répondent à ce besoin. C&#8217;est un point assez fort du framework, surtout en comparaison avec Silverlight qui peine à passer les 30% (toutes versions confondues).<br />
Étant donné que Flex se base sur le plug-in Flash, vous bénéficiez également d&#8217;une compatibilité entre les différents systèmes d&#8217;exploitation et les différents navigateurs. Pas de mal de tête à assurer le même rendu entre IE6 sur Windows et Safari sur Mac, c&#8217;est le travail des gens d&#8217;Adobe.<br />
Pas de doute ici, c&#8217;est un gros point fort et un très bon travail d&#8217;Adobe qui donne à Flex un avantage certain sur ses concurrents directs. On pourra également remarquer sur l&#8217;utilisation de Flash la mise à disposition d&#8217;une excellente librairie pour créer des animations de l&#8217;interface qui donnent un cachet très professionnel aux applications.</p>
<h2 style="text-align: justify;">ActionScript et API</h2>
<p style="text-align: justify;">Le comportement et le business d&#8217;une application Flex est décrit dans le langage ActionScript 3. Pour le langage en lui-même, il est souple et propose un certain nombre de fonctionnalités puissantes et pratiques, je citerais en exemple la possibilité d&#8217;appeler une méthode sur une variable à l&#8217;aide de l&#8217;opérateur [] comme suit: maVariable["maMethode"].<br />
En revanche on peut vraiment reprocher à Adobe la pauvreté de l&#8217;API. Pour l&#8217;anecdote, sachez que la méthode addAll permettant d&#8217;ajouter tous les éléments d&#8217;un tableau dans un autre tableau vient d&#8217;être implémentée dans la version 3.4 du framework &#8230; Sachez également que la gestion de dictionnaire est extrêmement réduite, impossible par exemple de récupérer l&#8217;ensemble des clés d&#8217;un dictionnaire &#8230;<br />
Il est certes possible d&#8217;écrire soit-même toutes ses classes, mais d&#8217;une part on n&#8217;a pas forcément envie de coder toutes les classes de base lorsque l&#8217;on s&#8217;attaque à un projet ambitieux et d&#8217;autre part, si Adobe comble le manque un jour il faudra faire le remplacement partout.</p>
<h2 style="text-align: justify;">Modèle MVC</h2>
<p style="text-align: justify;">A première vue, Flex semble proposer une bonne architecture pour respecter le pattern Modèle-Vue-Contrôleur avec les interfaces et leur comportement décrites en MXML, des classes de comportement et des classes de modèle. Cependant en pratique, on a rapidement tendance à mélanger la vue et le contrôleur. En effet il est possible d&#8217;écrire de l&#8217;ActionScript dans le fichier MXML et la tentation est grande d&#8217;y écrire le code business de la vue.</p>
<p style="text-align: justify;">Quelques framework tentent d&#8217;imposer de bonnes pratiques (je citerais Cairngorn et Tide) mais ils ne sont pas toujours simple à mettre en place. En pratique il devient également difficile de maintenir du code propre au sein d&#8217;un projet de grande envergure. Le projet peut être découpé en modules qui sont chargés à la demande, mais on arrive assez facilement à des dépendances inter-modules ou de la recopie de code pour effectuer la même action dans deux endroits différents mais inaccessibles entre eux.</p>
<h2 style="text-align: justify;">Asynchronisme et thread unique</h2>
<p style="text-align: justify;">Le plug-in Flash est presque mono-threadé. Je dis presque car en réalité un deuxième thread existe, qui attend les réponses aux requêtes effectuées vers des adresses externes. De cette situation ressort deux choses.</p>
<p style="text-align: justify;">Toute demande de données est asynchrone. La demande est déposée vers le thread de communication qui propagera un évènement lorsque celle-ci sera complétée. S&#8217;il n&#8217;est pas dérangeant que vos données arrivent de façon asynchrone, pas de soucis mais dans le cas où vous aimeriez attendre d&#8217;avoir concrètement les informations, vous allez commencer à rencontrer des difficultés.</p>
<p style="text-align: justify;">Il est impossible d&#8217;effectuer deux actions à la fois, cela incluant le dessin de l&#8217;interface ou le traitement d&#8217;un clic souris. Par conséquent, si vous lancez un traitement lourd de calculs, l&#8217;interface sera figée. Avantage en contrepartie, vous n&#8217;avez pas du tout à vous préoccupé de problèmes de validité des données entres threads ou de deadlocks, cela est impossible !</p>
<h2 style="text-align: justify;">Bindings</h2>
<p style="text-align: justify;">Il est possible dans les interfaces MXML de réaliser des &laquo;&nbsp;bindings&nbsp;&raquo; entre une variable ActionScript et une propriété d&#8217;un élément graphique. Une fois le binding mis en place, la modification de la valeur de la variable entrainera la modification de la valeur de la propriété de l&#8217;élément graphique. Cela est très pratique puisque le mécanisme permet de réaliser à vitesse grand V l&#8217;écran de visualisation d&#8217;un objet Business en &laquo;&nbsp;bindant&nbsp;&raquo; sur ses différents attributs.</p>
<p style="text-align: justify;">Dans la version 3 de Flex quelques embuches appaissent pour mettre en place des double bindings, c&#8217;est à dire que les modifications de valeur s&#8217;effectuent dans les deux sens. En effet, le premier binding mis en place aura pour effet d&#8217;effacer la valeur d&#8217;une des deux variables avec la valeur de l&#8217;autre. Dans le cas d&#8217;un objet business et un objet graphique, il vaut mieux effacer la valeur de la propriété graphique avec celle de l&#8217;objet business et non pas le contraire &#8230; Ce petit problème a été corrigé dans Flex 4 qui sortira prochainement.</p>
<h2 style="text-align: justify;">Flex est un outil</h2>
<p style="text-align: justify;">En conclusion de l&#8217;article et avant de tirer avantages et inconvénient, j&#8217;aimerais donner un avis très subjectif sur le framework. Flex un outil jeune mais toutefois puissant pour développer rapidement les applications pour lesquelles il a été créé. Et je vais insister sur ce point.</p>
<p style="text-align: justify;">A mon idée, Flex est parfait pour des applications simples, avec peu de code business. La manière classique de travailler va être d&#8217;appeler un WebService ou une page Web, parser les résultats pour remplir des variables sur lesquelles l&#8217;interface est bindée. Le résultat sera obtenu rapidement, propre, et joliment animée.</p>
<p style="text-align: justify;">En revanche, Flex n&#8217;est pas fait pour une lourde application avec de nombreuses implications de code business entre les écrans et des grappes d&#8217;objets à récupérer, modifier, renvoyer, etc. Pour avoir tenté d&#8217;utiliser le framework pour ce type d&#8217;application, je peux dire qu&#8217;on passe plus de temps à lutter contre Flex qu&#8217;à lutter contre les difficultés de l&#8217;application elle-même.</p>
<p style="text-align: justify;">Comme beaucoup d&#8217;autres framework, Flex est un outil. Flex est un tournevis cruciforme. Si votre application est faite de vis cruciformes, ce sera un excellent outil et vous allez aboutir rapidement à un résultat de qualité. Si en revanche vous devez fabriquer une chaise avec des clous, vous êtes condamné à taper sur les clous avec le manche, et au final vos clous seront plantés de travers, votre chaise sera bancale et s&#8217;effondrera à la troisième personne qui tentera de s&#8217;assoir dessus et enfin vous vous serez fait mal à la main.</p>
<p style="text-align: justify;">Mais assez parlé et voyons le bilan avantages/inconvénients</p>
<h2 style="text-align: justify;">Avantages</h2>
<ul>
<li>Compatibilité OS/Navigateur</li>
<li>Plug-In flash très répandu (95%)</li>
<li>Animations simple à utiliser et très classes</li>
<li>Pas de problématique de programmation concurrente</li>
<li>Mécanisme de binding très pratique</li>
</ul>
<h2 style="text-align: justify;">Inconvénients</h2>
<ul>
<li>Inconvénients de Flash (vous devriez les trouver facilement sur d&#8217;autres sites)</li>
<li>Pauvreté de l&#8217;API ActionScript</li>
<li>Trop grande facilité de mélanger Vue et Contrôleur</li>
<li>Impossibilité d&#8217;utiliser la programmation concurrente</li>
<li>Obligation de récupérer les données de façon asynchrone</li>
<li>Doubles bindings laborieux (résolu normalement dans Flex 4)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.pierreschambacher.com/blog/experience-d%e2%80%99un-ingenieur-sur-adobe-flex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Light on: Adobe Flex Tutorial</title>
		<link>http://www.pierreschambacher.com/blog/light-on-adobe-flex-tutorial/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=light-on-adobe-flex-tutorial</link>
		<comments>http://www.pierreschambacher.com/blog/light-on-adobe-flex-tutorial/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 20:13:17 +0000</pubDate>
		<dc:creator>Pierre Schambacher</dc:creator>
				<category><![CDATA[Light On]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[Programmation]]></category>

		<guid isPermaLink="false">http://www.pierreschambacher.com/?p=110</guid>
		<description><![CDATA[Pour programmer en Flex, il y a la documentation officielle fournie par Adobe. Toutefois celle-ci n&#8217;est pas toujours des plus pratiques. Il est notamment fréquent de trouver une démonstration d&#8217;un composant dans un cas d&#8217;utilisation &#8230; mais qui ne nous correspond pas. Et là on est bien embêté.
Heureusement, quelques personnes comme fnicollet aident la communauté [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Pour programmer en Flex, il y a la documentation officielle fournie par Adobe. Toutefois celle-ci n&#8217;est pas toujours des plus pratiques. Il est notamment fréquent de trouver une démonstration d&#8217;un composant dans un cas d&#8217;utilisation &#8230; mais qui ne nous correspond pas. Et là on est bien embêté.</p>
<p style="text-align: justify;">Heureusement, quelques personnes comme fnicollet aident la communauté avec un site web d&#8217;une très bonne qualité. Le site <a title="Aide Flex" href="http://www.flex-tutorial.fr/">Adobe Flex Tutorial</a> comporte en effet des explications sur un très grand nombre de classes du framework et propose notamment des exemples différents de ceux de la documentation officielle. Convenant aux utilisateurs avancés recherchant précisément l&#8217;utilisation d&#8217;un composant, le site peut également tout à fait convenir à un débutant souhaitant découvrir Flex.</p>
<div id="attachment_111" class="wp-caption aligncenter" style="width: 500px"><a href="http://www.pierreschambacher.com/wp-content/uploads/2009/08/Adobe-Flex-Tutorial.png"><img class="size-full wp-image-111" title="Adobe Flex Tutorial" src="http://www.pierreschambacher.com/wp-content/uploads/2009/08/Adobe-Flex-Tutorial.png" alt="Adobe Flex Tutorial" width="490" height="187" /></a><p class="wp-caption-text">Adobe Flex Tutorial</p></div>
<p style="text-align: justify;">On trouve des informations de base telles que l&#8217;utilisation de l&#8217;environnement de programmation ou les principes du langage Action Script 3. Sont documentés également des fonctionnalités spéciales du framework comme les états, les transitions et les validateur, et enfin il est possible de consulter des exemples d&#8217;utilisation de très nombreux composants, des plus basiques au plus avancés. L&#8217;auteur du site fait actuellement un gros travail sur le très complexe composant AdvancedDataGrid.<br />
Je tenais à faire découvrir ce site aux personnes ne le connaissant pas, et j&#8217;aimerais aussi féliciter son auteur pour son travail s&#8217;il venait à passer par ici ! Voilà maintenant un an que je travaille avec Flex et j&#8217;ai arrêté depuis bien longtemps de compter mes visites sur ce site pour trouver l&#8217;information qu&#8217;il me fallait.</p>
<p style="text-align: justify;">Notons également dans le même genre de site mais en anglais cette fois le site <a title="Exemples de Flex" href="http://blog.flexexamples.com/">Flex Examples</a> qui a commencé à publier un bon nombre d&#8217;articles sur Flex 4.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pierreschambacher.com/blog/light-on-adobe-flex-tutorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
