SlideShare une entreprise Scribd logo
1  sur  38
Laravel 5
Desenvolvimento rápido e simples
O que é o PHP?
PHP é um acrônimo recursivo para PHP: Hypertext Prepocessor.
Linguagem server-side para desenvolvimento web.
Começou a ser desenvolvido em 1995 por Rasmus Lerdorf.
Atualmente a última versão lançada é a 5.6.13.
A versão 7 já está em fase de Alpha Release
O que é o Laravel?
O Laravel é um framework em PHP baseado no conceito de RAD (Rapid
Application Development).
Desenvolvido por Taylor Otwell.
Possui código aberto e uma comunidade ativa.
Utiliza o composer, fornecendo todo o poder das demais bibliotecas escritas
para PHP.
O que é um framework?
Framework é um “esqueleto”, um modelo que nos propicia o essencial para
desenvolver alguma coisa.
DRY
Don’t Repeat Yourself
A maior parte das aplicações web precisa
de:
Login de usuários.
CRUD’s
Integrações com redes sociais.
Operações de banco de dados.
Envio de e-mails.
Notificações para os usuários.
Por que então precisamos
reescrever essas funcionalidades
a cada novo projeto?
Não Precisamos!!!
O que é o composer?
Gerenciador de dependências para aplicações PHP.
Não precisamos ter nossas dependências juntas com o projeto, podemos
instalar utilizando o composer.
Qualquer pessoa pode escrever uma biblioteca para PHP e publicá-la para
que todos possam utilizá-la.
laravel.com
Utilizando Homestead
Ambiente vagrant preparado para aplicações Laravel.
Contém todas as dependências necessárias para executar o Laravel.
Podemos recriar a máquina virtual a hora que acharmos conveniente.
Ajuda a diminuir problema com o Deploy.
Criando nossa primeira aplicação Laravel
Estrutura de pastas
Estrutura de pastas
Ponto de Entrada: rotas
As rotas são o ponto de entrada para uma aplicação Laravel.
Através das rotas direcionamos as requisições dos nossos usuários para os
controladores corretos.
Podemos utilizar closures do PHP no arquivo de rotas PARA FINS DE
TESTES, pois esta não é uma boa prática.
app/Http/routes.php
Roteamento
Controllers
O que são controllers?
Controllers são responsáveis por “controlar” a nossa aplicação.
Eles recebem a requisição e a direcionam para o local correto.
É uma boa prática manter o controller com pouco código, deixando-o mais
limpo.
Criando controllers
Views
O que são views?
Views contém a apresentação da nossa
aplicação para o usuário (HTML, CSS,
Javascript, etc).
Migrations
O que são migrations?
Migrations servem para que possamos ter um controle das alterações no
banco de dados.
Com as migrations podemos “versionar” o estado do nosso banco de dados.
São uma maneira prática de compartilhar entre a equipe o banco de dados.
Facilitam também o deploy da aplicação, auxiliando na automatização deste
processo.
Criando migrations
Executando migrations
Voltando migrations
Eloquent
O que é o Eloquent?
Eloquent é o ORM do Laravel.
É uma abstração do banco de dados, serve como uma camada intermediária
pra que não tenhamos que escrever queries diretamente.
Facilita a manipulação dos dados e também caso seja necessário
mudarmos o banco de dados utilizado.
Seeds
O que são seeds?
Seeds são uma maneira de popularmos nosso banco de dados com
informações.
Podemos utilizar informações falsas para nos auxiliar no processo de
desenvolvimento.
Temos a ajuda da biblioteca “Faker” para a criação de informações de
exemplo.
Form Requests
O que são Form Requests?
Form Requests nos auxiliam na função de validação e
autorização de requisições.
Criando Form Requests
Como me aprofundar no Laravel?
Documentação: http://laravel.com/docs/5.1
Documentação em Português: http://laravel-docs.artesaos.org/docs/5.1
Slack do Laravel-Br: http://slack.laravel.com.br/
Laravel News: https://laravel-news.com/
Laracasts: http://laracasts.com/
Contato
E-mail: lucaspgois@gmail.com
Twitter: @lukz_
Slack do Laravel-BR: @lukz

Contenu connexe

Tendances

Introduction to Mobile Application Development
Introduction to Mobile Application DevelopmentIntroduction to Mobile Application Development
Introduction to Mobile Application Developmentshikishiji
 
Kotlin for Android Development
Kotlin for Android DevelopmentKotlin for Android Development
Kotlin for Android DevelopmentSpeck&Tech
 
Framework de automação de teste Robotium
Framework de automação de teste RobotiumFramework de automação de teste Robotium
Framework de automação de teste RobotiumBenicio Ávila
 
Refactoring Tips by Martin Fowler
Refactoring Tips by Martin FowlerRefactoring Tips by Martin Fowler
Refactoring Tips by Martin FowlerIgor Crvenov
 
Testing with JUnit 5 and Spring
Testing with JUnit 5 and SpringTesting with JUnit 5 and Spring
Testing with JUnit 5 and SpringVMware Tanzu
 
Keeping Swift Apps Small
Keeping Swift Apps SmallKeeping Swift Apps Small
Keeping Swift Apps SmallBruno Rocha
 
Design Pattern For C# Part 1
Design Pattern For C# Part 1Design Pattern For C# Part 1
Design Pattern For C# Part 1Shahzad
 
Introduction to Kotlin Language and its application to Android platform
Introduction to Kotlin Language and its application to Android platformIntroduction to Kotlin Language and its application to Android platform
Introduction to Kotlin Language and its application to Android platformEastBanc Tachnologies
 
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...HostedbyConfluent
 
Kotlin presentation
Kotlin presentation Kotlin presentation
Kotlin presentation MobileAcademy
 
REST APIs in Laravel 101
REST APIs in Laravel 101REST APIs in Laravel 101
REST APIs in Laravel 101Samantha Geitz
 
Using hilt in a modularized project
Using hilt in a modularized projectUsing hilt in a modularized project
Using hilt in a modularized projectFabio Collini
 
Comparison Between Top Five Cloud Service Provider In 2020
Comparison Between Top Five Cloud Service Provider In 2020Comparison Between Top Five Cloud Service Provider In 2020
Comparison Between Top Five Cloud Service Provider In 2020Abu Hasnat Md. Shakik Prodhan
 
Clean architecture with ddd layering in php
Clean architecture with ddd layering in phpClean architecture with ddd layering in php
Clean architecture with ddd layering in phpLeonardo Proietti
 
Neo4j Stored Procedure Training Part 2
Neo4j Stored Procedure Training Part 2Neo4j Stored Procedure Training Part 2
Neo4j Stored Procedure Training Part 2Max De Marzi
 
Microservices design patterns
Microservices design patternsMicroservices design patterns
Microservices design patternsMasashi Narumoto
 
Command Design Pattern
Command Design Pattern Command Design Pattern
Command Design Pattern anil kanzariya
 
Introduction to RxJS
Introduction to RxJSIntroduction to RxJS
Introduction to RxJSBrainhub
 
Angular and The Case for RxJS
Angular and The Case for RxJSAngular and The Case for RxJS
Angular and The Case for RxJSSandi Barr
 

Tendances (20)

Introduction to Mobile Application Development
Introduction to Mobile Application DevelopmentIntroduction to Mobile Application Development
Introduction to Mobile Application Development
 
Kotlin for Android Development
Kotlin for Android DevelopmentKotlin for Android Development
Kotlin for Android Development
 
Framework de automação de teste Robotium
Framework de automação de teste RobotiumFramework de automação de teste Robotium
Framework de automação de teste Robotium
 
Refactoring Tips by Martin Fowler
Refactoring Tips by Martin FowlerRefactoring Tips by Martin Fowler
Refactoring Tips by Martin Fowler
 
Testing with JUnit 5 and Spring
Testing with JUnit 5 and SpringTesting with JUnit 5 and Spring
Testing with JUnit 5 and Spring
 
Keeping Swift Apps Small
Keeping Swift Apps SmallKeeping Swift Apps Small
Keeping Swift Apps Small
 
1. flutter introduccion v2
1.  flutter introduccion v21.  flutter introduccion v2
1. flutter introduccion v2
 
Design Pattern For C# Part 1
Design Pattern For C# Part 1Design Pattern For C# Part 1
Design Pattern For C# Part 1
 
Introduction to Kotlin Language and its application to Android platform
Introduction to Kotlin Language and its application to Android platformIntroduction to Kotlin Language and its application to Android platform
Introduction to Kotlin Language and its application to Android platform
 
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
 
Kotlin presentation
Kotlin presentation Kotlin presentation
Kotlin presentation
 
REST APIs in Laravel 101
REST APIs in Laravel 101REST APIs in Laravel 101
REST APIs in Laravel 101
 
Using hilt in a modularized project
Using hilt in a modularized projectUsing hilt in a modularized project
Using hilt in a modularized project
 
Comparison Between Top Five Cloud Service Provider In 2020
Comparison Between Top Five Cloud Service Provider In 2020Comparison Between Top Five Cloud Service Provider In 2020
Comparison Between Top Five Cloud Service Provider In 2020
 
Clean architecture with ddd layering in php
Clean architecture with ddd layering in phpClean architecture with ddd layering in php
Clean architecture with ddd layering in php
 
Neo4j Stored Procedure Training Part 2
Neo4j Stored Procedure Training Part 2Neo4j Stored Procedure Training Part 2
Neo4j Stored Procedure Training Part 2
 
Microservices design patterns
Microservices design patternsMicroservices design patterns
Microservices design patterns
 
Command Design Pattern
Command Design Pattern Command Design Pattern
Command Design Pattern
 
Introduction to RxJS
Introduction to RxJSIntroduction to RxJS
Introduction to RxJS
 
Angular and The Case for RxJS
Angular and The Case for RxJSAngular and The Case for RxJS
Angular and The Case for RxJS
 

Similaire à Laravel 5

Similaire à Laravel 5 (20)

Minicurso Aplicação Web Utilizando o Framework Laravel
Minicurso Aplicação Web Utilizando o Framework LaravelMinicurso Aplicação Web Utilizando o Framework Laravel
Minicurso Aplicação Web Utilizando o Framework Laravel
 
A Linguagem Php
A Linguagem PhpA Linguagem Php
A Linguagem Php
 
FISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHPFISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHP
 
Rails asservice
Rails asserviceRails asservice
Rails asservice
 
Desenvolvimento web ágil e descomplicado usando ruby on rails
Desenvolvimento web ágil e descomplicado usando ruby on railsDesenvolvimento web ágil e descomplicado usando ruby on rails
Desenvolvimento web ágil e descomplicado usando ruby on rails
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
 
Palestra Sobre REST
Palestra Sobre RESTPalestra Sobre REST
Palestra Sobre REST
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
 
Manual PHP
Manual PHPManual PHP
Manual PHP
 
Páginas dinâmicas
Páginas dinâmicasPáginas dinâmicas
Páginas dinâmicas
 
Apache e Java
Apache e JavaApache e Java
Apache e Java
 
Webservices e Computação em Nuvem com PHP
Webservices e Computação em Nuvem com PHPWebservices e Computação em Nuvem com PHP
Webservices e Computação em Nuvem com PHP
 
Desenvolvendo com Java Open Source
Desenvolvendo com Java Open SourceDesenvolvendo com Java Open Source
Desenvolvendo com Java Open Source
 
Cursos
CursosCursos
Cursos
 
Fundamentos em Containers
Fundamentos em ContainersFundamentos em Containers
Fundamentos em Containers
 
Apache PHP MySQL
Apache  PHP  MySQLApache  PHP  MySQL
Apache PHP MySQL
 
Palestra Ruby on Rails SETA 2008/01
Palestra Ruby on Rails SETA 2008/01Palestra Ruby on Rails SETA 2008/01
Palestra Ruby on Rails SETA 2008/01
 
Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao php
 
Laravel 5
Laravel 5Laravel 5
Laravel 5
 
Apresentação final
Apresentação finalApresentação final
Apresentação final
 

Laravel 5

  • 2. O que é o PHP? PHP é um acrônimo recursivo para PHP: Hypertext Prepocessor. Linguagem server-side para desenvolvimento web. Começou a ser desenvolvido em 1995 por Rasmus Lerdorf. Atualmente a última versão lançada é a 5.6.13. A versão 7 já está em fase de Alpha Release
  • 3. O que é o Laravel? O Laravel é um framework em PHP baseado no conceito de RAD (Rapid Application Development). Desenvolvido por Taylor Otwell. Possui código aberto e uma comunidade ativa. Utiliza o composer, fornecendo todo o poder das demais bibliotecas escritas para PHP.
  • 4. O que é um framework? Framework é um “esqueleto”, um modelo que nos propicia o essencial para desenvolver alguma coisa.
  • 6. A maior parte das aplicações web precisa de: Login de usuários. CRUD’s Integrações com redes sociais. Operações de banco de dados. Envio de e-mails. Notificações para os usuários.
  • 7. Por que então precisamos reescrever essas funcionalidades a cada novo projeto?
  • 9. O que é o composer? Gerenciador de dependências para aplicações PHP. Não precisamos ter nossas dependências juntas com o projeto, podemos instalar utilizando o composer. Qualquer pessoa pode escrever uma biblioteca para PHP e publicá-la para que todos possam utilizá-la.
  • 10.
  • 12.
  • 13. Utilizando Homestead Ambiente vagrant preparado para aplicações Laravel. Contém todas as dependências necessárias para executar o Laravel. Podemos recriar a máquina virtual a hora que acharmos conveniente. Ajuda a diminuir problema com o Deploy.
  • 14. Criando nossa primeira aplicação Laravel
  • 17. Ponto de Entrada: rotas As rotas são o ponto de entrada para uma aplicação Laravel. Através das rotas direcionamos as requisições dos nossos usuários para os controladores corretos. Podemos utilizar closures do PHP no arquivo de rotas PARA FINS DE TESTES, pois esta não é uma boa prática.
  • 21. O que são controllers? Controllers são responsáveis por “controlar” a nossa aplicação. Eles recebem a requisição e a direcionam para o local correto. É uma boa prática manter o controller com pouco código, deixando-o mais limpo.
  • 23. Views
  • 24. O que são views? Views contém a apresentação da nossa aplicação para o usuário (HTML, CSS, Javascript, etc).
  • 26. O que são migrations? Migrations servem para que possamos ter um controle das alterações no banco de dados. Com as migrations podemos “versionar” o estado do nosso banco de dados. São uma maneira prática de compartilhar entre a equipe o banco de dados. Facilitam também o deploy da aplicação, auxiliando na automatização deste processo.
  • 31. O que é o Eloquent? Eloquent é o ORM do Laravel. É uma abstração do banco de dados, serve como uma camada intermediária pra que não tenhamos que escrever queries diretamente. Facilita a manipulação dos dados e também caso seja necessário mudarmos o banco de dados utilizado.
  • 32. Seeds
  • 33. O que são seeds? Seeds são uma maneira de popularmos nosso banco de dados com informações. Podemos utilizar informações falsas para nos auxiliar no processo de desenvolvimento. Temos a ajuda da biblioteca “Faker” para a criação de informações de exemplo.
  • 35. O que são Form Requests? Form Requests nos auxiliam na função de validação e autorização de requisições.
  • 37. Como me aprofundar no Laravel? Documentação: http://laravel.com/docs/5.1 Documentação em Português: http://laravel-docs.artesaos.org/docs/5.1 Slack do Laravel-Br: http://slack.laravel.com.br/ Laravel News: https://laravel-news.com/ Laracasts: http://laracasts.com/