Por que usar um framework?

Uma pessoa me perguntou por email “por que usar um framework de desenvolvimento e em que ele vai ajudar o programador?”. Escrevi uma resposta provavelmente incompleta, mas vou postar aqui, pois acho que muita gente tem essa dúvida e, ao buscar pelo assunto no Google, não consegui encontrar uma boa explicação em português.

——————————————————-

Basicamente a função de um framework é tornar o desenvolvimento de sistemas mais simples, rápido e organizado. Para fazer isso, o framework oferece uma estrutura e uma série de padrões para o desenvolvimento, além de uma biblioteca de código e outras facilidades.

Quando eu falo em estrutura, me refiro à organização de arquivos e de código. Por exemplo, no CakePHP, todos os layouts (que são arquivos em HTML) devem estar localizados no diretório “/views/layouts” e todos os arquivos CSS devem estar no “/webroot/css”. Além disso, se eu quiser escrever uma função pra realizar uma tarefa X, existe um lugar específico no sistema pra eu colocar essa função. Isso obriga o programador a manter o sistema organizado.

Quanto aos padrões de desenvolvimento, me refiro por exemplo ao MVC, que é um design pattern para abstração de dados e provavelmente é o conceito mais importante do Cake. Não vou entrar em detalhes, mas tem uma explicação legal aqui.

Ao usar a estrutura e os padrões do framework, o programador evita que o sistema se torne bagunçado e de difícil entendimento, o que é relativamente fácil de acontecer quando se programa “na unha”.

Um bom framework oferece também uma biblioteca de código para realizar as tarefas mais comuns, como acesso a banco de dados, manipulação de sessões, AJAX, etc. Tudo pronto pra usar, bastando o programador ler as especificações e entender o funcionamento.

Acredito que em sistemas de pequeno porte o uso de um framework seja dispensável, mas em sistemas mais complexos ele é essencial. Ao usar um framework você pode focar no problema do cliente ao invés de perder tempo planejando como o sistema vai se comportar internamente.

Seguem alguns links com mais informações:

CakePHP - A “tasty” solution for PHP programming
Top 13 reasons to use a web framework and never look back
When you shouldn’t use a framework.

Atualização em 2007-06-04: Foi lançado no mês passado o livro Frameworks para Desenvolvimento em PHP, que parece ser uma boa referência para quem ainda não se decidiu sobre qual framework usar. Do site do autor: “O livro mostra aos leitores diversos frameworks de desenvolvimento que agilizam o processo de criação e manutenção de aplicativos web. Cada framework é apresentado na prática por meio do desenvolvimento de um aplicativo, de modo que o leitor pode ver sua serventia em um caso real. Neste livro, são apresentados os frameworks mais utilizados: CakePHP, Symfony, Zend Framework, CodeIgniter e Prado.”.

0 Responses to “Por que usar um framework?”


  1. No Comments

Leave a Reply