Laravel

Laravel Framework. Tudo que você precisa saber

Por em

Se você trabalhar ou pretende trabalhar com PHP, provavelmente você já ouviu falar no framework mais popular da atualidade: O Laravel.

O Laravel além de ser um framework extremamente poderoso escrito em PHP, ele possui recursos prontos que toda aplicação precisa.

Recursos como autenticação, autorização, gerenciamento de templates, assets, ORM, etc.

Um dos pontos super interessantes do Laravel, é que apesar do framework ser grande com muito código, para o usuário final ele é extremamente clean e possui um código limpo. Totalmente pronto para ser utilizado.

As versões do Framework Laravel

A primeira versão lançada do Laravel foi em 2011 e após isso o framework PHP não parou mais de ser atualizado. Atualmente o Laravel encontra-se na versão 5.7 e possui um grau enorme de maturidade.

Em minha opinião, a versão 5 do framework Laravel foi um grande divisor de águas. Código mais limpo, framework ainda mais elegante e fácil de utilizar e uma gama de recursos.

Um ponto importante para ser levado em consideração quando você for escolher o framework PHP Laravel é a utilização de uma versão LTS (Long term Support). É isso, mesmo, O Laravel framework possui versões que garante um suporte mais longo dando mais tranquilidade aos usuários que precisam utilizar o framework para aplicações mais críticas.

Criamos um infográfico mostrando a evolução do framework Laravel passando por todas as suas versões, principais características e recursos que foram adotados com o passar do tempo.

Infográfico sobre Laravel

Taylor Otwell, o criador do framework Laravel

Quando o framework Laravel foi criado, Taylor Otwell ainda era pouco conhecido na comunidade PHP. Seu background inicial era em .Net, porém, ao perceber a grande facilidade de trabalhar com PHP, por volta de 2010 ele resolveu partir para a utilização de frameworks. O framework escolhido por ele naquele momento foi o CodeIgniter. O mais interessante de tudo, é que ele chegou a ter contribuições significativas para com o CodeIgniter, como o primeiro container de gerenciamento de injeção de dependências que utilizava reflection. Essa foi a sua primeira contribuição para o mundo open source.

Uma ótima forma de acompanhar de perto o desenvolvimento do framework é através do twitter do próprio Taylor. Segue o link.

De onde veio o nome Laravel?

Acredito que muita gente já foi tentar buscar um significado para a palavra Laravel em diversos idiomas. Segundo Taylor Otwell, o nome Laravel foi totalmente inventado, não tendo absolutamente nenhum significado. Ele buscava uma palavra única que fosse “cool”. E daí veio o nome do framework mais popular da história atual do PHP.

Dedicação integral ao framework e algumas controvérsias

Atualmente, como já era de se esperar, Taylor Otwell, possui dedicação exclusiva ao framework. O Laravel é reflexo de Taylor assim como Taylor é o grande reflexo do Laravel.

Muita gente durante a evolução do framework (e até mesmo hoje), acaba “criticando” o framework pelo fato dele ter a “cara do dono”. Ou seja, como se sem Taylor, o projeto Laravel fosse acabar. Isso acaba gerando certa insegurança na utilização do framework para projetos “enterprise” e governamentais.

Na prática isso já foi deixado de lado. Muitas grandes empresas já adotaram o Laravel como seu principal framework PHP. Além disso, de acordo com um de nossos clientes na área do Governo Brasileiro, o Laravel já é um framework homologado, logo, não há mais dificuldades ou preconceito para sua adoção em projetos de grande impacto nos sistemas governamentais.

Entrevista com Taylor Otwell

Já faz um bom tempo que gravei uma entrevista com o Taylor. Estou devendo uma nova para vocês. Enquanto ela não vem, veja o vídeo da entrevista realizada com ele em 2015.

Estatísticas do Laravel

De acordo com a BuildWith até a data de publicação desse artigo, os números do Laravel são realmente expressivos:

  • Há 1,077,555 sites que podem ser encontrados na Internet utilizando Laravel
  • 103,177 estão ainda online
  • O país que atualmente mais utiliza o Laravel framework de forma disparada é os EUA e em segundo lugar o Brasil.
  • O repositório principal do Laravel possui mais 48k de stars e quase 15k forks
  • O Laravel é o TOP 1 projeto em PHP no Github na data de publicação desse artigo.

De acordo com o Google Trends, a evolução das buscas por Laravel no mundo em relação aos outros frameworks PHP como: Symfony, CodeIgniter, CakePHP e Zend Framework são extremamente discrepantes. Veja por você mesmo:

Sites feitos com Laravel

Ainda de acordo com o Report da BuildWith, há diversos sites de grande expressão e renome que foram desenvolvidos em Laravel. Segue a lista de algumas empresas que utilizam o framework no Brasil.

  • Cielo
  • Catho
  • BTG Pactual
  • Leroy Merlin
  • CI (Companhia do Intercâmbio)
  • Senac

Documentação Laravel

Screenshot Documentação Laravel

Um dos carro chefe do Laravel, que com certeza acabou influenciando grande parte dos usuários do framework a adotá-lo, é sua vasta documentação.

Realmente a documentação do Laravel é fantástica e cobre os recursos do framework de A-Z.

A documentação do Laravel está estruturada desde sua história e instalação, até seus recursos avançados.

Na documentação você também pode encontrar a lista de todas as versões do framework e seu tempo de suporte. Além disso, você pode encontrar o guia de upgrade do framework versão a versão, contendo todos os detalhes. Essa é uma grande iniciativa para ajudar os usuários a manterem o framework atualizado, uma vez que os releases do Laravel são extremamente frequentes.

Link para a documentação.

Ecossistema e serviços ao redor do framework

Apesar do Laravel ser um framework open source, isso não impossibilitou que o Taylor criasse serviços ao redor do framework.

Laravel Forge

Laravel Forge

Todos sabemos o quão chato, difícil e crítico é ter que ficar mantendo servidores e diversos domínios em cloud servers. Mesmo que você já possua todos os conhecimentos, isso acaba sempre consumindo muito tempo.

Foi pensando nisso que o Laravel Forge foi criado. Através desse serviço, você pode provisionar servidores da Digital Ocean, Amazon AWS, Linode, etc. De forma totalmente automática, o Forge faz todo o gerenciamento de domínios, banco de dados e até mesmo certificados SSL.

Com poucos cliques você pode ter seu projeto PHP (não precisa necessariamente ser Laravel), pronto para rodar de forma, simples, rápida e segura.

Lembrando que o Laravel Forge é um serviço pago.

Link para o Laravel Forge

Envoyer

Laravel Envoyer

Trabalhar com processos de deploy automatizados com PHP garantindo zero downtime não é tarefa simples. Há muito a ser levado a em consideração, desde o processo de deployment em si, até mesmo gerenciamento de saúde das instâncias, etc.

O Envoyer veio para suprir exatamente essa demanda, a partir de 10$/mês, você pode ter todo esse gerenciamento de todo seu processo de deploy em múltiplas instâncias utilizando esse serviço.

Link para o Envoyer

Spark

Laravel Spark

Todos sabemos o quão trabalhoso pode ser desenvolver todo um sistema de cobrança, recorrência, gerenciamento de times, billing, autenticação de 2 fatores, upgrade e gerenciamento de planos, etc.

O Laravel Spark, que também não é um serviço gratuito veio para ajudar os desenvolvedores nessa tarefa. Com esse projeto, todos essa implementação já está pronta de forma totalmente integrada com o framework PHP Laravel.

Link para o Spark

Laravel Horizon

Laravel Horizon

O Horizon é um projeto extremamente importante para aqueles que precisam fazer gerenciamento de filas de forma totalmente efetiva. Através do Horizon, você tem acesso a um Dashboard para o monitoramento de suas filas, jobs, e todas as métricas referentes aos seus serviços.

A melhor forma de definir o Laravel Horizon é através de seu slogan “Queues, With X-Ray Vision”

Link para o Horizon

Laravel Nova

Laravel Lumen

O Laravel Nova é um dos projetos (pagos) mais ousados e promissores desse framework PHP.

Através do Nova, você tem a possibilidade de criar painéis administrativos de forma praticamente automática. Com apenas algumas configurações, CRUDS, filtros, autenticação e autorização já estão totalmente prontos para serem utilizados.

Não podemos deixar de citar que o Laravel Nova, utiliza como frontend o famoso Vue.js. Logo, se você queria performance em seu painel de controle administrativo, o Vue.js vai te ajudar bastante.

Link para o Laravel Nova

Lumen micro-framework

Laravel Lumen

Muitas vezes nossos projetos começam bem pequenos e não precisamos de um framework tão grande e robusto como o Laravel logo de início. Nesse caso, o Lumen é um projeto que pode te ajudar muito com essa tarefa.

O Lumen é um micro-framework PHP baseado totalmente no Laravel e é EXTREMAMENTE rápido e enxuto. O mais interessante de tudo é que você é totalmente capaz de migrar, com facilidade, seu projeto Lumen para o Laravel conforme você tenha a necessidade de crescimento.

Link para o Lumen

Laracon e Laraconf

Pelo fato da grande popularidade do framework, iniciativas como a Laracon foram criadas com o objetivo de unir ainda mais a comunidade, bem como trocar experiências sobre Laravel e tecnologias correlatas. Logo, na Laracon, não se fala apenas em Laravel.

A Laracon se espalhou por todo mundo possuindo anualmente eventos nos Estados Unidos, Europa e Austrália.

Para aqueles que não podem comparecer nesses ventos, a Laracon também possui uma versão online. Logo, você não tem desculpas para não participar.

Laraconf Brasil

Laraconf Brasil

Para você que é Brasileiro, a comunidade Laravel realiza anualmente a fomosa Laraconf, onde os membros mais ativos da comunidade tem a oportunidade de compartilhar seus conhecimentos, além daquele networking que todo mundo precisa fazer.

A School of Net tem sempre o prazer de apoiar e patrocinar esse evento.

Link para a Laraconf Brasil

Certificação Laravel

Certificado Laravel

O Laravel já é um framework PHP mais que reconhecido no mercado, logo, um processo online de certificação foi criado a fim de facilitar aos empregadores na seleção de profissionais.

A certificação Laravel não é barata. Ela custa €249.00.

O que cai na prova de certificação Laravel?

A certificação Laravel não fica presa apenas no framework em si. Entender bem de PHP, Composer, autoloading, etc vão te ajudar muito na prova.

Veja alguns tópicos que fazem parte do exame:

  • Arquitetura do Laravel
  • Rotas
  • Middlewares
  • Controllers
  • Requests
  • Responses
  • Validations
  • Logging
  • Security
  • Artisan
  • Caching
  • Collections

Para ver a lista completa dos itens que caem no exame. Clique aqui.

Dinâmica da prova de certificação

Você deverá acessar o site do exame e comprar seu Voucher. Algumas semanas após ter feito a compra, você receberá um link com um convite. Ao acessar o link você fará um processo simples de verificação de sua identidade.

Após esse processo, basta realizar a prova. Caso aprovado, você será um Certified Laravel Developer. O tempo para receber a confirmação que você foi aprovado leva em torno de 7-9 dias úteis.

O tempo da prova normalmente leva em torno de 1 hora. Um ponto interessante é de que a certificação não expira, logo, você não terá de refazer a prova de forma anual.

Agora se você está com medo de não passar no exame e perder o valor investido, fique tranquilo. Você poderá refazer o teste uma vez sem nenhum custo em um período de 3 meses.

Comunidade Laravel

A comunidade Laravel é bastante movimentada. Particularmente, o melhor local para tirar dúvidas e falar sobre o framework é através do Grupo da comunidade do Facebook. O grupo possui (no momento da publicação desse artigo) aproximadamente 11.500 membros.

A comunidade também possui um site: laravel.com.br.

Além disso, meetups são constantemente realizados pela comunidade. Fique de olho na agenda para poder participar de algum. Normalmente eles acontecem a noite na cidade de São Paulo. Segue o link.

Como contribuir com o projeto

Há diversas formas de contribuir com o framework, desde correções de bugs, desenvolvimento e criação de documentações, entre outros.

A forma mais simples de obter todas as informações é através do repositório principal do framework no Github e também no próprio site da documentação.

Reportar bugs do framework

Como todo projeto de software, o Laravel também possui bugs que são corrigidos diariamente, logo uma forma extremamente importante também de contribuir com o projeto é fazendo o report de bugs através do próprio github.

Há duas formas de fazer:

  1. Criando uma pull request contendo a correção.
  2. Criando uma pull request contendo o teste do bug falhando
  3. Abrindo uma issue no repositório do projeto com um título e descrição de forma extremamente clara de uma forma que o bug possa ser facilmente reproduzido.

Lembrando que o projeto Laravel é baseado em diversos repositórios. Logo, antes de reportar um bug, tenha certeza que o mesmo faça parte do repositório correto. Para acessar a lista dos repositórios do projeto, clique aqui.

Vulnerabilidades de segurança

Caso você encontre por algum motivo alguma vulnerabilidade séria de segurança, jamais abre uma issue no github. Simplesmente envie um email diretamente ao taylor: [email protected]

Coding Style

O Laravel possui regras claras para o processo de desenvolvimento; desde a utilização de PSRs até a utilização de PHPDoc e StyleCI. Logo, antes de você sair criando suas pull requests, leita com calma o guia de contribuição.

Curso de Laravel

Caso você queira aprender Laravel do básico ao avançado, aqui na School of Net possuímos os mais diversos cursos online sobre o Framework. Os cursos online são baseados em vídeo em sem dúvidas vão lhe ajudar muito a evoluir nesse framework php.

Clique aqui para ver todo o conteúdo e cursos sobre Laravel que temos disponíveis.

Também temos muito conteúdo como vídeos e artigos sobre o framework em nosso Blog. Clique aqui para visualizar.

Outra opção bem popular sobre para você aprender Laravel é através dos vídeos do Laracasts. Eles são bem bacanas, porém são 100% em inglês.