O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Estenden<strong>do</strong> o <strong>Yii</strong><br />
Visão Geral<br />
Estender o <strong>Yii</strong> é uma atividade comum durante o desenvolvimento. Por exemplo, quan<strong>do</strong><br />
você cria um novo controle, você estende o framework herdan<strong>do</strong> da classe CController;<br />
quan<strong>do</strong> você cria um novo widget, você está estenden<strong>do</strong> a classe CWidget ou outro<br />
widget existente. Se o código estendi<strong>do</strong> for projeta<strong>do</strong> para a reutilização por terceiros, o<br />
chamamos de extensão.<br />
Uma extensão normalmente atende a um único propósito. No <strong>Yii</strong>, ela pode ser classificada<br />
como:<br />
• componente da aplicação<br />
• comportamento<br />
• widget<br />
• controle<br />
• ação<br />
• filtro<br />
• coman<strong>do</strong> de console<br />
• valida<strong>do</strong>r: um valida<strong>do</strong>r é uma classe que estende de CValidator.<br />
• helper: um helper é uma classe somente com méto<strong>do</strong>s estáticos. São como funções<br />
globais, que utilizam o nome da classe como seu namespace.<br />
• módulo: um módulo é uma unidade de software independente, que contém modelos,<br />
visões, controles e outros componentes de suporte. Em diversos aspectos, um<br />
módulo lembra uma aplicação. A principal diferença é que um módulo está dentro de<br />
uma aplicação. Por exemplo, podemos ter um módulo com funcionalidades para o<br />
gerenciamento de usuários.<br />
Uma extensão também pode ser um componente que não se encaixe em nenhuma das<br />
categorias acima. Na verdade, o <strong>Yii</strong> é cuida<strong>do</strong>samente projeta<strong>do</strong> de forma que,<br />
praticamente to<strong>do</strong> seu código possa ser estendi<strong>do</strong> e customiza<strong>do</strong> para atender<br />
necessidades individuais.<br />
Usan<strong>do</strong> Extensões<br />
A utilização de uma extensão normalmente envolve os seguintes passos:<br />
• Faça o <strong>do</strong>wnload da extensão no repositório <strong>do</strong> <strong>Yii</strong>.<br />
• Descompacte a extensão no diretório extensions/xyz, dentro <strong>do</strong> diretório base da<br />
aplicação, onde xyz é o nome da extensão.<br />
• Importe, configure e utilize a extensão.<br />
Cada extensão tem um nome que a identifica unicamente. Dada uma extensão chamada<br />
xyz, podemos sempre utilizar o path alias ext.xyz para localizar seu diretório base, que<br />
contém to<strong>do</strong>s os arquivos de xyz.