Artigo original por GeekDaily
Nos últimos anos o Rails ajudou muito na popularidade do Ruby explodir. Uma das grandes razões para isto é o tempo que o Rails pode poupar. Trabalhando com um framework bem definido, várias decisões de desenvolvimento são simplificadas, o que torna mais fácil e mais organizado o trabalho. Utilizando boas ferramentas como ORM, Teste de unidade, Mocking e muitas outras faz com que melhore muito a qualidade e eficiencia do desenvolvedor.
Sempre existiu a e provavelmente sempre vai existir a questão sobre qual é a melhor plataforma, mas o que eu quero mostrar para você é que esta questão é praticamente irrelevante. Independente de qual plataforma você escolha, sempre vai existir ferramentas semelhantes entre elas. Os componentes mais comuns para mim que me ajuda a produzir códigos com alta qualidade mais rápido são uma boa IDE, facilidade de executar testes de unidade e mocking, uma ORM, um framework MVC e uma boa biblioteca JavaScript.
Eu sou um desenvolvedor .Net por conta do mercado e um desenvolvedor PHP em alguns momentos por escolha. Gosto dos dois ambientes por diferentes razões. O que vou falar aqui é sobre cada um desses componentes em poucos detalhes e explicar porque eu acho que eles são importantes e então no final do artigo irei colocar uma lista de cada um desses componentes para várias linguagens (.Net, Java, PHP, Python e Ruby). Eu decidi por colocar na lista somente componentes grátis ou de código aberto porque eles são mais fáceis de alguém testar e todos nós gostamos de economizar nosso suado dinheiro.
O Ambiente de Desenvolvimento Integrado (IDE)
Para mim este é o mais importante. Certamente você pode programar no Notepad e compilar via linha de comando, mas provavelmente isto será mais trabalhoso e você terá que ter uma disciplina muito grande para manter tudo organizado. Com uma boa IDE você tem uma gerência do seu projeto muito fácil (todos os seus arquivos são agrupados juntos), reconhecimento de sintaxe, compilação (se disponível) e o auto completar.
As IDEs estão constantemente ficando mais sofisticadas e os plugins permitem várias outras funcionalidades serem incorporadas, como SVN.
A minha IDE favorita é o Visual Studio. Existem outros bons programas como o NetBeans e Ecplipse, mas por algum motivo eu tenho uma opinião parcial a favor do Visual Studio.
Teste de Unidade e Mocking
Estes dois itens andam de mãos dadas. Nenhuma aplicação está completa sem um teste bem feito. Existem várias pessoas em ambos os lados da cerca quando o assunto é teste. Eu sei, eu fui sético muito tempo. Apenas me sentia estranho perder tempo escrevendo código que iria testar o código que eu mesmo estava escrevendo. Finalmente eu decidi dar o braço a torcer e isto mudou a forma com que eu programava. Quando você está focando em como testar o seu código você simplesmente escreve um código mais claro e é legal saber rapidamente se o que você mudou estraga alguma coisa.
Mapeamento Objeto-Relacional (ORM)
Se você alguma vez já usou um ORM saberá que ele pode lhe poupar muito tempo. Uma das resistencias que tive antes de mudar para um ORM foi a performance. Eu queria saber se usando um ORM a minha aplicação seria mais lenta, mas eu estava fazendo a pergunta errada. Eu deveria estar perguntando se a pequena perda de performance pagaria o grande tempo poupado. A resposta para isto definitivamente é SIM! Raramente em uma aplicação o ORM será a fonte da má performance e se for, ele poderá ser refatorado para melhorar ou você poderá usar códigos SQL se for necessário.
Tudo se resume em não se preocupar em performance antes de realmente existir. Sim é importante manter a performance em mente, mas usando um ORM não deverá ser a causa da sua preocupação.
MVC Framework
o MVC ficou bastante popular em parte graças ao Rails e é revolução para os desenvolvedores web. A chave para a sua popularidade é que ele separa os diferentes conceitos da sua aplicação em partes separadas. Esta separação permite facilitar o teste, melhorar o design e faz a manutenção da sua aplicação ser mais fácil.
Biblioteca JavaScript
Parece que existe uma biblioteca JavaScript para qualquer coisa hoje em dia. Eu me lembro que a não muito tempo não existia tantas e o uso do JavaScript não tinha explodido. Uma biblioteca JavaScript é importante para a sua produtividade. A biblioteca não deve compensar a falta de conhecimento em JavaScript, você deve ter um conhecimento sólido, mas deve ter um bom compreendimento dela. A biblioteca irá tomar conta da compatibilidade entre navegadores e as operações de nível mais baixo, deixando você ter foco no que precisa ser feito.
ASP.Net
IDE: Visual Studio 2008 Express
Teste de Unidade: NUnit
Mocking: Rhino Mocks
ORM: NHibernate
MVC: ASP.NET MVC
JavaScript: jQuery
Java
IDE: NetBeans
Teste de Unidade: JUnit
Mocking: EasyMock
ORM: Hibernate
MVC: Struts
JavaScript: jQuery
PHP
IDE: PHPEclipse
Teste de Unidade: PHPUnit
Mocking: PHPMock
ORM: Propel
MVC: Symfony
JavaScript: jQuery
Python
IDE: PyDev
Teste de Unidade: PyUnit
Mocking: PythonMock
ORM: SQLObject
MVC: Django
JavaScript: jQuery
Ruby
IDE: RadRails
Teste de Unidade: Test::Unit
Mocking: Mocha
ORM: Sequel
MVC: Rails
JavaScript: jQuery
Nenhum comentário:
Postar um comentário