| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect1 id="learning.quickstart.intro">
- <title>Zend Framework & Introduction MVC</title>
- <sect2 id="learning.quickstart.intro.zf">
- <title>Zend Framework</title>
- <para>
- Zend Framework est un cadre de travail open source orienté objets pour des applications
- web basées sur <acronym>PHP</acronym> 5. Zend Framework est souvent appelé une
- "bibliothèque de composants" car ses composants sont faiblement couplés et vous
- pouvez les utiliser de manière plus ou moins indépendante. Mais Zend Framework propose
- aussi une solution avancée Model-View-Controller (<acronym>MVC</acronym>) qui peut être
- utilisée pour monter des structures de base pour vos applications. Une liste complète
- des composants de Zend Framework avec une brève description peut être trouvée dans
- <ulink url="http://framework.zend.com/about/components">l'aperçu des composants</ulink>.
- Ce guide de démarrage montre les composants les plus utilisés dans Zend Framework, comme
- <classname>Zend_Controller</classname>, <classname>Zend_Layout</classname>,
- <classname>Zend_Config</classname>, <classname>Zend_Db</classname>,
- <classname>Zend_Db_Table</classname>, <classname>Zend_Registry</classname>, ainsi que
- quelques aides de vue.
- </para>
- <para>
- En utilisant ces composants nous allons construire un livre d'or reposant sur une base
- de données, simple, en quelques minutes. Le code source complet pour cette application
- est disponible dans les formats :
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <ulink
- url="http://framework.zend.com/demos/ZendFrameworkQuickstart.zip">zip</ulink>
- </para>
- </listitem>
- <listitem>
- <para>
- <ulink
- url="http://framework.zend.com/demos/ZendFrameworkQuickstart.tar.gz">tar.gz</ulink>
- </para>
- </listitem>
- </itemizedlist>
- </sect2>
- <sect2 id="learning.quickstart.intro.mvc">
- <title>Model-View-Controller</title>
- <para>
- Qu'est ce que <acronym>MVC</acronym> dont tout le monde parle et pourquoi se pencher
- dessus ? <acronym>MVC</acronym> est bien plus qu'un acronyme de trois lettres
- (<acronym>TLA</acronym>) que vous pouvez sortir pour faire "élégant" ; c'est
- devenu un standard de conception des applications Web modernes, ceci pour de bonnes
- raisons. La plupart du code des application se retrouvent dans une de ces
- catégories : présentation, logique métier, accès aux données. Le pattern
- <acronym>MVC</acronym> modélise cette séparation à merveille. Le résultat final est
- qu'un code de présentation peut être travaillé à un endroit de l'application alors que
- la logique métier et l'accès aux données le sont à d'autres endroits. La plupart des
- développeurs ont trouvé cette séparation indispensable pour maintenir le code global
- organisé, particulièrement lorsque plusieurs développeurs travaillent ensemble sur la
- même application.
- </para>
- <note>
- <title>Plus d'informations</title>
- <para>
- Cassons le pattern pour voir les pièces individuellement :
- </para>
- <para>
- <inlinegraphic width="321" scale="100" align="center" valign="middle"
- fileref="figures/learning.quickstart.intro.mvc.png" format="PNG" />
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <emphasis>Model</emphasis> - C'est la partie qui définit la fonctionnalité
- de base de l'application derrière des abstractions. L'accès aux données
- et la logique métier sont définis dans cette couche.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>View</emphasis> - La vue définit exactement ce qui sera présenté à
- l'utilisateur. Normalement les contrôleurs passent des données à chaque vue
- à rendre dans un format précis. Les vues collectent les données de
- l'utilisateur aussi. Ici vous trouverez principalement du
- <acronym>HTML</acronym>.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Controller</emphasis> - Les contrôleurs sont la colle qui lie
- tout. Ils manipulent les modèles, décident de la vue à rendre en fonction
- de la requête utilisateur et d'autres facteurs, passent les données dont
- chaque vue a besoin et passent éventuellement la main à un autre contrôleur.
- La plupart des experts <acronym>MVC</acronym> experts recommandent <ulink
- url="http://weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model">de
- garder les contrôleurs les plus simples et petits possibles</ulink>.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- Bien sûr <ulink url="http://ootips.org/mvc-pattern.html">on pourrait en dire plus
- </ulink> sur ce pattern critique, mais nous avons là suffisament d'informations
- pour comprendre l'application de livre d'or que nous allons construire.
- </para>
- </note>
- </sect2>
- </sect1>
|