Impacto dos frameworks PHP

25
Impacto dos Frameworks PHP Conselhos e relatos de um desenvolvedor Campinas Thiago Rodrigues 15/07/2015 http://xthiago.com

Transcript of Impacto dos frameworks PHP

Page 1: Impacto dos frameworks PHP

Impacto dos Frameworks PHPConselhos e relatos de um desenvolvedor

Campinas

Thiago Rodrigues 15/07/2015http://xthiago.com

Page 2: Impacto dos frameworks PHP

Thiago RodriguesBacharel em Sistemas de Informação pela Universidade do Estado de Minas Gerais (UEMG);

Programador PHP há 10 anos;

Entusiasta do software livre;

Organizador do PHP Campinas;

Colaborador na CI&T.

Campinas

Page 3: Impacto dos frameworks PHP

Agenda

O que é framework;

O que me levou a abandonar meu "framework caseiro”;

Benefícios;

Tipos de frameworks;

Apresentação de alguns dos principais frameworks PHP;

Escolhendo o framework;

Erros comuns;

Futuro dos frameworks PHP;

Perguntas & respostas.

Campinas

Page 4: Impacto dos frameworks PHP

DEFINIÇÃO TEÓRICA:

[..]é uma abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica[..]

https://pt.wikipedia.org/wiki/Framework

O que é um framework?

Page 5: Impacto dos frameworks PHP

DEFINIÇÃO PRÁTICA: São ferramentas que podem ser usadas em diversos trabalhos

Isso é um framework!

Page 6: Impacto dos frameworks PHP

Quais tarefas são necessárias para cuidar deste jardim?

Page 7: Impacto dos frameworks PHP

ALGUMAS TAREFAS: aparar grama, podar plantas, irrigar, cavar, etc…

Quais tarefas são necessárias para cuidar deste jardim?

Page 8: Impacto dos frameworks PHP

Se o jardineiro não tivesse essas ferramentas…

COMO SERIA? produtividade; qualidade do trabalho; satisfação do cliente.

Page 9: Impacto dos frameworks PHP

Se o jardineiro não tivesse essas ferramentas…

EM SUMA: Ele gastaria tempo considerável criando ferramentas (de qualidade duvidosa) ao invés de cuidar do jardim;

Page 10: Impacto dos frameworks PHP

Reinventando a roda

HÁ ALGUNS ANOS ATRÁS NOTEI QUE: gastava mais tempo desenvolvendo/evoluindo meu "próprio framework" do que solucionando problemas de negócios;

Page 11: Impacto dos frameworks PHP

Benefícios ao adotar um framework de mercado

PRINCIPAIS:

+ funcionalidades;+ qualidade no design do código;+ documentado;+ padronizado;+ confiável/testado;+ especialistas;+ casos de uso;+ reutilização de código;- custo de manutenção;- custo de treinamento;

Page 12: Impacto dos frameworks PHP

Tipos de frameworks

Full Stack Micro CMS/aplicação específica

• Muitas funcionalidades;• Maior curva de aprendizado;• Maior gama de módulos;• Mais pesado (na config padrão);• Geralmente impõe estrutura

organizacional e componentes básicos;

• Funcionalidades básicas;• Menor curva de aprendizado;• Menor quantidade de

módulos;• Mais leve (na config padrão);• Flexível quanto a estrutura

organizacional e componentes básicos;

• Muitas funcionalidades relacionadas ao nicho específico;

• Geralmente possuem grande gama de módulos;

• Geralmente são difíceis de se adaptar para outros nichos.

Page 13: Impacto dos frameworks PHP

Alguns dos principais frameworks PHP Full Stack

Page 14: Impacto dos frameworks PHP

Alguns dos principais micro frameworks PHP

Seu framework preferido aqui

Page 15: Impacto dos frameworks PHP

Alguns dos principais CMS/aplicações específicas em PHP

Page 16: Impacto dos frameworks PHP

Qual framework escolher?

NÃO EXISTE BALA DE PRATA.

Depende de:

• Objetivos do projeto;• Requisitos;• Prazo de entrega;• Orçamento;• Habilidade do time;• Vida útil do software;

Page 17: Impacto dos frameworks PHP

Erros comuns – Saber desenvolver só com 1 framework

Quanto mais ferramentas conhecer, melhor. Lembre-se: cada uma possui sua indicação.

Page 18: Impacto dos frameworks PHP

Erros comuns – Buscar soluções somente na comunidade do framework

Esqueceu que o framework usa PHP? Tem muito projeto bom por ai.Não encontrou nada em PHP? Procure por nodejs, Linux, etc…

Page 19: Impacto dos frameworks PHP

Erros comuns – Amar o framework de forma irracional

Não preciso comentar, né?

Page 20: Impacto dos frameworks PHP

Erros comuns – Usar um framework morto ou zumbi

Será que ele ainda é relevante? Será que ainda possui uma comunidade forte? Quais são as perspectivas de longo prazo?

Page 21: Impacto dos frameworks PHP

Erros comuns – Usar um framework sem testes automatizados

A cada atualização uma nova explosão? Ele precisa ter algum tipo de teste automatizado para garantir que não hajam quebras.

Page 22: Impacto dos frameworks PHP

Erros comuns – Acoplar código da aplição ao framework

Um dia você vai querer atualizar a versão ou trocar de framework.. E ai, vai reescrever tudo?

Page 23: Impacto dos frameworks PHP

Futuro sem frameworks Full Stack?

Gerenciador de dependências, padrões/convenções da comunidade, desacoplamento dos componentes… "seu framework" em minutos.

http://semver.org/

Page 24: Impacto dos frameworks PHP

O futuro é agora…

Usam componentes Symfony:

• Drupal 8• phpBB• Laravel• Joomla!• Composer• Magento• Silex• PHPUnit• Doctrine• Behat• Sylius• + em http://symfony.com/projects

Ainda nesse ano:

Zend Framework 3 – foco em simplicidade, reusabilidade e performance.

Symfony 3 – evolução da versão 2.

PHP 7 –performance, tipos escalares, etc.

Drupal 8 – totalmente reformulado em uma abordagem mais moderna.

Page 25: Impacto dos frameworks PHP

Dúvidas?

Thiago [email protected]://xthiago.com

Contatos:

Campinasfacebook.com/groups/grupo.campinas/