Frameworks PHP e analogias

Venho palestrando sobre Frameworks PHP desde a primeira PHP Conference Brasil, em 2006. Todos os anos eu renovo a palestra porque continuo recebendo convites para palestrar sobre o assunto, que eu gosto bastante.

Na versão 2013 da palestra eu coloquei alguns novos frameworks, removi alguns e mudei um pouco a abordagem, colocando slides com pouco texto. Por isso resolvi fazer este post, para explicar alguns slides e principalmente a analogia que usei para a apresentação.

Eu dividi os frameworks em dois grandes grupos: os frameworks “full stack” e os “micro frameworks”. O primeiro grupo é formado por frameworks que nos fornecem um conjunto grande de funcionalidades como cache, validações, helpers, segurança, acesso a banco de dados, etc. Geralmente eles nos fornecem tudo que precisamos para a maioria das aplicações web. Já os micro frameworks são focados em apenas algumas funcionalidades, geralmente controle de rotas e requisições/respostas HTTP. Os micro frameworks são muito usados para construirmos sites pequenos ou aplicações bem específicas como uma API.

E para explicar cada framework eu usei uma analogia usando bandas de rock/heavy metal. Eu aprendo mais fácil quando consigo fazer uma analogia com algo do “mundo real”, por isso sempre tento usar essa técnica quando preciso ensinar algo para alguém. E como eu gosto muito de heavy metal não resisti a tentação. Vou tentar explicar o que eu pensei quando escolhi as bandas para representar os frameworks:

Sei que deixei de fora alguns frameworks mas é impossível citar todos em uma palestra de 50 min, então eu precisei escolher alguns. Escolhi os que eu acho mais relevantes e também os mais modernos para apresentar a novos usuários.

E por favor fãs de Ruby on Rails, me perdoem a brincadeira. Sou grande fã do framework e cito ele como uma das melhores coisas que surgiram no desenvolvimento Web, mas não podia perder a piada ;)

Se você não concorda com alguma das analogias ou gostaria de citar outro framework por favor fique a vontade para discutir o assunto nos comentários do post.