<?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>Ze Technology &#187; Flex</title>
	<atom:link href="http://www.ze-technology.com/category/flex/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ze-technology.com</link>
	<description>Ze Blog qui parle de Ze Technology. Univers du libre, programmation, société, business...</description>
	<lastBuildDate>Sat, 17 Dec 2011 08:35:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Flex, PureMVC, AmfPHP&#8230; retour d&#8217;expérience</title>
		<link>http://www.ze-technology.com/2009/07/17/flex-puremvc-amfphp-retour-dexperience/</link>
		<comments>http://www.ze-technology.com/2009/07/17/flex-puremvc-amfphp-retour-dexperience/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 21:13:06 +0000</pubDate>
		<dc:creator>Adrien Mogenet</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.ze-technology.com/?p=122</guid>
		<description><![CDATA[Cher ZeTechnology, C&#8217;est aujourd&#8217;hui que je viens d&#8217;achever ma première application Flex. Flex ? Kézako ? Pour ceux qui ne connaîtraient pas du tout ce terme, Flex est une technologie développée par Adobe, basée sur ActionScript. Flex permet de mettre en place facilement des RIA (application avec interface riche) et, nous le verrons, c&#8217;est dans [...]]]></description>
			<content:encoded><![CDATA[<p>Cher <strong>ZeTechnology</strong>,</p>
<p>C&#8217;est aujourd&#8217;hui que je viens d&#8217;achever ma première application <em>Flex</em>. <em>Flex</em> ? Kézako ? Pour ceux qui ne connaîtraient pas du tout ce terme, <em>Flex</em> est une technologie développée par <a href="http://www.adobe.com/fr/"><em>Adobe</em></a>, basée sur <em>ActionScript</em>. <em>Flex</em> permet de mettre en place facilement des <strong>RIA</strong> (application avec interface riche) et, nous le verrons, c&#8217;est dans ce domaine qu&#8217;il excelle. Concrètement, une fois votre projet <em>Flex</em> compilé vous obtenez une application exécutable au sein d&#8217;un player Flash (ou très facilement en tant qu&#8217;application <em>desktop</em> grâce à <em>Adobe Air</em>). Des exemples d&#8217;utilisation de <em>Flex</em> :</p>
<ul>
<li><a href="http://examples.adobe.com/flex2/consulting/styleexplorer/Flex2StyleExplorer.html">Un explorateur de styles</a></li>
<li><a href="http://www.adobe.com/devnet/flex/community_samples.html">Plein de samples sur les possibilités offertes</a></li>
<li><a href="http://flex.org/showcase/">Applications professionnelles</a></li>
</ul>
<p><em>PureMVC</em> est un framework <a href="http://fr.wikipedia.org/wiki/Mod%C3%A8le-Vue-Contr%C3%B4leur">MVC</a> à l&#8217;origine mis en place pour <em>ActionScript</em>, qui depuis a été porté pour différentes plate-formes : <em>PHP</em>, <em>ColdFusion</em>, <em>Java</em>&#8230;</p>
<ul>
<li><a href="http://puremvc.org/content/blogsection/9/176/">Exemples d&#8217;utilisations de PureMVC</a></li>
</ul>
<p><em>AmfPHP</em> est une implémentation <em>PHP</em> de <em>Action Message Format</em> (AMF). <em>AmfPHP</em> permet ainsi une communication entre votre application <em>Flex</em> et un service écrit en <em>PHP</em>.</p>
<ul>
<li><a href="http://www.amfphp.org/showcase.html">Exemples d&#8217;utilisations d&#8217;AmfPHP</a></li>
</ul>
<p>Maintenant que les présentations sont faites, l&#8217;heure des comptes est venue. Je viens de réaliser un gestionnaire de quizz. Mon application permet de gérer des listes de questionnaires, d&#8217;y ajouter des questions, réponses, images d&#8217;illustration&#8230; puis de &laquo;&nbsp;jouer&nbsp;&raquo; à ces questionnaires. L&#8217;application <em>Flex</em>, développée autour de <em>PureMVC</em>, appelle donc sans cesse mon script <em>PHP</em> s&#8217;occupant d&#8217;interagir avec <em>MySQL</em> pour enregistrer une nouvelle question, récupérer la liste des quizz, etc.</p>
<p><img class="aligncenter size-full wp-image-125" title="Skin Flex" src="http://www.ze-technology.com/wp-content/uploads/2009/07/skin18.png" alt="Skin Flex" width="500" height="201" /></p>
<p>Ce que je retiens au final, c&#8217;est :</p>
<p>Une <strong>mise en place</strong> très <strong>rapide</strong>. L&#8217;installation de Flex Builder (l&#8217;IDE est basé sur Eclipse, disponible par ailleurs directement sous forme de plug-in),  de <em>PureMVC</em> et d&#8217;<em>AmfPHP</em> est très rapide, sans mauvaise surprise. La seule surprise était un soucis de fonctionnement du plugin Flex Builder avec Eclipse 3.5, qui venait juste de sortir à ce moment là. On excusera donc <em>Adobe</em>. Attention toutefois, Flex Builder n&#8217;est <strong>PAS</strong> gratuit, sauf pour les étudiants (licence sur simple demande).</p>
<p>L&#8217;apprentissage de <em>Flex</em> est assez rapide, l&#8217;IDE aidant. Le bon lot de composants existant permet de concevoir visuellement ses interfaces en <em>Wysiwyg</em>. Un des concepts à bien maitriser pour bien positionner ses éléments est celui des <em>layouts</em> assurant la mise en place des éléments, concept qu&#8217;on retrouve déjà dans pas mal d&#8217;autres technos. On apprend très vite à apprécier une propriété, <span style="font-family: courier">[Bindable]</span>, permettant de lier constamment des éléments et valeurs. Le thème de base lassera très vite celui qui connaît bien la technologie mais est tout de même très <strong>agréable à l&#8217;oeil</strong>. Les composants sont immédiatement exploitables pour une vraie application, il y a même un système de barre de chargement lancée automatiquement au chargement votre interface.</p>
<p><em>PureMVC</em>, quant à lui, nécessite une phase un peu plus longue d&#8217;apprentissage. Les <strong>notifications</strong> sont utilisées à outrance, ce qui autorise le développeur à commettre les pires goritudes dans son code. Les différentes couches (modèle, vue, contrôleur) communiquement efficacement entre elles, mais dans le cadre d&#8217;un développement en équipe, il faut bien veiller à ce que chacun aie les même habitudes que son collègue. Autrement, c&#8217;est l&#8217;anarchie chez les notifications.</p>
<p>En ce qui concerne <em>AmfPHP</em>, c&#8217;est quasiment que du bonheur.  Ça fonctionne très vite, très bien, il est vraiment <strong>aisé</strong> et <strong>rapide</strong> de transmettre des objets, des tableaux, du <em>XML</em> entre <em>Flex</em> et <em>PHP</em>.</p>
<p>À noter, une communauté vraiment active, et une documentation que je considère &laquo;&nbsp;correcte&nbsp;&raquo;, qui manque peut être d&#8217;exemples. Au final, cette première expérience avec <em>Flex</em>, <em>AmfPHP</em> et <em>PureMVC</em> est <strong>plutôt concluante</strong>. <em>Flex</em> est à ce jour une solution qui commence à devenir assez mature. À retenir pour la réalisation d&#8217;<strong>interfaces homme-machine</strong>, de backoffices ou applications mettant en oeuvre génération de graphiques, saisie de données&#8230;</p>
<p>N&#8217;oubliez pas de visiter les démonstrations !</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ze-technology.com/2009/07/17/flex-puremvc-amfphp-retour-dexperience/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

