Fuelphp – Uma alternativa ao CodeIgniter e Laravel?

Recentemente, passei semanas estudando vários php frameworks, queria entender melhor as diferenças entre eles e qual o motivo deles serem tão importantes além do óbvio, que é facilitar nosso dia a dia como programadores. Não espere uma definição de qual é  o melhor nesse artigo pois para cada projeto um será melhor.

Gráfico de tendências de  Frameworks php - maio/2014

Eu li muito sobre Laravel Framework, CakePHP, FuelPHP, CodeIgniter, Symfony, Zend Framework, Slim Framework, Kohana e alguns outros, claro que alguns eu já conhecia bastante por já trabalhar com eles há anos, porém a fim de comparar e analisar cada vantagem tive que pesquisar e estudar mais a fundo. Um dos frameworks que mais usei foi o ainda popular CodeIgniter, e lembre-se não estou falando que seja o melhor, porém caso esteja na dúvida do que estou a falar de uma olhada nesse gráfico do Google dos frameworks php.

Apesar de ultimamente termos visto um grande falatório em torno do Laravel 4, ele pode não ser o que realmente se precisa para determinados projetos, apesar de ter muitas coisas que facilitam o trabalho. Uma coisa que penso muito sobre ele é o fato de ter criado uma metologia de agregar de forma mais automática o que já existe em outros frameworks, pois por exemplo ele usa muitas bibliotecas do Symfony o que é muito legal, porém ruim para que não deseja ou não pode usar composer em seu servidor para facilitar o trabalho. Não vou entrar em problemas com relação ao composer o que li bastante, porém se quiser saber mais pergunte nos comentários que passo com muito amor os links, hehehe.

O framework CodeIgniter por sua vez, tem perdido muito de seus usuários por conta do abandono da EllisLab (a criada do mesmo) pois argumentaram não haver mais necessidade visto que as diretivas do Expression Engine, já não são mais as mesmas do CodeIgniter. Pois é, agora que já ganham dinheiro com um outro sistema que começou com o CodeIgniter preferem deixar de lado. Essa é uma infelicidade, porém não tem muito o que fazer mesmo. Apesar de gostar muito das metologia do CodeIgniter graças a Deus não é o único framework php no mundo.

Temos o Zend Framework, Symfony e CakePHP que todos os programadores já conhecem então sabe as vantagens que eles possuem, porém vai da sua necessidade e tempo para programar também pois o Symfony por exemplo usa o Doctrine como ORM para gerenciar o banco de dados o que ajuda e MUITO mesmo, sem falar que o Doctrine é muito conhecido e tem uma grande comunidade em torno dele, no entanto, o CakePHP já facilita praticamente a aplicação toda e foca em você programar o menos possível acho ele ótimo para DBAs e quem tá no desespero pra entregar o projeto 1 dias depois de solicitado.

Ahhhh, Slim Framework, ele é maravilhoso, ultra simples pequeno e rápido, tem somente o básico mesmo, não tem gerenciador de uploads, nem gerenciador de imagem e muito menos qualquer manipulação de banco de dados. Tenho adaptado ele aos pequenos projetos que tenho feito pois é praticamente um router php com funcionalidades adicionais, e apesar de ter sido feito pelo CodeGuy (Josh Lockhart) que “criou” as PSR (padronização dos códigos php) ele não deixou o Slim preso aos padrões.

Pois bem, você não lei tudo isso pra ir embora, claro que tinha que falar do FuelPHP, pois apesar de muitos desenvolvedores estarem migrando do CodeIgniter para o Laravel, alguns tem migrado para o FuelPHP que oferece praticamente tudo que tinha no CodeIgniter e até os plugins(libraries e classes adicionais) que se poderia instalar como a funcionalidade de HMVC, ORM(apesar de gostar muito do que eles chamavam de Active Record, que tava mais para um Query Builder), melhor gerenciamento dos Formulários e vários outros itens. No entanto, eles se propoem a oferecer o melhor da funcionalidade que cada framework dispõe e sinceramente eu considero que ele faz muito bem se te deixar preso a nada, você usa exatamente o que quer e isso temos que agradecer ao PHP por implementar o namespaces, o que melhorou muito para os frameworks. Eu realmente tenho que assumir que no inicio fiquei muito “conservador” em usar essas novas funcionalidades do php (como namespaces, closures, array() = [] e outros), mas um dia temos que nos adaptar e evoluir pra melhor claro.

Apesar de ter achado o FuelPHP um ótimo framework pra se usar, e até de se aproveitar alguns de seus itens, talvez você queira pensar um pouco antes, pois quando estava lendo as maravilhas de todos os frameworks que comentei nesse post lembrei que o mais importante e uma ferramenta é a comunidade em torno do mesmo e infelizmente ele ainda não é tão conhecido quanto o CodeIgniter ou Laravel, porém ainda é novato e se preocupa com muitas coisas da galera da “antiga geração” do PHP sem deixar de usar as novas funcionalidades até mesmo o Composer. Talvez o Laravel seja o mais falado ultimamente pois ele já está preparado para uma nova geração usando até mesmo funcionalidades recém implementadas no PHP e como sabemos muitos servidores demoram para atualizar suas versões do PHP.

Enfim, após horas nesse post, finalmente eu vou chegar com alguma conclusão claro, porém como falei inicio não tenho como definir qual framework é melhor o que sugiro é que avalie sua necessidade do que realmente precisa para trabalhar, nos meus pequenos clientes devo usar mesmo o Slim Framework pois tem sido o melhor, e quando é um sistema maior uso o que for melhor no momento, senão uso o Slim Framework + NotORM (que pretendo falar sobre num futuro próximo), acredito que temos que aprender a usar um framework para cada projeto nunca esquecendo de analisar a necessidade do cliente, apesar de acreditar que no futuro tudo será processado em cloud e facilitado de alguma forma sem usar muito processamento do mesmo. Melhor dica que posso dar nesse artigo não use um framework ou qualquer outra ferramente só pelo fato de que te falaram que era bom ou por todos estarem falando dele, muitos falam de sobre ser monitorado online e nem por isso deixo de usar internet, eu sei exemplo ruim, sempre fui ruim com exemplos.

Concluindo novamente, eu espero que o FuelPHP fique popular e tenha um grande crescimento da comunidade talvez eu até promova de alguma forma, tenho pensando em traduzir as documentações e se quero que cresça tenho que fazer minha parte. Então procure o melhor para você pois se quiser pode usar somente php também e vai funcionar 🙂

Alguns links que pode te ajudar:

Comparativo entre FuelPHP x Laravel: http://vschart.com/compare/fuelphp/vs/laravel

Composer problema que consome 1Gb de memória: https://github.com/composer/composer/issues/1898

Canal do Tiago Davi com alguns videos tutoriais do FuelPHP: https://www.youtube.com/user/3visoes/search?query=fuelphp

Gráfico compativo com os frameworks PHP mais usados: https://www.google.com/trends/explore?q=codeigniter#q=laravel,%20codeigniter, cakePHP, symfony, zend&cmpt=q

Boa sorte e bons trabalhos.

Se gostou do artigo compartilha ai e comente qual o framework que você mais usa?

Abraço forte. 😀