1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect1 id="learning.quickstart.intro">
<title>Introdução ao Zend Framework e ao MVC</title>
<sect2 id="learning.quickstart.intro.zf">
<title>Zend Framework</title>
<para>
Zend Framework é um framework para aplicações Web orientado a objetos e de código aberto
para <acronym>PHP</acronym> 5. Zend Framework é geralmente chamado de "biblioteca de
componentes", porque tem muitos componentes fracamente acoplados que você pode usar de
forma mais ou menos independente. Mas o Zend Framework também fornece uma avançada
implementação Model-View-Controller (<acronym>MVC</acronym>) que pode ser usada para
estabelecer uma estrutura básica para seus aplicativos Zend Framework. Uma lista
completa dos componentes do Zend Framework, juntamente com uma breve descrição pode ser
encontrada na <ulink url="http://framework.zend.com/about/components">visão geral dos
componentes</ulink>. Este Início Rápido irá apresentá-lo a alguns dos componentes do
Zend Framework mais comumente usados, incluindo <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> juntamente com alguns assistentes de visualização.
</para>
<para>
Usando esses componentes, vamos construir um simples aplicativo de livro de visitas
movido a banco de dados em poucos minutos. O código fonte completo para esta aplicação
está disponível nos seguintes arquivos:
</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>
Então o que é exatamente este padrão <acronym>MVC</acronym> que todos estão falando, e
por que você deveria se preocupar? <acronym>MVC</acronym> é muito mais do que apenas uma
sigla de três letras (<acronym>TLA</acronym>), que você pode sacar sempre que quiser
parecer esperto, tornou-se parte de uma norma nos projetos de aplicações Web modernas. E
por uma boa razão. A maioria do código de aplicações Web está sob uma das três
categorias seguintes: apresentação, lógica de negócios e acesso aos dados. Nos modelos
do padrão <acronym>MVC</acronym> esta separação relaciona-se bem. O resultado final é
que seu código de apresentação pode ser consolidado em uma parte de sua aplicação com
sua lógica de negócio em outra parte e seu código de acesso aos dados também em outra.
Muitos desenvolvedores descobriram que essa separação bem definida é indispensável para
manter seus códigos organizados, especialmente quando mais do que um desenvolvedor está
trabalhando em uma mesma aplicação.
</para>
<note>
<title>Mais Informações</title>
<para>
Vamos decompor o padrão e dar um olhada nas peças individuais:
</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> - Esta é a parte de sua aplicação que define sua
funcionalidade básica por trás de um conjunto de abstrações. Rotinas de
acesso a dados e alguma lógica de negócio podem ser definidos no modelo.
</para>
</listitem>
<listitem>
<para>
<emphasis>View</emphasis> - Apresentações definem exatamente o que será
apresentado ao usuário. Geralmente os controladores passam os dados para
cada apresentação interpretá-los em algum formato. Apresentações também
coletam frequentemente os dados do usuário. É aqui que você provavelmente
encontrará a marcação <acronym>HTML</acronym> nas suas aplicações
<acronym>MVC</acronym>.
</para>
</listitem>
<listitem>
<para>
<emphasis>Controller</emphasis> - Controladores vinculam todo o padrão em um
conjunto. Eles manipulam modelos, decidem qual apresentação será exibida
baseados em solicitações do usuário e em outros fatores, repassam os dados
que cada apresentação necessita, ou transfere completamente o controle para
outro controlador. A maioria dos especialistas em <acronym>MVC</acronym>
recomendam <ulink
url="http://weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model">manter
os controladores o mais simples possível</ulink>.
</para>
</listitem>
</itemizedlist>
<para>
Claro que há <ulink url="http://ootips.org/mvc-pattern.html">mais a ser dito</ulink>
sobre esse padrão fundamental, mas isso deve dar-lhe conhecimento suficiente para
entender a aplicação de livro de visitas que vamos construir.
</para>
</note>
</sect2>
</sect1>
|