Por quê usar Symfony?

E aeh?

 O Symfony http://www.symfony-project.org figura entre os melhores Frameworks baseados no padrão MVC em uso atualmente. Voltado principalmente para o desenvolvimento de aplicações e sites que exigem um alto grau de customização e manutenção. Possui uma ferramenta em linha de comando para se criar desde o projeto em si até a geração de novos módulos. Configurável até o talo, o sistema de arquivos em YAML http://yaml.org permite que o desenvolvedor defina e edite projetos, aplicações, módulos, views, camada de objetos e conexões (ainda acho que esqueci alguma coisa).

Impressionante… sempre depois de definirmos as tabelas e relacionamentos de um projeto, no decorrer do desenvolvimento surgem algumas mudanças em alguma coluna ou outras tabelas são criadas. Então temos que sair por aí abrindo classes e editando as classes da aplicação né mesmo? Não. No symfony basta editar o .yml referente ao modelo e executar uma linha ( $ php symfony doctrine:build –all –and-load)no shell e pronto! Suas classes e tabelas no banco de dados são modificadas no melhor estilo Padrinhos Mágicos (ah não me diga! Você já viu isso em outro lugar??).

Antes de sair por aí criando features do zero, uma farejada no repositório de Plugins ( http://www.symfony-project.org/plugins/ ) pode salvar seus fins-de-semana.

Outro grande ponto a se considerar no Symfony é a sua documentação, comunidade e quantidade de livros disponíveis para amenizar a curva de aprendizado, visto que este framework é enterprise-ready, ou seja, traz consigo uma estrutura pronta para o desenvolvimento corporativo, com ambiente s de dev, test, staging e production, testes unitários e funcionais, debug e emprego de muitos Design Patterns (ORM, Data Mapper, Factory, DAL etc).

Tu gosta de ORM? Symfony vem com duas api’s embutidas, Doctrine ( www.doctrine-project.org ) e Propel ( propel.phpdb.org ), artigo interessante: http://www.doctrine-project.org/blog/php-benchmarking-mythbusters.

Resumindo, Symfony cabe em muitos cenários, mas ao meu ver o seu uso se aplica principalmente na construção de projetos de médio/grande porte e em equipe com tudo o que tem direito.

Num futuro próximo postarei artigos mais técnicos de instalação multiplataforma e uso desta poderosa ferramenta escrita com o glorioso PHP.

Eu sou o Adriano Alves e você pode me contatar através de um pitaco deixado aqui, por email ( tohdione@yahoo.com.br ) ou tuitando http://twitter.com/tohdi

Related posts:

  1. Porque você deve usar um framework!

3 Responses to “Por quê usar Symfony?”

  1. Ismael Vacco says:

    Nada contra o symfony, mas entre escolher um framework, utilizaria Zend Framework. O baixo acoplamento entre módulos, boa documentação, nada de plugins mágicos que devem ser instalados via linha de comando e sim interfaces para a criação de soluções ainda não existentes no framework. Já trabalhei com Sympony, não tive problemas com ele, mas o Zend Framework é muito mais escalável, robusto e produtivo.

  2. Olá Vacco!
    Eu também já trabalhei com Symfony, hoje uso muito ZF e meu próprio fw.
    O grande macete é conseguir identificar o “caráter” de cada projeto/site/aplicação e usar a sua experiência com frameworks e com a linguagem em si para decidir o que é melhor para a empreitada. Usar um dos FW’s ou até mesmo a linguagem em si estruturada de maneira tal. Você verá que o Cake pode ser melhor que o ZF em alguns casos, assim como o YII pode se dar bem frente ao CodeIgniter num cenário específico e assim por diante. Esse é o espírito.

  3. Daniel Almeida says:

    Você pelo menos já viram a versão release 2.0(http://symfony-reloaded.org/) do Symfony ou pelo menos a 1.4?? O Symfony é muito mais produtivo e escalável, a curva de aprendizado dele é a melhor. E o doctrine é outra maravilha da natureza, também pode ser usado no ZF. Eu trabalho JBOSS SEAM do JAVA e nunca vi um DEBUG tão completo como o do SYMFONY. A única coisa negativa do Symfony é a aderência, o ZF tem muito mais divulgação e profissionais. Revejam seus conceitos.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Get Adobe Flash playerPlugin by wpburn.com wordpress themes

Warning: Invalid argument supplied for foreach() in /home/phprocks/phprocks.com.br/wp-content/plugins/socialize-it/inc/SocializeIt.php on line 65