goncin@wordpress.com:~$ _

Linux, programação e toda sorte de nerdices

Por que usar um “framework”

Todo desenvolvedor, não importa qual a linguagem em que trabalhe, certamente há de ter feito a si mesmo, pelo menos uma vez, a seguinte pergunta: devo ou não utilizar um framework? Ouso dizer que a resposta é SIM. E passo a detalhar as razões da minha assertiva.

Imagine, nos tempos pré-históricos, como nossos remotos ancestrais se viravam para sobreviver. Tinham que inventar suas próprias ferramentas, arranjar o que vestir. Até fazer fogo era algo extremamente trabalhoso. Felizmente, não vivemos mais naquela época. Mas alguns desenvolvedores ainda insistem em viver na Pré-História da programação, quando precisavam fazer quase tudo a partir do zero e “na unha”. Para defender sua postura em não adotar um framework, costumam lançar a questão “E se esse troço der pau, quem vai consertar?”.

Esse tipo de desenvolvedor é aquele que se apega de tal modo a seu “jeito de fazer as coisas”, ao ponto que todo código não escrito por ele mesmo lhe parece esotérico ou produto de seres alienígenas. Aqui vale um alerta: se você olha para o código-fonte de um framework e não entende nada do que está escrito ali, volte para casa zero e comece a estudar sua linguagem novamente!

O programador troglodita crê piamente que o valor do seu trabalho está no (mau) código que escreve, e não na solução que oferece para o problema do cliente. É aquele que foge o quanto pode das linguagens interpretadas, porque o aplicativo precisa do código-fonte para ser executado e “todo mundo pode ver e se apossar do que eu fiz”. É aquele cara que, nos idos do glorioso Clipper (uma linguagem semicompilada), morria de medo do Valkyrie, um utilitário capaz de traduzir o bytecode executável de volta a código-fonte.

Os melhores frameworks disponíveis na atualidade baseiam-se em padrões de desenvolvimento, giram em torno de uma grande e ativa comunidade e suas versões são testadas com rigor antes de serem disponibilizadas ao grande público. Tudo isso se traduz em qualidade de software, o que, certamente, as soluções do nosso companheiro troglodita não tem.

Adotar um framework significa, num primeiro momento, renúncia. Você abrirá mão do seu jeito de fazer as coisas para endossar o dele. Na maior parte das vezes, isso significa parar de contemplar o próprio umbigo e olhar ao redor, onde mais gente faz mais coisas de forma semelhante, e, portanto, tem problemas similares. Todos começam a falar a mesma língua, e fica mais fácil pedir ajuda e ajudar.

Muitos tomam o tempo que se gasta no aprendizado de um framework como perdido. Eu não veria desta forma. Antes, eu consideraria essas longas horas como auto-instrução e aperfeiçoamento profissional. O resultado, por certo, não aparecerá logo de início (para desespero dos apressados), mas terá reflexos num futuro melhor.

Obviamente, de nada adianta tentar aprender a trabalhar com um framework a toque de caixa para aplicá-lo naquele projeto que era para ontem. Aconselho que essa atividade de aprendizado se dê em paralelo ao desenvolvimento rotineiro, e, a menos que se tenha tempo disponível para erros e tentativas, não utilizar o framework em um projeto sério enquanto não entender seu funcionamento e se sentir minimamente confortável com ele.

Em suma, creio que a grande diferença entre utilizar ou não um framework é a mesma entre ter uma caixa de ferramentas de alta qualidade prontas para o uso, e já partir para o trabalho, ou perder tempo (re) inventando a roda, frequentemente de modo improvisado.

E você? Já escolheu seu framework preferido?

Anúncios

12 Respostas para “Por que usar um “framework”

  1. Waldir Borba Junior 19/08/2010 às 22\1017

    Goncin, muito bem esplanativo seu texto. Faz um tempo já escrevi algo parecido sobre o que voce colocou aqui – http://augpinhao.com.br/?p=155

    Hoje em dia se a pessoa esta pretendendo ser um bom profissional em qualquer tipo de empresa, é de suma importância o domínio de um ou mais Frameworks.

    Faço minha as suas palavras e complementaria com um profissional sem um Framework, não é um profissional completo, pois vai estar gastando muito mais horas, para fazer a mesma coisa que com um framework levaria minutos.

    Parabéns.

    • goncin 19/08/2010 às 22\1025

      Realmente, pensamos de forma semelhante. Foi bom conhecer o termo Inversão de Controle, o qual eu não conhecia, embora o conceito seja bastante familiar.

      Parabéns, e obrigado pela visita e pelo comentário! 😀

  2. Pingback: Tweets that mention Por que usar um “framework” « goncin@wordpress.com:~$ _ -- Topsy.com

  3. Davi Ferreira 20/08/2010 às 10\1051

    Acho frameworks essenciais e concordo com você que já existem várias opções maduras, com comunidades ativas.

    Só tenho medo que as pessoas aprendam a “programar em Cake” e não em PHP, por exemplo. Aí quando precisa fazer um simples formulário de cadastro, vai utilizar os 10MB do Cake pra isso. Você acaba ficando viciado. O mesmo acontece com jQuery x Javascript.

  4. Fernando Noronha 20/08/2010 às 11\1113

    Atualmente uso o kohanaphp (1,79 MB), rapido e sem muita configuração é praticamente descompactar e usar.

    Agora só falta um framework flex que eu me sinta confortável…

    Já ia esquecendo… hauuaha

    Muito bom o post.

  5. Jonnas Fonini 20/08/2010 às 11\1135

    Ótimo post. E concordo com o que o colega Davi salientou, principalmente na parte do jQuery. Infelizmente grande parte dos iniciantes que usam jQuery praticamente não tem conhecimento em JavaScript, o que pode ser um problema no momento em que o jQuery não atender a uma necessidade específica.
    Parabéns!

  6. Marcio Ferreira 20/08/2010 às 18\0634

    Claro !

    Normalmente as pessoas que discordam de frameworks se pretegem dizendo que só confiam no código que geram, mas prefiro acreditar que estão com preguiça de aprender mais.

    Frameworks e repositórios devem existir em um projeto de software moderno.

  7. Bill 30/08/2010 às 22\1021

    Mto bom o post.

    Isso realmente é verdade…tanto este medo de “experimentar” o novo, como as vezes até a preguiça de ter q aprender algo, acabam fazendo as pessoas criticarem frameworks sem nem ao menos terem feito alguns testes.

    Fora q vejo muitos “sobrinhos” q acham q frameworks são como CMS, algo pronto q basta rodar o install q está lá, pronto pra uso. Qdo vêem q devem aprender algo, desenvolver, fogem.

    Gde abraço!

  8. Elbis 10/01/2011 às 18\0629

    Sim, já escolhi: dot net
    mas tem um problema (kkkk):
    fiz um programinha simples, básico, usando C#, para gerenciar um banco de dados SQLite. O programa ficou com 112 KB. … Mas tem que baixar e instalar um framework .NET 4 que tem 48 MB. Putz, 48 Mega para rodar 100 k? Custava o C# compilar com o código necessário embutido no próprio programa? Aumentaria o tamanho dele para uns 500KB. Nada mal para um programinha SGBD.
    Em parte compreendo a importância dos frameworks, mas a forma de aplicá-los está levando a programação para uma direção nada legal.
    Além disso, reinventar a roda é para quem está começando na programação. Quem já tem experiência já tem suas rodas inventadas e aperfeiçoadas.
    Ter uma interface entre o usuário e o hardware (sistema operacional) é muito bom, mas ter mais interfaces é bobagem.
    Facilita por um lado, mas exige muito de outro.
    Um abraço a todos.

  9. Pingback: Tweets that mention Por que usar um “framework” « goncin@wordpress.com:~$ _ -- Topsy.com

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: