20.11.2014 Views

O Guia Definitivo do Yii 1.1

O Guia Definitivo do Yii 1.1

O Guia Definitivo do Yii 1.1

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!