<?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>Quatrecentquatre &#187; Développement</title>
	<atom:link href="http://blog.quatrecentquatre.com/category/developpement/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.quatrecentquatre.com</link>
	<description>3437 St-Laurent, Montréal, Québec, H2X 2T6, / Téléphone : 514-303-6810</description>
	<lastBuildDate>Mon, 05 Jul 2010 20:59:49 +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>La problématique des &#8220;fontes&#8221; sur le Web</title>
		<link>http://blog.quatrecentquatre.com/2009/07/01/la-problematique-des-fontes-sur-le-web/</link>
		<comments>http://blog.quatrecentquatre.com/2009/07/01/la-problematique-des-fontes-sur-le-web/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 14:49:32 +0000</pubDate>
		<dc:creator>Jocelyn</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Lecture]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[fontes]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[polices]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=266</guid>
		<description><![CDATA[LES FONTES
Depuis des siècles, les designers web tentent tant bien que mal d'exprimer leur créativité malgré la dictature impitoyable des familles Arial, Verdana et autres Tahoma. Mais à l'horizon pointe une lueur d'espoir. Le moment où les designers pourront enfin utilisé la fonte de leurs choix approche, sans le moindre égard aux limitations qui pullulent [...]]]></description>
			<content:encoded><![CDATA[<p><strong>LES FONTES</strong><br />
Depuis des siècles, les designers web tentent tant bien que mal d'exprimer leur créativité malgré la dictature impitoyable des familles Arial, Verdana et autres Tahoma. Mais à l'horizon pointe une lueur d'espoir. Le moment où les designers pourront enfin utilisé la fonte de leurs choix approche, sans le moindre égard aux limitations qui pullulent du côté client et, ainsi, éviter les soupirs de leurs collègues intégrateurs.</p>
<p><strong>CSS3</strong><br />
Même si elle existe depuis CSS2, la propriété CSS @font-face n'a toujours  pas été adoptée à grande échelle. Triste, surtout si on tient compte de la facilité d'implantation:</p>
<pre class="css"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #808080; font-style: italic;">/*CSS*/</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #a1a100;">@font-face{</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">font-family</span>: <span style="color: #ff0000;">'laFonte'</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	src: <span style="color: #993333;">url</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'../laFonte.ttf'</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span>  </div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #808080; font-style: italic;">/*Après avoir annoncé la règle @font-face, il ne</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #808080; font-style: italic;">s'agit que d'attribuer la nouvelle famille aux balises souhaitées*/</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">p <span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">font-family</span>: <span style="color: #ff0000;">&quot;laFonte&quot;</span>,Verdana, Geneva, <span style="color: #993333;">sans-serif</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #808080; font-style: italic;">/*fin*/</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p>Si le fureteur ne supporte pas @font-face ou s'il y a un problème avec la source, la fonte suivante dans le  "CSS font stack" jouera son rôle. </p>
<p>Cependant, deux problèmes majeur se dresse devant les utilisateur potentiel de cette façon de faire.</p>
<p> Premièrement, pour la plupart des fonderies  rendre une de leur  fonte disponible sur un serveur web constitue une violation des droits d'utilisation de celle-ci.</p>
<p>Deuxièmement.  Le support est encore très peu convaincant. Safari 3.1 est le seul qui supporte cette propriété. Opera 10 et Firefox 3.5 devrait l'implanter, tandis qu'IE la supporte seulement si la fonte liée est une "Embedded OpenType".<br />
Une .EOT  est créée grâce au logiciel WEFT de Microsoft (ou ttf2eot pour Linux). La transformation d'une fonte dans ce format compressé ne se fait malheureusement pas toujours sans heurts. Certaines glyphes peuvent être altérées, et certaines fontes ne survivent  tout simplement pas à l'opération de compression du logiciel de Microsoft. Ce qui rend cette avenue fort hasardeuse.</p>
<p><strong>EN ATTENDANT</strong><br />
D'ici à ce que @font-face soit réellement implanté dans notre univers multi-fureteur, nous avons qu'en même à notre disposition des outils pour combler cet étonnant vide technologique... Voici deux solutions ayant fait leur preuve. SiFr est dans le décor depuis belle lurette et Cufòn est un nouveau venu fort prometteur...</p>
<p><strong>sIFR (Scalable Inman Flash Replacement)</strong><br />
L'idée de base est simple.  Intégrer la fonte souhaitée dans un SWF ayant un champ texte dynamique à l'intérieur. Puis, grâce au javascript, localiser les textes à remplacer, les mesurer et les "lire". Ensuite, créer des objets Flash  de même taille, contenant le même texte et les placer à la même position que le texte remplacé.</p>
<p> L'implantation est  relativement facile: Il faut créer un SWF, importer un fichier javascript et écrire une ligne de code javascript pour chaque type de balise/class/id que l'on veut remplacer qui pourrait bien ressembler à ceci:</p>
<pre class="javascript"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">sIFR.<span style="color: #006600;">replaceElement</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">&quot;h1&quot;</span>, named<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#123;</span>sFlashSrc: <span style="color: #3366CC;">&quot;./vandenkeere.swf&quot;</span>, sColor: <span style="color: #3366CC;">&quot;#000&quot;</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;</div></li></ol></pre>
<p>Cependant, il est nécéssaire de faire un peu de lecture afin de comprendre l'interaction entre le javascript, le SWF et le CSS.</p>
<p>Les avantages sont nombreux :</p>
<ul>
<li>Textes sélectionnables et disponibles pour les engins de recherche.</li>
<li>Fontes nettes et précise.</li>
<li>Textes sujets aux CSS et à certains effets Flash (dropshadow, anti-aliasing, etc...).</li>
<li>Reconnaissance et soulignement automatique des liens.</li>
<li>Plusieurs "add-ons" dont un pour JQuery.</li>
<li>Totalement légal du point de vue des fonderies.</li>
</ul>
<p>Il y a qu'en même quelques désavantages :</p>
<ul>
<li>Requiert le Javascript activé ainsi que FlashPlayer 6+ pour fonctionner. </li>
<li>Étant un outils très malléable - le "font-tuning"  surtout -  SiFR peut devenir très complexe et source de frustration dans des projets complexes où se côtoient divers "frameworks" Javascript et/ou des feuilles de style tentaculaire.</li>
</ul>
<p>D'ailleurs, les concepteurs suggèrent d'utiliser sIFR avec parcimonie. Si vous confinez l'outil à des endroit rare et bien choisie, l'intégration ne sera que plus aisée.</p>
<p><strong>Cufòn</strong><br />
L'avenir est rose et simple pour cet héritier de Typeface. Grâce à un générateur disponible gratuitement, on peut convertir une fontes en fichier .js qui nous permettra de reproduire en SVG les glyphes souhaitées.</p>
<p>Tout aussi simple d'implantation que sIFR, voir même plus, Cufòn requiert peu de chose. On créer le fichier de fonte dans le générateur en 2-3 cliques, on importe le fichier de fonte ainsi que le fichier Javascript Cufòn dans le "header" de la page. Puis, on remplace le contenu des balise désiré en appelant une méthode portant le nom judicieux de... replace() !</p>
<pre class="javascript"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span>src=<span style="color: #3366CC;">&quot;js/cufon-yui.js&quot;</span>&gt;&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span> src=<span style="color: #3366CC;">&quot;js/funky.font.js&quot;</span>&gt;&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span>&gt; Cufon.<span style="color: #006600;">replace</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'h1'</span><span style="color: #66cc66;">&#41;</span>; &lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p>Les avantages :</p>
<ul>
<li>Seul le Javascript est nécéssaire</li>
<li>Coté CSS, les images créées sont identiques aux glyphes remplacées.</li>
<li>Supporté par la quasi-totalité des fureteurs: FireFox 1.5+, Safari 3+, Opera 9.5+, Chrome et IE 6/7/8, ce dernier requiert une ligne Javascript de plus en fin de page pour palier à sa lenteur d'affichage, mais rien de majeur.</li>
<li>Communauté florissante et motivé à amélioré le concept.</li>
</ul>
<p>Malheureusement, Cufòn est encore loin d'être parfait :</p>
<ul>
<li>Sélection du texte impossible.. une image reste une image.</li>
<li>Problème avec quelques vieilles fontes PostScript Mac.</li>
<li>Fidélité de transitions entre glyphes et images SVG pas toujours parfaite, mais toujours correct.</li>
<li>Encore quelques zones grises du point de vue légal. Mais les discussions vont bon train semble-t-il.</li>
<li>Problème avec certains sélecteurs CSS spécialisés.</li>
</ul>
<p>Cufòn n'offre rien de plus qu'un simple remplacement d'image du point de vue de l'accessibilité, cependant, si les changement de titre sont fréquents, ce dernier reste une alternative à ne pas négliger...</p>
<p>En terminant, si les titres en fontes particulières sont votre pain quotidien, prendre quelques heures pour maitriser sIFR  parait être un excellent investissement qui ne ferait qu'améliorer le référencement de vos créations. </p>
<p>Sinon, Cufòn reste une alternative simple qui reste qu'en même plus aisée que d'avoir à changer les images de vos titres dans Photoshop à chaque changement de virgule!</p>
<p>Lien vers <a href="http://www.mikeindustries.com/blog/sifr/">sIFR</a>.<br />
Lien vers <a href="http://wiki.github.com/sorccu/cufon/about">Cufòn</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2009/07/01/la-problematique-des-fontes-sur-le-web/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Utilisation de SWFAddress à travers le NavigationManager</title>
		<link>http://blog.quatrecentquatre.com/2009/06/08/utilisation-de-swfaddress-a-travers-le-navigation-manager/</link>
		<comments>http://blog.quatrecentquatre.com/2009/06/08/utilisation-de-swfaddress-a-travers-le-navigation-manager/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 22:01:47 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Tout et Rien]]></category>
		<category><![CDATA[Actionscript 3]]></category>
		<category><![CDATA[NavigationManager]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Outil]]></category>
		<category><![CDATA[SWFAddress]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=209</guid>
		<description><![CDATA[Le NavigationManager de QuatreCentQuatre est une enveloppe ou un Proxy qui sert à titre d’interface à la classe SWFAddress de Asual afin de mieux contrôler son comportement et d’en étendre les fonctionnalités.
SWFAddress d'Asual
SWFAddress est une combinaison de techniques permettant, à travers des classes Javascript et Actionscript, le deep-linking (la possibilité d’accéder à des sections ou [...]]]></description>
			<content:encoded><![CDATA[<p>Le NavigationManager de QuatreCentQuatre est une enveloppe ou un Proxy qui sert à titre d’interface à la classe SWFAddress de Asual afin de mieux contrôler son comportement et d’en étendre les fonctionnalités.</p>
<p><strong>SWFAddress d'Asual</strong></p>
<p><a href="http://www.asual.com/swfaddress/">SWFAddress</a> est une combinaison de techniques permettant, à travers des classes Javascript et Actionscript, le deep-linking (la possibilité d’accéder à des sections ou des pages directement à partir de la barre d’adresse du fureteur) dans des sites programmés en Flash.  Cette technique, en plus de permettre l’utilisation de signets et des boutons Suivant et Précédent du fureteur, est une des meilleures solutions afin d’optimiser son site pour les moteurs de recherche.</p>
<p><img class="aligncenter size-full wp-image-211" title="SWFAddress" src="http://blog.quatrecentquatre.com/wp-content/uploads/2009/06/caption1.gif" alt="SWFAddress" width="397" height="176" /></p>
<p>Afin d’utiliser <a href="http://www.asual.com/swfaddress/">SWFAddress</a>, il suffit d’intégrer l’outil dans le HTML de la façon suivante :</p>
<pre class="javascript"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span> src=<span style="color: #3366CC;">&quot;library/swfobject.js&quot;</span>&gt;&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span> src=<span style="color: #3366CC;">&quot;library/swfaddress.js&quot;</span>&gt;&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span>&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #003366; font-weight: bold;">var</span> flashvars = <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #003366; font-weight: bold;">var</span> params = <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #003366; font-weight: bold;">var</span> attributes = <span style="color: #66cc66;">&#123;</span>id:<span style="color: #3366CC;">&quot;flashMovie&quot;</span><span style="color: #66cc66;">&#125;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	swfobject.<span style="color: #006600;">embedSWF</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">&quot;navigationExample.swf&quot;</span>, <span style="color: #3366CC;">&quot;alternateContent&quot;</span>, <span style="color: #3366CC;">&quot;100%&quot;</span>, <span style="color: #3366CC;">&quot;100%&quot;</span>, <span style="color: #3366CC;">&quot;9.0.124&quot;</span>, <span style="color: #003366; font-weight: bold;">false</span>, flashvars, params, attributes<span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p><strong>UTILISATION DE SWFADDRESS</strong></p>
<p>L’intégration dans Flash s’effectue ensuite comme suit :</p>
<pre class="actionscript"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> :<span style="color: #0066CC;">void</span><span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	SWFAddress.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>SWFAddressEvent.<span style="color: #006600;">CHANGE</span>, handleChange, <span style="color: #000000; font-weight: bold;">false</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #808080; font-style: italic;">//Exemple de changement de page, mais une page ‘’/’’ est reçue par défaut au départ de l’application</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	SWFAddress.<span style="color: #006600;">setValue</span><span style="color: #66cc66;">&#40;</span>‘’page1’’<span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> handleChange<span style="color: #66cc66;">&#40;</span>evt:SWFAddressEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span><span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> laSection:<span style="color: #0066CC;">String</span> = evt.<span style="color: #006600;">value</span>; </div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #808080; font-style: italic;">//La seule information obtenue est un string, une condition doit donc être programmée</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #b1b100;">switch</span><span style="color: #66cc66;">&#40;</span>laSection<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">		<span style="color: #b1b100;">case</span> ‘’X’’ :</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #808080; font-style: italic;">//opération afin de changer de section</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #808080; font-style: italic;">//Changer le titre de la page (défini manuellement)</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #808080; font-style: italic;">//Vérifier si c’est la section demandée n’existe pas, etc…</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p><a href="http://www.asual.com/swfaddress/">SWFAddress</a> présente aussi plusieurs outils pour, par exemple :</p>
<ul>
<li>Ouvrir des liens externes</li>
<li>Reculer dans l’historique</li>
<li>Monter de niveau hiérarchique (section1/section1-1 vers section1/)</li>
<li>Changer le titre de la page (dans quel cas SWFAddress doit être déclaré sous la balise  dans le html.</li>
</ul>
<p><strong>Note</strong> : <a href="http://www.asual.com/swfaddress/">SWFAddress</a>, quand il est utilisé adéquatement, remplace et surclasse le moteur d’indexation des fichiers swf des moteurs de recherche populaires tels que Google, c’est pourquoi il est important d’inclure un fichier robots.txt afin d’empêcher ceux-ci d’indexer automatiquement les fichiers gérés par <a href="http://www.asual.com/swfaddress/">SWFAddress</a> ou le NavigationManager.<br />
Exemple de fichier robots.txt :</p>
<pre class="text"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">Sitemap: http://www.asual.com/sitemap.xml</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">User-agent: *</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">Disallow: /*.swf*</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p> &nbsp;<br />
 &nbsp;<br />
<strong>NAVIGATIONMANGER</strong></p>
<p>Le mandat de <a href="http://www.asual.com/swfaddress/">SWFAddress</a> est de permettre le deep-linking et cet objectif est atteint. Toutefois, des mécanismes personnalisés doivent être mis en place afin d’en régir le fonctionnement ainsi que les cas d’exception.  Que faites-vous si vous voulez que la description des sections soit chargée à l’externe, passer à la section suivante, assigner des descriptions aux sections, obtenir les infos de son parent ou encore que vous désirez savoir à quel niveau hiérarchique se trouve la section courante?  Vous devrez programmer vos propres mécanismes ou utiliser le NavigationManager.</p>
<p>Propriétés et méthodes publiques</p>
<p><div id="attachment_232" class="wp-caption aligncenter" style="width: 722px"><img class="size-full wp-image-232" title="NavigationManager" src="http://blog.quatrecentquatre.com/wp-content/uploads/2009/06/caption2.gif" alt="Structure du NavigationManager de QuatreCentQuatre" width="712" height="606" /><p class="wp-caption-text">Structure du NavigationManager de QuatreCentQuatre</p></div><br />
 &nbsp;<br />
 &nbsp;<br />
Étant donné que le NavigationManager est une enveloppe à SWFAddress, les classes de ce dernier seront requises et l’intégration Javascript s’effectuera de la même façon.<br />
 &nbsp;<br />
 &nbsp;</p>
<pre class="javascript"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span> src=<span style="color: #3366CC;">&quot;library/swfobject.js&quot;</span>&gt;&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span> src=<span style="color: #3366CC;">&quot;library/swfaddress.js&quot;</span>&gt;&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;script type=<span style="color: #3366CC;">&quot;text/javascript&quot;</span>&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #003366; font-weight: bold;">var</span> flashvars = <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #003366; font-weight: bold;">var</span> params = <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#125;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #003366; font-weight: bold;">var</span> attributes = <span style="color: #66cc66;">&#123;</span>id:<span style="color: #3366CC;">&quot;flashMovie&quot;</span><span style="color: #66cc66;">&#125;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	swfobject.<span style="color: #006600;">embedSWF</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">&quot;navigationExample.swf&quot;</span>, <span style="color: #3366CC;">&quot;alternateContent&quot;</span>, <span style="color: #3366CC;">&quot;100%&quot;</span>, <span style="color: #3366CC;">&quot;100%&quot;</span>, <span style="color: #3366CC;">&quot;9.0.124&quot;</span>, <span style="color: #003366; font-weight: bold;">false</span>, flashvars, params, attributes<span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&lt;/script&gt;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p>Le NavigationManager fonctionne selon un schéma XML qui peut être défini manuellement ou chargé à l’externe, voici un exemple de la structure du XML requis.</p>
<pre class="xml"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;response<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;header<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/header<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;body<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;page<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;item</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;default&quot;</span><span style="font-weight: bold; color: black;">&gt;</span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;description<span style="font-weight: bold; color: black;">&gt;</span></span></span>Section 1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/description<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;tag<span style="font-weight: bold; color: black;">&gt;</span></span></span>section1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/tag<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span>sectionclasses.Section1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;subitems<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">					<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;item</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;normal&quot;</span><span style="font-weight: bold; color: black;">&gt;</span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">						<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;description<span style="font-weight: bold; color: black;">&gt;</span></span></span>Ceci est la section 1.1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/description<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">						<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;tag<span style="font-weight: bold; color: black;">&gt;</span></span></span>section1-1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/tag<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">						<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span>sectionclasses.Section1_1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">					<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/item<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">					<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;item</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;normal&quot;</span><span style="font-weight: bold; color: black;">&gt;</span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">						<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;description<span style="font-weight: bold; color: black;">&gt;</span></span></span>Ceci est la section 1.2<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/description<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">						<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;tag<span style="font-weight: bold; color: black;">&gt;</span></span></span>section1-2<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/tag<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">						<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span>sectionclasses.Section1_2<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">					<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/item<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/subitems<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/item<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;</span> item <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;notfound&quot;</span><span style="font-weight: bold; color: black;">&gt;</span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;description<span style="font-weight: bold; color: black;">&gt;</span></span></span>Section  not found<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/description<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;tag<span style="font-weight: bold; color: black;">&gt;</span></span></span>sectionnotfound<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/tag<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">				<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span>sectionclasses.Section1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/ressource<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">			<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/</span> item<span style="font-weight: bold; color: black;">&gt;</span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">		<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/page<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/body<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/response<span style="font-weight: bold; color: black;">&gt;</span></span></span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p>Les informations d’une section doivent se retrouver à l’intérieur d’une balise &lt;item&gt;  et doivent se situer à l’intérieur du node &lt;page&gt; qui sert de conteneur aux informations de la navigation.</p>
<p>Les informations à retrouver sont les suivantes :</p>
<ul>
<li>L’attribut type qui peut valoir normal au default. Une valeur default indique que cette section est celle qui sera chargée par défaut lors de l’initialisation du système (au lieu de « / »)</li>
<li>La balise tag, qui sera utilisée comme identifiant dans la barre d’addresse et pour google analytics.</li>
<li>La balise description, qui est une valeur qui peut servir, par exemple, à nommer le bouton qui mènera à la section ou encore au titre de la page si la propriété useDescriptionAsTitle a une valeur de true.</li>
<li>La balise ressource, que vous pourrez utiliser afin de spécifier à quelle ressource (classe, fichier swf ou lien externe) la section est liée.</li>
<li>Une balise subitems optionnelle qui contiendra des nodes items qui seront considérés les enfants de l’item courant.</li>
</ul>
<p>Notez qu’un deuxième node de structure similaire mais d’un type notfound peut être placé à la racine de l’arbre afin de régir la section utilisée lorsqu’une page reçue n’est pas définie dans le XML.  Si ce node facultatif n’est pas défini, la page par défaut sera utilisée.<br />
<br />
<strong>UTILISATION DU NAVIGATION MANAGER</strong></p>
<p>L’intégration dans Flash est simple : </p>
<pre class="actionscript"><ol><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> :<span style="color: #0066CC;">void</span><span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	NavigationManager.<span style="color: #006600;">instance</span>.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>NavigationManagerEvent.<span style="color: #006600;">SECTION_CHANGED</span>, handleSectionChanged, <span style="color: #000000; font-weight: bold;">false</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	NavigationManager.<span style="color: #006600;">instance</span>.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>NavigationManagerEvent.<span style="color: #006600;">MENU_XML_LOAD_COMPLETE</span>,</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">		handleMenuLoadComplete, <span style="color: #000000; font-weight: bold;">false</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	NavigationManager.<span style="color: #006600;">instance</span>.<span style="color: #006600;">loadMenuXML</span><span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> URLRequest<span style="color: #66cc66;">&#40;</span>‘’<span style="color: #0066CC;">menu</span>.<span style="color: #0066CC;">xml</span>’’<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> handleSectionChanged <span style="color: #66cc66;">&#40;</span>evt: NavigationManagerEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span><span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #808080; font-style: italic;">//Référence vers la section courante</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> laSection:SectionData = evt.<span style="color: #006600;">section</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #808080; font-style: italic;">//ou</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> laSection2:SectionData =NavigationManager.<span style="color: #006600;">instance</span>.<span style="color: #006600;">getCurrentSection</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #808080; font-style: italic;">//On pourrait créer une section à partir de la ressource :</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> sectionClass:<span style="color: #000000; font-weight: bold;">Class</span> = getDefinitionByName<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">e</span>.<span style="color: #006600;">section</span>.<span style="color: #006600;">ressource</span><span style="color: #66cc66;">&#41;</span> as <span style="color: #000000; font-weight: bold;">Class</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> currentSection &lt;img src=<span style="color: #ff0000;">'http://blog.quatrecentquatre.com/wp-includes/images/smilies/icon_biggrin.gif'</span> alt=<span style="color: #ff0000;">':D'</span> <span style="color: #000000; font-weight: bold;">class</span>=<span style="color: #ff0000;">'wp-smiley'</span> /&gt; isplayObject = <span style="color: #000000; font-weight: bold;">new</span> sectionClass<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> as SectionObject</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	addChild<span style="color: #66cc66;">&#40;</span>currentSection<span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span> </div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> handleMenuLoadComplete <span style="color: #66cc66;">&#40;</span>evt: NavigationManagerEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span><span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #808080; font-style: italic;">//Effectue les operations afin de créer le menu</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> iterator:ISubSectionIterator = NavigationManager.<span style="color: #006600;">instance</span>.<span style="color: #006600;">sectionsList</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #000000; font-weight: bold;">var</span> <span style="color: #0066CC;">length</span>:<span style="color: #0066CC;">int</span> = iterator.<span style="color: #006600;">numSubSections</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">var</span> i:<span style="color: #0066CC;">int</span> = <span style="color: #cc66cc;">0</span>; i &lt; <span style="color: #0066CC;">length</span>; i++<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">		<span style="color: #000000; font-weight: bold;">var</span> laSection:SectionData = iterator.<span style="color: #006600;">getSubSectionAt</span><span style="color: #66cc66;">&#40;</span>i<span style="color: #66cc66;">&#41;</span>;</div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">	<span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div></li><li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;"><div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div></li></ol></pre>
<p>
Comme on peut le constater, il peut être pratique d’écouter sur l’événement MENU_XML_LOAD_COMPLETE  afin de savoir si le XML est chargé alors que l’événement SECTION_CHANGED est utile afin de savoir quand une section a changé. Notez que l’événement SECTION_CHANGED  ne sera jamais diffusé avant que la fin du chargement du XML externe ou avant l’assignation manuelle du XML à travers la fonction NavigationManager.instance. sectionsList. setMenuStructure().<br />
<br/><br />
<strong>PRATIQUES À ADOPTER</strong></p>
<ul>
<li>Dans les items associée à une section (un bouton de menu par exemple) implémentez une propriété qui entreposera une référence vers le SectionData de la section qu’ils représentent afin de faciliter l’utilisation du système. En plus, l’espace mémoire requis sera plus petit qu’une valeur textuelle de son chemin enregistrée dans un String. </li>
<li>Si vous avez plus d’un menu pour la navigation, vous pouvez les englober dans des nodes <item> à la racine du groupe
<page> qui serviront ni plus ni moins de conteneurs aux sous-sections qu’ils contiendront.  Pour y accéder individuellement lors de la création dynamique des menus, vous pouvez utiliser la fonction NavigationManager.instance.sectionsList.getSectionByTag(‘’conteneur X’’) à partir duquel vous pourrez accéder à ses enfants.  De plus, la structure dans Google Analytics n’en sera que plus claire étant donné que la section sera identifée comme suit : conteneurX/sectionY </li>
</ul>
<p> &nbsp;<br />
 &nbsp;<br />
<strong>BIBLIOGRAPHIE</strong><br />
SWFAddress Bad Practices<br />
<a href="http://www.asual.com/blog/swfaddress/2007/05/18/swfaddress-bad-practices.html">http://www.asual.com/blog/swfaddress/2007/05/18/swfaddress-bad-practices.html</a><br />
SWFAddress and robots.txt<br />
<a href="http://www.asual.com/blog/swfaddress/2008/11/25/swfaddress-and-robots-txt.html">http://www.asual.com/blog/swfaddress/2008/11/25/swfaddress-and-robots-txt.html</a></p>
<p>Télécharger la version 1.0 du NavigationManager:<br />
<a href="http://quatrecentquatre.com/clients/public/404/NavigationManager1.0.zip">LIEN</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2009/06/08/utilisation-de-swfaddress-a-travers-le-navigation-manager/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Librairies externes en Flash</title>
		<link>http://blog.quatrecentquatre.com/2009/05/31/librairies-externes-en-flash/</link>
		<comments>http://blog.quatrecentquatre.com/2009/05/31/librairies-externes-en-flash/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 00:26:25 +0000</pubDate>
		<dc:creator>Jocelyn</dc:creator>
				<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Réalisation]]></category>
		<category><![CDATA[cs4]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=166</guid>
		<description><![CDATA[La problématique des productions Flash multi fichiers
Lors du développement d’un site Flash à fichiers multiples, une problématique apparait très rapidement dans le processus de développement : La réutilisation des même éléments (graphiques, classes, composants) dans plusieurs des fichiers du site. Le problème vient entre autre du fait que chaque fichier  SWF a une librairie de [...]]]></description>
			<content:encoded><![CDATA[<p><strong>La problématique des productions Flash multi fichiers</strong></p>
<p>Lors du développement d’un site Flash à fichiers multiples, une problématique apparait très rapidement dans le processus de développement : La réutilisation des même éléments (graphiques, classes, composants) dans plusieurs des fichiers du site. Le problème vient entre autre du fait que chaque fichier  SWF a une librairie de graphique, composant, et classes unique. De ce fait, si on veut utiliser le même graphique dans deux fichiers SWF, ont doit donc recopier les mêmes éléments qu’on désire réutilisable dans toutes les librairies nécessaires. Cela implique une redondance des éléments et donc une multiplication du poids des fichiers.</p>
<p>Avant  l’arrivé de Flash CS4 et de l’ActionScript 3, il n’y avait pas beaucoup de solution pour contourner le problème. Ont pouvait utiliser un fichier exclude.xml au même endroit que notre fichier FLA pour définir les classes qui ne devait pas être compilé  dans le fichier SWF. Ainsi on pouvait exclure les classes qui étaient dupliqué à travers plusieurs fichiers SWF de l’application. Le problème était qu’on devait quand même recopier les éléments graphiques dans chacun des ces fichiers FLA pour ne pas avoir des erreurs de compilation sur des éléments inexistant dans la librairie.</p>
<div id="attachment_170" class="wp-caption aligncenter" style="width: 469px">
<div class="mceTemp mceIEcenter">
<dl id="attachment_170" class="wp-caption aligncenter" style="width: 469px;">
<dt class="wp-caption-dt"><img class="size-full wp-image-170" style="margin-top:5px" title="Flash multi fichier" src="http://blog.quatrecentquatre.com/wp-content/uploads/2009/05/untitled-1.gif" alt="Exemple de la problématique multi fichiers" width="459" height="290" /></dt>
</dl>
</div>
<p><p class="wp-caption-text">Example de la problématique</p></div><br />
<br/><br />
<strong>Les modules </strong></p>
<p>Depuis la sortie de la suite CS4, il est maintenant possible d’intégrer des librairies externes pour la compilation directement à partir de l’IDE de Flash. Il est donc maintenant possible de créer une librairie d’élément (graphique, composant, classes) qu’on désirer partager à travers plusieurs fichiers mais qui ne seront pas compiler (injecter) dans le fichier final d’un SWF donné. L’arrivée des modules élimine donc la redondance de poids avec la réplication des éléments partagés dans plusieurs librairies des fichiers FLA.</p>
<p>Pour créer une application multi fichiers avec module, ont doit donc commencer par créer le module en tant que tel et ensuite ce module est charger en premier par le fichier principal (celui qui s’occupe du chargement des fichiers subséquents) et ensuite procède au chargement des sections ou sous-section de l’application. Dès que le module est chargé, les sections et sous-sections ont directement accès aux ressources de celui-ci. Le module doit cependant être chargé de façon à ce que « l’Application Domain » soit le même que le fichier principale pour que les ressources soient accessible.</p>
<div id="attachment_170" class="wp-caption aligncenter" style="width: 469px">
<div class="mceTemp mceIEcenter">
<dl id="attachment_191" class="wp-caption aligncenter" style="width: 469px;">
<dt class="wp-caption-dt"><img class="size-full wp-image-191" style="margin-top:5px" title="Example avec module" src="http://blog.quatrecentquatre.com/wp-content/uploads/2009/05/untitled-2.gif" alt="Example avec module" width="459" height="350" /></dt>
</dl>
</div>
<p><p class="wp-caption-text">Example avec module</p></div><br />
<br/><br />
<strong>Création d’un module</strong><br />
Le module se crée en deux étapes. En premier lieu, on crée un fichier FLA et on y place tous les éléments réutilisables que nous voulons partager à travers les différents fichiers SWF du site ou de l’application. Ensuite, nous exportons le tout en format SWC (fichier SWF compressé par ZIP) et SWF. À partir de cet instant, le module est donc terminer et prêt à être utiliser directement dans les autres fichiers.</p>
<p><strong>Exemple de création</strong></p>
<ul>
<li>On crée un fichier “module.fla” dans lequel on inclut tout les éléments (graphiques, composants, classes, etc...) à partager</li>
<li>On exporte ce fichier en “module.swc”</li>
<li>On compile ce fichier en ”module.swf”</li>
<li>Pour tous les fichiers FLA qui doivent utiliser ces éléments, inclure le SWC dans les paramètres de publication sous l’onglet “External Library Path”</li>
<li>Dans votre fichier principal, charger le fichier “module.swf” en premier lieu, et ensuite procéder au chargement des sections et sous-section selon le besoin</li>
</ul>
<p>En mode développement, on peut bien tester les sections et sous-sections en chargeant directement le module dans ces fichiers avant toute exécution du code pour pouvoir bien tester les fonctionnalités. Lors de la mise en ligne, on retire tout simplement le chargement du module dans les sections et sous-sections. C'est présentement la meilleure solution pour le travail en multi fichiers.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2009/05/31/librairies-externes-en-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Présentation Techno !</title>
		<link>http://blog.quatrecentquatre.com/2009/05/19/presentation-techno/</link>
		<comments>http://blog.quatrecentquatre.com/2009/05/19/presentation-techno/#comments</comments>
		<pubDate>Wed, 20 May 2009 03:02:39 +0000</pubDate>
		<dc:creator>Jocelyn</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Entreprise]]></category>
		<category><![CDATA[présentation techno]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=157</guid>
		<description><![CDATA[C'est le début d'un temps nouveau chez Quatrecentquatre. À partir de ce mois-ci, en fait directement cette semaine, nous allons débuter un nouveau processus interne qui j'espère nous permettra de rester à l'avant-garde comme développeur d'application interactive et aussi stimuler notre curiosité du domaine.
 Ce sera en effet le début des "Présentation Techno 4C4". Dans [...]]]></description>
			<content:encoded><![CDATA[<p>C'est le début d'un temps nouveau chez Quatrecentquatre. À partir de ce mois-ci, en fait directement cette semaine, nous allons débuter un nouveau processus interne qui j'espère nous permettra de rester à l'avant-garde comme développeur d'application interactive et aussi stimuler notre curiosité du domaine.</p>
<p class="MsoNormal"><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:HyphenationZone>21</w:HyphenationZone> <w:PunctuationKerning /> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>FR-CA</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--> Ce sera en effet le début des "Présentation Techno 4C4". Dans le cadre de la présentation, chaque membre de l'équipe doit se trouver un sujet technologique, en rapport avec notre domaine bien sûr, qui n’est pas ou peu connu des autres personnes et qui est d’un intérêt certain pour les développeurs. Comme nous sommes au courant des guerres "viriles" entre les développeurs sur certain sujet (PHP vs ASP, Linux vs Windows, iPhone vs BlackBerry) et que nous voulons éviter la discrimination envers les minorités visibles (Cobol, Silverlight), nous avons établis des règles pour déterminer un bon sujet et aussi encourager les membres de l'équipe à aller vers des technologies opposés à leur vision.</p>
<p class="MsoNormal">Un bon sujet Techno 4C4 est :</p>
<ul>
<li>Un nouveau langage de programmation peu connu.</li>
<li>Un élément peu connu ou peu utiliser d’un langage de programmation existant.</li>
<li>Une nouvelle technique de production Web ou logiciel.</li>
<li>Une nouvelle technique pour un langage en particulier.</li>
<li>Une nouvelle technologie (physique ou virtuelle).</li>
<li>Une nouvelle approche pour résoudre des problèmes affrontés couramment durant le développement d’une application Web.</li>
<li>Une nouvelle approche de résolution de problème générique.</li>
<li>Développement sur de nouvelles plateformes (mobile, iPhone, Silverlight)</li>
</ul>
<p>Présentation de courte durée, a raison d'une fois par mois, elle seront bien entendu retranscrite ici sur le blogue pour permettre à tous de profiter des trouvailles.</p>
<p class="MsoNormal">
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2009/05/19/presentation-techno/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Système de gestion de contenu, plait-îl ?</title>
		<link>http://blog.quatrecentquatre.com/2009/05/19/systeme-de-gestion-de-contenu-plait-il/</link>
		<comments>http://blog.quatrecentquatre.com/2009/05/19/systeme-de-gestion-de-contenu-plait-il/#comments</comments>
		<pubDate>Wed, 20 May 2009 01:24:22 +0000</pubDate>
		<dc:creator>Jocelyn</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[gestionnaire de contenu]]></category>
		<category><![CDATA[programmation]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=117</guid>
		<description><![CDATA[
Vers la fin des années 90, les système de gestion de contenu ont débuté leur ascension vers la popularité pour tous les sites de petite et moyenne envergure. Les boîtes de production interactive voulaient vendre des sites clef en main. Pour que le client puisse ainsi gérer entièrement sont site comme bon lui semble. Nous [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if gte mso 10]><br />
<mce:style><!   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin-top:0cm; 	mso-para-margin-right:0cm; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0cm; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin;} --></p>
<p>Vers la fin des années 90, les <a href="http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_gestion_de_contenu" target="_blank">système de gestion de contenu</a> ont débuté leur ascension vers la popularité pour tous les sites de petite et moyenne envergure. Les boîtes de production interactive voulaient vendre des sites clef en main. Pour que le client puisse ainsi gérer entièrement sont site comme bon lui semble. Nous avons donc vu au cours des 15 dernières années, dans le cadre de notre travail, des système de gestion de contenu mal fait qui rendait le travail de mise à jours des sites ardu et pénible, et d'autre qui au contraire répondait très bien aux besoins mais qui avec la progression des technologies (intégration Web valide, <a href="http://fr.wikipedia.org/wiki/Web_s%C3%A9mantique" target="_blank">sémantique</a>, dynamisation avec JavaScript, réseaux sociaux) sont maintenant désuets. Nous avons ensuite vu l'émergence des système de gestion de contenu "<a href="http://fr.wikipedia.org/wiki/Open_Source" target="_blank">libre de droit</a>" (<a href="http://typo3.com/" target="_blank">Typo3</a>, <a href="http://drupal.org/" target="_blank">Drupal</a>, <a href="http://www.dotnetnuke.com/" target="_blank">DotNetNuke</a>, etc.) en grand nombre pour le  bonheur des clients moins fortunés. Une solution viable, solide, et robuste (tout dépendant du gestionnaire choisi) à la porté de tous ou presque.</p>
<p>Qu'en est-il maintenant des système de gestion de contenu ? En tant que client ou personne ayant besoin des fonctions d'un système de gestion de contenu, comment choisir la meilleure option pour nos besoin ? Est-ce que le client a réellement besoin d'un système de gestion de contenu ? Est-ce vraiment la meilleur solution pour mon site / application ? La réponse devrait être simple mais malheureusement elle ne l'est pas. Il n'existe aucune réponse parfaite qui saura répondre à tout les besoins que ce soit d'un système de gestion de contenu hyper simple au plus complexe. Pour faire un choix éclairé et qui correspond vraiment à nos besoins, je crois qu'il est important de décrire exactement les options qui s'offrent à un client pour les choix de développement d'un site ou d'une application avec système de gestion de contenu.</p>
<p>Il n'existe malheureusement aucune réponse généralisée qui permet de choisir une solution spécifique qui répondra à tous les cas de figures. À chaque projet sa solution. La meilleure option pour un projet donnée n'est pas nécessairement souhaitable pour un autre projet.</p>
<p><strong>Développement sur mesure<br />
</strong>Il est parfois souhaitable dans certain cas de figure, d'y aller d'une solution complètement sur mesure. On prend bien note des besoins de gestion de contenu du client et on implémente un système de gestion de contenu qui réponds exactement à ces besoins. Cette solution est optimale dans le cas de projet spécial qui nécessite une grande liberté au niveau de la logique de site ou d'application ainsi qu'au niveau graphique. L'utilisation plus ou moins intensive de "Flash" dans un site ou une application implique souvent le développement sur mesure d'un système de gestion de contenu car les système existant (pas tous mais la majorité) ont de la difficulté à bien gérer le "Flash".</p>
<p><em>Avantage<br />
</em></p>
<ul>
<li>Grande liberté au niveau de la conception de l'application et du graphisme.</li>
<li>Permet d'intégrer des fonctionnalités plus complexes sans contourner un système limitatif.</li>
<li>Meilleure gestion de l'intégration des fonctionnalités des réseaux sociaux (<a href="http://www.twitter.com" target="_blank">Twitter</a>, <a href="http://www.facebook.com" target="_blank">Facebook</a>, etc.)</li>
<li>Le système peut être mieux prévu pour une future expansion des fonctionnalités.</li>
<li>Permet d'optimiser les performances du site ou de l'application de façon spécifique.</li>
<li>Gestion optimale de la sécurité de l'application (selon le niveau requis)</li>
</ul>
<p><em>Inconvénient</em></p>
<ul>
<li>Temps et coûts de développement majoritairement plus élevés.</li>
<li>Système fermé et donc connu seulement du développeur ou de l'entreprise réalisant le projet (peut devenir problématique si les personnes responsables ne sont plus disponibles pour l'expansion du système).</li>
<li>On réinvente la roue pour la majorité des fonctionnalités déjà écrite et utilisé par des milliers d'utilisateurs.</li>
</ul>
<p><strong>Développement sur mesure avec "<a href="http://fr.wikipedia.org/wiki/Framework" target="_blank">framework</a>"<br />
</strong>On utilise exactement la même démarche mentionné dans le développement sur mesure mais cette fois-ci au lieu d'effectuer le développement avec ses propres librairies, on utilise des "framework" préférablement "libre de droit" (<a href="http://codeigniter.com/" target="_blank">Code Igniter</a>, <a href="http://cakephp.org/" target="_blank">CakePHP</a>, <a href="http://www.djangoproject.com/" target="_blank">Django</a>, <a href="http://rubyonrails.org/" target="_blank">Rails</a>) comme base au développement du système de gestion de contenu. Ainsi, selon le "framework" utilisé on ne s'oblige pas a réinventer la roue pour développer les opérations de base d'un site ou d'une application Web.</p>
<p><em>Avantage<br />
</em></p>
<ul>
<li>Grande liberté au niveau de la conception de l'application et du graphisme.</li>
<li>Permet d'intégrer des fonctionnalités plus complexes sans contourner un système limitatif.</li>
<li>Meilleure gestion de l'intégration des fonctionnalités des réseaux sociaux (Twitter, Facebook, etc.)</li>
<li>Tirer profit d'une base d'usager ayant développé des fonctions similaires avec le même "framework".</li>
<li>Permet au client de passer le flambeau du développement à d'autre développeur ou entreprise qui maîtrise ce "framework".</li>
<li>Permet d'optimiser les performances du site ou de l'application de façon spécifique avec les outils du "framework".</li>
<li>Gestion optimale de la sécurité de l'application (selon le niveau requis)</li>
</ul>
<p><em>Inconvénient</em></p>
<ul>
<li>Temps et coûts de développement majoritairement plus élevés.</li>
<li>Système semi-fermé qui contient une bonne partie de développement effectué par le développeur ou l'entreprise qui  a produit le site ou l'application.</li>
<li>On réinvente la roue pour une partie des fonctionnalités  déjà écrite et utilisé par des milliers d'utilisateurs.</li>
</ul>
<p><strong>Système de gestion de contenu propriétaire<br />
</strong>Développer par des entreprises ou des développeurs (<a href="http://expressionengine.com/" target="_blank">Expression Engine</a>, <a href="http://www.k3media.com/1/applications_web_php" target="_blank">K3 Soft</a>) qui veulent généraliser les opérations courantes d'un système de gestion de contenu et ensuite revendre leur solution pour tirer profit de leur temps de développement et ainsi offrir des solutions clé en mains. Ces solutions répondent aux besoins typiques généralisés pour la pluspart des applications ou site : gestion des pages, gestion du contenu textuel, gestion des menus, gestions des éléments médias, gestions du style graphique des pages, forum, envoie de courriel de masse, wiki, blog, etc... Les prix vont souvent varier selon l'entreprise et les fonctions requisent.</p>
<p><em>Avantage<br />
</em></p>
<ul>
<li>Prêt à utiliser directement après l'installation / configuration.</li>
<li>Facilite les opérations de gestion de contenu typique.</li>
<li>Support de l'entreprise pour l'utilisation et les problèmes avec le produit.</li>
<li>Temps de développement et coût réduit, seulement l'intégration du graphisme est à faire.</li>
</ul>
<p><em>Inconvénient</em></p>
<ul>
<li>Selon les systèmes de gestion de contenu, il y a limitation au niveau graphique pour respecter les guides du système.</li>
<li>Selon le système, difficile voir impossible d'implémenter des fonctionnalités qui sortent des généralités implémenter par celui-ci. (lorsque c'est possible, devient souvent plus long à implémenter que pour une solution sur mesure).</li>
<li>Compte tenu du nombre de personnes qui supporte le développement du système, tendance à être désuet après 1 ou 2 années.</li>
<li>Difficile d'optimiser les performances de l'application ou du site si le site ou l'application éprouve des problèmes de performances.</li>
<li>Outre l'entreprise ou le développeur vendeur du système, personne ne connait le système en place. (peut devenir problématique si les personnes responsables ne sont plus disponibles pour l'expansion du système).</li>
<li>Gestion souvent inexistante des fonctionnalités des réseaux sociaux (Twitter, Facebook, etc.).</li>
</ul>
<p><strong>Système de gestion de contenu "libre de droits"<br />
</strong>Ces systèmes utilisent exactement la même approche qu'au point précédant mais cette fois-ci le développement est effectué par la communauté. Ont applique encore une fois une généralisation des fonctionnalités requisent par un système de gestion de contenu . Les systèmes sont donc développer par des milliers de développeur qui tente au fil du temps de développer le meilleur système possible.</p>
<p><em>Avantage</em></p>
<ul>
<li>Prêt à utiliser directement après l'installation / configuration.</li>
<li>Facilite les opérations de gestion de contenu typique.</li>
<li>Tirer profit d'une base d'usager utilisant déjà ce système, une communauté active autour du produit.</li>
<li>Permet au client de passer le flambeau du développement à d'autre développeur ou entreprise qui maîtrise ce système de gestion de contenu.</li>
<li>Temps de développement et coût réduit, seulement l'intégration du graphisme est à faire.</li>
<li>Tirer profit des extensions du système développé par la communauté pour des fonctionnalités qui sortent du cadre générique du système de gestion de contenu.</li>
<li>Système testé par des milliers d'utilisateurs ce qui donne majoritairement un produit robuste et stable.</li>
</ul>
<p><em>Inconvénient</em></p>
<ul>
<li>Selon les systèmes de gestion de contenu, il y a limitation au niveau graphique pour respecter les guides du système.</li>
<li>Selon le système, il est légèrement plus long d'implémenter des fonctionnalités qui sortent des généralités implémenté par celui-ci. (lorsque cette fonctionnalité n'est pas disponible dans la communauté).</li>
<li>Difficile d'optimiser les performances de l'application ou du site si le site ou l'application éprouve des problèmes de performances.</li>
<li>Gestion souvent inexistante des fonctionnalités des réseaux sociaux (Twitter, Facebook, etc.). Il y a cependant amélioration de ce côté.</li>
</ul>
<p>Chacune des solutions comporte ses avantages et ses inconvénients. Il est donc important d'évaluer la meilleure solution en tenant compte premièrement du budget pour le site ou l'application, et ensuite déterminer exactement les fonctionnalités requises. Ensuite, une personne qualifiée pourra vous diriger dans la bonne voie pour tirer maximum à court et long terme de votre solution. Il n'existe pas de solution parfaite, seulement des solutions adaptées.</p>
<p><strong></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2009/05/19/systeme-de-gestion-de-contenu-plait-il/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Gérer ses bits</title>
		<link>http://blog.quatrecentquatre.com/2009/02/05/consolider-ses-bits/</link>
		<comments>http://blog.quatrecentquatre.com/2009/02/05/consolider-ses-bits/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 01:28:21 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Tout et Rien]]></category>
		<category><![CDATA[SVN CVS Git repository trac team management]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=102</guid>
		<description><![CDATA[Dans le créneau, quand une équipe de programmation se met à travailler de concert sur un projet, la gestion des fichiers et de leur version peut devenir un vrai casse-tête.  C'est pourquoi des outils tels que les cvs ainsi que les svn sont apparus sur le marché; ceux-ci permettent de gérer / consolider  les fichiers [...]]]></description>
			<content:encoded><![CDATA[<p>Dans le créneau, quand une équipe de programmation se met à travailler de concert sur un projet, la gestion des fichiers et de leur version peut devenir un vrai casse-tête.  C'est pourquoi des outils tels que les cvs ainsi que les svn sont apparus sur le marché; ceux-ci permettent de gérer / consolider  les fichiers / versions de fichiers d'une équipe et tout celà sur un serveur en ligne (le but étant aussi d'avoir accès aux dits documents peu importe où l'on se trouve).  Nul besoin de dire que, du moins chez nous, on ne s'en passerait plus.</p>
<p>Maintenant et depuis quelques temps on sent monter un nouveau concurrent sous le nom de Git.  Initialement créé par Linus Torvalds pour le système d'exploitation Linux, les utilitaires pour l'utiliser sur la plateforme Windows sont encore limités (c'est ce qui nous avait désintéressé quand <a href="http://juliendesrosiers.com/" target="_blank">Julien</a> nous avais parlé du produit) ou en version pré-beta, mais il est certain que des solutions plus stables sont au coin de la rue.  Pour nous c'est la rapidité du système qui nous intéresse et c'est pourquoi nous avons entrepris les recherches d'un hébergeur supportant celui-ci.  Il faut dire que notre fournisseur actuel éprouvait souvent des problèmes de connection, des ralentissement et que, étrangement, nous étions rendu à un point où ajouter un utilisateur nous coutait le double du prix total actuel... ouan.</p>
<p>Tout ceci est derrière nous depuis que nous avons transféré nos données (tout en procédant à des copies de sauvegarde, juste pour être certain) sur les serveurs de <a href="http://repositoryhosting.com/">http://repositoryhosting.com/</a>.  En fait ce ne sont pas vraiment leur serveurs mais plutôt les datacenters EC2 de Amazon desquels la rubustesse semble maintenant excellente.  Le service propose un seul plan: 6$/mois pour un nombre illimité de repositories avec gestion de projet Trac, un nombre illimité d'utilisateurs, 2go d'espace et le choix d'utiliser Git ou bien Svn selon le projet.  En plus, il n'en coûte qu'un dollar par giga octet supplémentaire.  Amen!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2009/02/05/consolider-ses-bits/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Comment répondre à la demande</title>
		<link>http://blog.quatrecentquatre.com/2008/12/08/comment-repondre-a-la-demande/</link>
		<comments>http://blog.quatrecentquatre.com/2008/12/08/comment-repondre-a-la-demande/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 02:44:50 +0000</pubDate>
		<dc:creator>Jocelyn</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Nouveauté]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[hébergement]]></category>
		<category><![CDATA[programmation]]></category>
		<category><![CDATA[serveur]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=82</guid>
		<description><![CDATA[Dans tout développement d'application interactive, de site web, de microsite, une évaluation sommaire de l'achalandage sur le dit site doit être faîte pour estimer à l'avance le genre de déploiement serveur qui sera nécessaire pour palier à la demande. Avec la nouvelle réalité des réseaux sociaux et du caractère virale de certaines applications ou microsite, [...]]]></description>
			<content:encoded><![CDATA[<p><!--[endif]--><span lang="FR-CA">Dans tout développement d'application interactive, de site web, de microsite, une évaluation sommaire de l'achalandage sur le dit site doit être faîte pour estimer à l'avance le genre de déploiement serveur qui sera nécessaire pour palier à la demande. Avec la nouvelle réalité des réseaux sociaux et du caractère virale de certaines applications ou microsite, il est extrêmement difficile de prédire avec exactitude l'achalandage. Malheureusement, dans certain cas et pour certain serveur, une différence de 2 000 usagers à l'heure dans les périodes de pointe peut signifier la différence entre un serveur bien portant et un serveur avec la langue par terre.</span><span lang="FR-CA">Tout dépendant du type d'application (application avec usage extrême de la base de données, application plutôt statique, application avec utilisation extrême du vidéo) il est souvent difficile de s'en sortir pour les compagnies sans débourser une bonne somme d'argent en serveur balancé ou encore en serveur de "streaming".</span></p>
<p><span lang="FR-CA">Alors quoi faire pour s'en sortir sans briser son cochon ? Pour être sûrs de répondre à la demande tant au niveau de la bande passante que des cycles de processeurs nécessaire pour répondre aux requêtes incessantes de tout ces utilisateurs en besoin de navigation.</span></p>
<p><span lang="FR-CA">Il existe plusieurs options. Tout d'abord nous pouvons toujours confier notre produit entre les mains de services d'hébergement mutualisé ou encore de serveurs dédiés (par exemple avec </span><a title="iWeb Hébergement" href="http://fr.iweb.com/" target="_blank"><span lang="FR-CA">iweb</span></a><span lang="FR-CA"> et </span><a title="1 and 1" href="http://order.1and1.com/xml/order/Home;jsessionid=86C3BD107166677B9EDF924F5D4A14B4.TC60b?__reuse=1228787279203" target="_blank"><span lang="FR-CA">1and1</span></a><span lang="FR-CA">)  si on pense que l'achalandage ne requiert aucune infrastructure serveur faramineuse et que la demande en bande passante ne sera pas exhaustive.</span></p>
<p><span lang="FR-CA">Si notre application utilise la vidéo de façon intensive, ce qui souvent est problématique dans le cas d'achalandage élevé sur des serveurs mutualisé, il y a toujours l'option de placer les vidéos sur un serveur de "streaming" (par exemple avec </span><a title="Stream The World" href="http://www.streamtheworld.com/en/index.php" target="_blank"><span lang="FR-CA">stream the world</span></a><span lang="FR-CA">) ce qui est en soi la meilleure option mais qui souvent implique des coûts importants. Une option intéressante pour assurer un achalandage quasi infinie pour ce genre d'application est d'utiliser un service comme le </span><a title="Amazon Simple Storage Service" href="http://aws.amazon.com/s3/" target="_blank"><span lang="FR-CA">S3 D'Amazon</span></a><span lang="FR-CA"> qui utilise la force du réseau d'Amazon (effectivement c'est bel et bien celui du magasin en ligne </span><a title="Amazon" href="http://www.amazon.com/" target="_blank"><span lang="FR-CA">Amazon</span></a><span lang="FR-CA">) et qui implique un coût ridiculement bas pour la bande passante.</span></p>
<p><span lang="FR-CA">Dans un dernier cas de figure, si on pense que notre application ou microsite sera assaillit par les utilisateurs, peu d'option s'offrent à nous. La première est de se retourné vers les services d'hébergement personnalisé où le nombre de serveurs requis sera mis en place pour affronter la charge utilisateur avec les coûts énorme que cela implique. La deuxième est d'utiliser les services d'hébergement qu'on appelle "</span><a title="Définition de Cloud Computing" href="http://en.wikipedia.org/wiki/Cloud_computing" target="_blank"><span lang="FR-CA">cloud computing</span></a><span lang="FR-CA">", la nouvelle coqueluche en fait d'hébergement de haut niveau et de flexibilité.</span></p>
<p><span lang="FR-CA">Qu'est-ce que le "cloud computing" ? Et bien c'est un type d'hébergement qui permet de configurer un type particulier de serveur qui sera automatiquement cloné en fonction de la demande utilisateur sur notre application ou microsite. Ce qui veut dire que l'application répond rapidement peu importe la demande. Et combien cela coûte-t-il ? Et bien pour la plupart des services de "cloud computing" tel que </span><a title="Mosso" href="http://www.mosso.com/index.jsp" target="_blank"><span lang="FR-CA">Mosso</span></a><span lang="FR-CA"> et </span><a title="Amazon Elastic Compute Cloud" href="http://aws.amazon.com/ec2/" target="_blank"><span lang="FR-CA">Amazon EC2</span></a><span lang="FR-CA"> les coûts sont calculé en fonction de la bande passante utilisée ainsi que les cycles de processeurs utilisés. Plus de clone nécessaire pour faire rouler votre application, plus de coûts. Les coûts au niveau de la bande passante et des cycles processeur sont extrêmement bas ce qui rend cette option encore plus intéressante.</span></p>
<p><span lang="FR-CA">Bref, il y a maintenant beaucoup de moyens de répondre à la demande des utilisateurs sans investir des sommes considérable dans des services qui sont difficile ensuite a gérer et qui demande du personnel qualifié. Seul l'avenir nous le dira mais j'ai une certaine intuition que le "cloud computing" sera le type d'hébergement le plus utilisé d'ici quelques années.</span></p>
<p class="MsoNormal"><span lang="FR-CA"> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2008/12/08/comment-repondre-a-la-demande/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Une ressource intéressante</title>
		<link>http://blog.quatrecentquatre.com/2008/11/29/une-ressource-interessante/</link>
		<comments>http://blog.quatrecentquatre.com/2008/11/29/une-ressource-interessante/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 03:35:22 +0000</pubDate>
		<dc:creator>Jocelyn</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Lecture]]></category>
		<category><![CDATA[dzone]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=77</guid>
		<description><![CDATA[Pour tous ceux qui ne connaîtraient pas ce site, disons que pour un développeur traditionnel ou "web" c'est probablement la meilleure ressource niveau lecture qui se trouve sur le "web". On y trouve environs 100 nouveau articles et tutoriaux par jour provenant de divers blogues et sites. On y traite de pratiquement tout les sujets [...]]]></description>
			<content:encoded><![CDATA[<p><!--[endif]--><span style="font-size: 11pt; line-height: 115%; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;;">Pour tous ceux qui ne connaîtraient pas ce site, disons que pour un développeur traditionnel </span>ou "web" c'est probablement la meilleure ressource niveau lecture qui se trouve sur le "web". On y trouve environs 100 nouveau articles et tutoriaux par jour provenant de divers blogues et sites. On y traite de pratiquement tout les sujets et langage : CSS, PHP, Java, Flex, Flash, Linux, Extremme Programming, Test Drivent Development, REST, Unit Test et j'en passe...</p>
<p>Pour vraiment profiter au maximum, abonnez-vous au fil RSS.</p>
<p>La mine d'or est ici : <a title="Devloper Zone" href="http://www.dzone.com/links/index.html" target="_blank">dzone</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2008/11/29/une-ressource-interessante/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Le bon endroit au bon moment</title>
		<link>http://blog.quatrecentquatre.com/2008/11/16/bon-endroit-au-bon-moment/</link>
		<comments>http://blog.quatrecentquatre.com/2008/11/16/bon-endroit-au-bon-moment/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 00:35:43 +0000</pubDate>
		<dc:creator>Martin</dc:creator>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Entreprise]]></category>
		<category><![CDATA[Publicité]]></category>
		<category><![CDATA[Tout et Rien]]></category>
		<category><![CDATA[Argent]]></category>
		<category><![CDATA[Crise]]></category>
		<category><![CDATA[Croissance]]></category>
		<category><![CDATA[IAB]]></category>
		<category><![CDATA[Prédiction]]></category>
		<category><![CDATA[Récession]]></category>

		<guid isPermaLink="false">http://blog.quatrecentquatre.com/?p=55</guid>
		<description><![CDATA[ Est-ce moi ou, peu importe les moyens que l’on cherche pour se changer les idées ces temps-ci, on ne peut s’empêcher d’entendre parler de la crise économique diffusée par nos charmants voisins d’en dessous. Je reste encore étonné quand ma coiffeuse, la préposée chez Archambault ou même le vendeur chez Fido décide, au lieu [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:PunctuationKerning /> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> </w:Compatibility> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--> Es<span lang="FR-CA">t-ce moi ou, peu importe les moyens que l’on cherche pour se changer les idées ces temps-ci, on ne peut s’empêcher d’entendre parler de la crise économique diffusée par nos charmants voisins d’en dessous.<span> </span>Je reste encore étonné quand ma coiffeuse, la préposée chez Archambault ou même le vendeur chez Fido décide, au lieu d’établir la conversation avec une remarque sur la température, de me fournir un <em>update</em> sur le taux de change ou bien sur la valeur de la dette nationale américaine.<span> </span>Même au cinéma, dans le nouveau film de James Bond, on passe des craques sur la valeur du dollar américain en spécifiant, lors d’un échange d’argent, qu’il est effectué en euros plutôt qu’en USD « qui n’a plus la valeur qu’il avait avant» (dit à peu près dans ces mots, l’homme devant moi siphonnait le fond de son gallon de Coke alors j’entendais plus ou moins).<span> </span>Bref, on en vient qu’à se demander si l’instabilité économique qui nous menace est <span> </span>la nouvelle sensation forte ou même pire, le nouveau « y fait beau dehors »!</span></p>
<p class="MsoNormal"><span lang="FR-CA">Il est certain qu’on s’inquiète tous un peu en s’interrogeant à quel niveau la dépression nous affectera et, en tant que nouveaux entrepreneurs en développement web, on se demande à quel point notre entreprise sera touchée par la situation qui, dit-on, sera modérément similaire ici.<span> </span>Une bonne partie de notre clientèle étant des agences de publicité montréalaises, on peut croire que leur sort sera en partie garant du notre et c’est pourquoi des communiqués comme <a href="http://biz.yahoo.com/ap/081007/advertising_sector_snap.html" target="_blank">celui-ci</a></span><span lang="FR-CA"> qui énumèrent<span> </span>des recherches stipulant une baisse des dépenses publicitaires en général, mais surtout dans les réseaux n’ayant pas une portée nationale ne peuvent, à première vue, que faire sonner un signal d’alarme.<span> </span>Si on calcule qu’environ<span> </span>85% des campagnes publicitaires sur lesquelles nous travaillons sont ciblées pour le Québec, c’est le début de la fin…<span> </span>Bon, nous somme au Canada, la situation économique est et sera moins désastreuse qu’aux États-Unis nous assure-t-on.<span> </span>De plus, <span> </span>le Québec est un marché plus ciblé que dans le reste du pays, ça crée ainsi une espèce de « microclimat » national j’imagine?<span> </span>Toutefois, <span> </span>la plus grosse différence est que, à l’instar des prédictions de ces recherches qui visent les médias traditionnels, nous avons la chance d’être des spécialistes du web, c’est même pourquoi <span> </span>j’écris cet article avec le sourire plutôt que des plis plein le front.</span></p>
<p class="MsoNormal"><span lang="FR-CA">Rappelons-nous, il n’y a pas si longtemps que les campagnes web ont droit, parfois, à une déclinaison<span> </span>réellement adaptée à ce médium et pas simplement une vulgaire version « low-rez » de la pub télé en version gif animée 16 couleurs, 15x15px, 20ko maximum.<span> </span>Depuis plus de deux ans,<span> </span>les dépenses en publicité sur internet augmentent d’au moins 15% par année et, avant la crise économique, <span> </span></span><a href="http://www.e-consultancy.com/news-blog/363665/canada-web-ad-spend-to-grow-fastest-forecast-says.html"><span lang="FR-CA">PriceWaterHouseCoopers</span></a><span lang="FR-CA"> prédisait que, au Canada plus qu’ailleurs, cette proportion augmenterait pour atteindre et surpasser 20% d’expansion par année. <span> </span>Bien sûr aujourd’hui les chiffres sont plus conservateurs et dans </span><a href="http://www.iabcanada.com/newsletters/fr_110708.shtml"><span lang="FR-CA">ce communiqué</span></a><span lang="FR-CA"> de l’IAB du Canada, on parle plutôt d’un taux de croissance aux environs de 15%.<span> </span>Je ne sais pas pour vous, mais 15% sur un budget estimé à 1.5 milliard pour 2008, je trouve que ça fait quand même beaucoup de sous… En somme, on nous assure que les grandes entreprises gardent confiance et comprennent maintenant mieux certains des avantages des campagnes en ligne tels que la possibilité d’obtenir des chiffres sur l’efficacité de leurs campagnes quasi instantanément ou même de les <em>géo-socio</em> cibler avec une précision jusqu’à aujourd’hui inégalée. <span> </span>Ce sont ces outils, aidés de l’arrivée en trombe de produits numériques sur mobile et autres supports non conventionnels qui me convainquent que, malgré tout ce que pourra me dire ma coiffeuse, je sent que nous sommes au bon endroit au bon moment!</span></p>
<p class="MsoNormal">
<p class="MsoNormal">
<p class="MsoNormal">
]]></content:encoded>
			<wfw:commentRss>http://blog.quatrecentquatre.com/2008/11/16/bon-endroit-au-bon-moment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
