Devo usar algum framework para desenvolver meus projetos PHP?
Quanto mais se ganha experiência no desenvolvimento com a linguagem de programação PHP mais nós vamos criando a nossa própria biblioteca de classes e funções, e a cada dia ficamos mais familiarizados com as particularidades não só da linguagem PHP quanto do ambientes em que essa linguagem é executado.
Mas vamos à resposta para a pergunta que fiz no título do post: Devo usar um framework para desenvolver meus projetos PHP? - SIM, COM CERTEZA!
Quando digo que você deve usar um framework para desenvolver os seus projetos eu não me refiro necessariamente a você usar frameworks já desenvolvidos, como Yii, CakePHP, Zend Framework, CodeIgniter, etc. Quando digo que SIM, estou me referindo a você utilizar uma biblioteca bem definida de funcionalidades, classes, e soluções para aqueles problemas macabros que sempre temos no nosso dia a dia. Ou seja, você pode criar o seu próprio framework e utilizá-lo como base para todos os seus projetos.
Criar nosso próprio framework não é uma tarefa fácil, principalmente no começo, e possivelmente será uma tarefa sem fim. Sempre terá algo a ser aprimorado, novas funcionalidades a serem implementadas, bugs a serem corrigidos, novas tecnologias a serem adaptadas, etc.. É como um filho, que iremos criar e ver ele crescendo e dando bons resultados.
Hello World com Zend Framework
No post anterior mostrei a estrutura de diretórios recomendada para se utilizar o Zend Framework, agora iremos criar as primeiras linhas de código, e fazer o software mais famoso entre nós programadores, o Hello World.
Se você ainda não utilizou frameworks de desenvolvimento deve estar pensando: "ok, mas o hello world em php se resume a <?php echo 'Hello World!'; ?>", pois bem, usaremos esse exemplo de uma simples saída de string mas usando a estrutura MVC (Model View Controller) implementada em Zend Framework para gerar esse mesmo resultado, e a medida em que você for seguindo no seu projeto você verá as inúmeras vantagens de utilizar essa arquitetura.
Observe que até o momento o nosso projeto não possui sequer um arquivo no nosso diretório público (public_html, httpdocs, www, etc), nós precisaremos apenas de um arquivo .php no diretório público, e a única coisa que ele fará é disparar o inicializador do projeto (Bootstrap). Então, vamos ao que interessa...
// httpdocs/index.php defined('APPLICATION_PATH') || define('APPLICATION_PATH', '/home/zend/application/projeto/'); defined('APPLICATION_ENV') || define('APPLICATION_ENV', 'testing'); set_include_path(implode(PATH_SEPARATOR, array(APPLICATION_PATH, "/home/zend/library/"))); require_once 'Zend/Application.php'; $application = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini'); $application->bootstrap()->run();
Começando com Zend Framework
Se você está lendo esse artigo é porque provavelmente já leu um pouco a respeito de Zend Framework e pensa em começar a utilizá-lo em seus projetos, pouparei maiores detalhes sobre o que é ZF e quais as suas vantagens em relação a outros frameworks PHP, aqui estou considerando que você já está decidido a usá-lo.
Caso ainda tenha muitas dúvidas sobre o framework em si, deixe um recado ao final do post que providencio um outro texto sobre as noções básicas de ZF. E por falar em noções básicas, vamos ao B+A=BA da configuração do Zend Framework...