Archive for the ‘Framework’ Category

Apresentando o USVN

Wednesday, May 6th, 2009

Nessa nossa vida de desenvolvedor, muitas vezes ficamos responsáveis por tarefas que, a princípio, não nos cabem. Seja porque a empresa em que trabalhamos é pequena ou desorganizada, porque somos freelancers, ou porque estamos trabalhando em projetos pessoais.

Uma dessas tarefas que sempre me perseguiu é a administração de repositórios no Subversion. Tudo bem que o svnadmin não é uma ferramenta tão difícil assim de utilizar, mas é bem chato ficar olhando o help sempre que precisa de um repositório novo.

Há algum tempo eu conheci uma ferramenta que facilitou de mais a minha vida: USVN (http://usvn.info/) . Com ela é possível criar e gerenciar repositórios, grupos, usuários e permissão de acesso aos repositórios. Enfim, praticamente tudo o que você precisa para gerenciar seus repositórios no Subversion o USVN tem, com o diferencial de ser com uma GUI amigável ;)

O USVN é escrito em PHP e utiliza o Zend Framework. Pelo que já pude ver no código do projeto, é bem fácil adicionar uma funcionalidade nova caso não exista dentro da ferramenta. E fazer uma extensão do sistema ainda pode te trazer outros benefícios.

Uma coisa que me agradou bastante no projeto é a preocupação da equipe com a qualidade do código. Isso faz com que, ao entrar para ajudar no desenvolvimento do projeto, você deve aprender a trabalhar com algumas ferramentas que aumentam bastante a qualidade do seu software e até a sua produtividade em algumas tarefas repetitivas (testes de unidade, automação de tarefas com o Phing, etc). Uma ótima oportunidade de aprender na prática a trabalhar com algumas ferramentas das quais talvez você só tenha ouvido falar.

Vale muito a pena tanto a utilização da ferramenta quanto a contribuição com o projeto. Fica a dica!

Frameworks

Saturday, March 3rd, 2007

O mundo dos programadores é cercado de palavrinhas estranhas desde o começo da carreira. Para programadores autodidatas (como eu), muitas vezes, entender estas palavrinhas é uma tarefa um tanto quanto difícil, principalmente quando não se acha uma definição para elas no seu dicionário, que nunca o havia deixado na mão (até então) :p

Ultimamente tem-se falado muito em utilização de frameworks. Frameworks para desenvolvimento em PHP, em javascript e para ambos ao mesmo tempo; frameworks baseados no padrão MVC, frameworks com ORM (Object Relational Mapping – essa faz parte de um outro mundo obscuro na programação: as siglas), Active Record, etc.

Mas afinal de contas, o que diabos é um framework?

Joãozinho: Hum, ham, é um conjunto de classes que resolvem cada uma um problema específico, evitando assim que o programador escreva muitos códigos?

Aeh Joãozinho, finalmente algo que presta hein!

Mas hoje em dia, um framework tornou-se mais do que uma série de classes que nos ajudam a resolver um problema específico. Um framework hoje, mais do que ajudar a resolver problemas, dita uma forma específica, padronizada de resolvê-los.

Assim o programador pode se desligar das decisões de como uma determinada tarefa será aplicada, como realizar o acesso aos dados, de que forma exibir estes dados, etc. Tudo o que o programador precisa saber é como resolver o seu problema. O resto, é por conta do framework.

Nos dias atuais, onde o tempo controla a vida das pessoas e das organizações, qualquer que seja a ajuda para poupar tempo será bem-vinda. Não poderia ser diferente com os frameworks. Desenvolvedores de todas as partes do mundo discutem diariamente sobre o uso de frameworks, qual usar, por quê usar, por quê não, quando usar, etc. E estas discussões estão muitas vezes pautadas nas reuniões para implementação de projetos dentro das empresas também.

As organizações precisam poupar o máximo de tempo, mesmo que para isso, as vezes, seja necessário se perder um pouco do desempenho dos sistemas que se desenvolve. E é essa a tarefa de um bom framework: poupar o máximo de tempo possível de um programador.

Mas nem sempre os frameworks irão realizar com sucesso a sua árdua tarefa, principalmente se forem mal escolhidos para determinado projeto. É necessário saber com precisão o que será necessário desenvolver para saber a quem/que recorrer. Além disso é necessário saber também as peculiaridades de cada framework disponível no mercado (ou pelo menos os mais famosos) para conseguir prever os problemas oriundos da adoção deste framework, conseguindo assim subsídios suficientes para a escolha do melhor.

Para nós, programadores PHP, há uma infinidade de frameworks. Eu, particularmente, recomendo os baseados no Ruby on Rails, framework para Ruby que “revolucionou” a forma como se programa para a web. O que mais me agrada é o CakePHP, mas temos ainda o Symphony, o Zend Framework, o PHP on TRAX, entre outros facilmente encontráveis pelo google.

Para você que precisa decidir qual deles escolher, este link pode ser de grande ajuda: http://www.phpit.net/article/ten-different-php-frameworks/.

Ele possui uma tabela comparativa com as características de alguns frameworks para PHP disponíveis no mercado.

Até a próxima!