Talk about

Full Stack Web Framework
Outline
● Overview - Play Framework
● Talk
Outline
● Overview - Play Framework
● Talk
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
Simple Build Tool
“sbt is a build tool for Scala, Java, and more…”
name := "app"
version := "1.0-SNAPSHOT"
libraryDependencies ++= Seq(
javaJdbc,
javaEbean,
cache
)
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
Criando um projeto
Play App Console
Acessando App
Criando Eclipse Project
Ctrol + D para sair do servidor HTTP.
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
MVC application model
Application.config
MVC - Models
MVC - View
main.scala.html
MVC - View
main.scala.html
MVC - View
Routes
config/Routes
MVC - Controller
Resultado
http:localhost:9000/produtos
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
Programação Assíncrona
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
Overview - Play Framework
● SBT (Simple Build Tool)
● Criando Projeto
● Framework MVC
● Programação Assíncrona
● Convention over Configuration
● Core escrito em Java/Scala
Overview - Play Framework
● Full stack framework
● Foco em Tipagem forte
● TDD (Test Driven Development)
● Ciclo de vida de uma Requisição
● Suporte a tecnologias emergentes (HTML 5,
WebSockets, JSON, NoSQL etc..)
Overview - Play Framework
● Full stack framework
● Foco em Tipagem forte
● TDD (Test Driven Development)
● Ciclo de vida de uma Requisição
● Suporte a tecnologias emergentes (HTML 5,
WebSockets, JSON, NoSQL etc..)
Overview - Play Framework
● Full stack framework
● Foco em Tipagem forte
● TDD (Test Driven Development)
● Ciclo de vida de uma Requisição
● Suporte a tecnologias emergentes (HTML 5,
WebSockets, JSON, NoSQL etc..)
TDD (Test Driven Development)
● Unit Test
● Functional Test
● Selenium
● Fixtures
TDD (Test Driven Development)
● Unit Test
● Functional Test
● Selenium
● Fixtures
Unit Test
TDD (Test Driven Development)
● Unit Test
● Functional Test
● Selenium
● Fixtures
Functional Test
TDD (Test Driven Development)
● Unit Test
● Functional Test
● Selenium
● Fixtures
Selenium Test
TDD (Test Driven Development)
● Unit Test
● Functional Test
● Selenium
● Fixtures
Fixtures Test
YAML File
#Test data

Company(google):
name:

Google

Company(zen):
name:

Zenexity

User(guillaume):
name:

guillaume

company: zen
Fixture-Factory :)
Overview - Play Framework
● Full stack framework
● Foco em Tipagem forte
● TDD (Test Driven Development)
● Ciclo de vida de uma Requisição
● Suporte a tecnologias emergentes (HTML 5,
WebSockets, JSON, NoSQL etc..)
Overview - Play Framework
● Full stack framework
● Foco em Tipagem forte
● TDD (Test Driven Development)
● Ciclo de vida de uma Requisição
● Suporte a tecnologias emergentes (HTML 5,
WebSockets, JSON, NoSQL etc..)
Outline
● Overview - Play Framework
● Talk
Fontes de consulta:
Java Magazine 117 - Dominando o Play! Framework
http://www.slideshare.net/brikis98/the-play-framework-at-linkedin?from_search=22
http://www.playframework.com/documentation/2.2.x/JavaAsync
http://imasters.com.br/artigo/23777/java/redescobrindo-java-com-play-framework/
http://stackoverflow.com/questions/12708515/how-to-create-a-promiseresult-play2-0-framework-java
https://github.com/jroper/play-promise-presentation/blob/master/src/main/java/controllers/Application.java
http://engineering.linkedin.com/34/play-framework-and-async-io
http://www.playframework.com/documentation/2.2.x/Home
http://www.guj.com.br/java/270916-meu-caso-de-sucesso-com-play-framework
http://www.slideshare.net/allysonbarros/play-framework-desenvolvendo-aplicaes-web-com-java-sem-dor
Maurício Junior Carvalho dos Santos
Mauriciosantos@amil.com.br

Obrigado!

Play - Full Stack Java Web Framework

  • 1.
    Talk about Full StackWeb Framework
  • 2.
    Outline ● Overview -Play Framework ● Talk
  • 3.
    Outline ● Overview -Play Framework ● Talk
  • 4.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 5.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 6.
    Simple Build Tool “sbtis a build tool for Scala, Java, and more…” name := "app" version := "1.0-SNAPSHOT" libraryDependencies ++= Seq( javaJdbc, javaEbean, cache )
  • 7.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 8.
  • 9.
  • 10.
  • 11.
    Criando Eclipse Project Ctrol+ D para sair do servidor HTTP.
  • 13.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 14.
  • 15.
  • 16.
  • 19.
  • 20.
  • 21.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 28.
  • 29.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 30.
    Overview - PlayFramework ● SBT (Simple Build Tool) ● Criando Projeto ● Framework MVC ● Programação Assíncrona ● Convention over Configuration ● Core escrito em Java/Scala
  • 31.
    Overview - PlayFramework ● Full stack framework ● Foco em Tipagem forte ● TDD (Test Driven Development) ● Ciclo de vida de uma Requisição ● Suporte a tecnologias emergentes (HTML 5, WebSockets, JSON, NoSQL etc..)
  • 32.
    Overview - PlayFramework ● Full stack framework ● Foco em Tipagem forte ● TDD (Test Driven Development) ● Ciclo de vida de uma Requisição ● Suporte a tecnologias emergentes (HTML 5, WebSockets, JSON, NoSQL etc..)
  • 33.
    Overview - PlayFramework ● Full stack framework ● Foco em Tipagem forte ● TDD (Test Driven Development) ● Ciclo de vida de uma Requisição ● Suporte a tecnologias emergentes (HTML 5, WebSockets, JSON, NoSQL etc..)
  • 34.
    TDD (Test DrivenDevelopment) ● Unit Test ● Functional Test ● Selenium ● Fixtures
  • 35.
    TDD (Test DrivenDevelopment) ● Unit Test ● Functional Test ● Selenium ● Fixtures
  • 36.
  • 37.
    TDD (Test DrivenDevelopment) ● Unit Test ● Functional Test ● Selenium ● Fixtures
  • 38.
  • 39.
    TDD (Test DrivenDevelopment) ● Unit Test ● Functional Test ● Selenium ● Fixtures
  • 40.
  • 41.
    TDD (Test DrivenDevelopment) ● Unit Test ● Functional Test ● Selenium ● Fixtures
  • 42.
    Fixtures Test YAML File #Testdata Company(google): name: Google Company(zen): name: Zenexity User(guillaume): name: guillaume company: zen
  • 43.
  • 44.
    Overview - PlayFramework ● Full stack framework ● Foco em Tipagem forte ● TDD (Test Driven Development) ● Ciclo de vida de uma Requisição ● Suporte a tecnologias emergentes (HTML 5, WebSockets, JSON, NoSQL etc..)
  • 46.
    Overview - PlayFramework ● Full stack framework ● Foco em Tipagem forte ● TDD (Test Driven Development) ● Ciclo de vida de uma Requisição ● Suporte a tecnologias emergentes (HTML 5, WebSockets, JSON, NoSQL etc..)
  • 47.
    Outline ● Overview -Play Framework ● Talk
  • 48.
    Fontes de consulta: JavaMagazine 117 - Dominando o Play! Framework http://www.slideshare.net/brikis98/the-play-framework-at-linkedin?from_search=22 http://www.playframework.com/documentation/2.2.x/JavaAsync http://imasters.com.br/artigo/23777/java/redescobrindo-java-com-play-framework/ http://stackoverflow.com/questions/12708515/how-to-create-a-promiseresult-play2-0-framework-java https://github.com/jroper/play-promise-presentation/blob/master/src/main/java/controllers/Application.java http://engineering.linkedin.com/34/play-framework-and-async-io http://www.playframework.com/documentation/2.2.x/Home http://www.guj.com.br/java/270916-meu-caso-de-sucesso-com-play-framework http://www.slideshare.net/allysonbarros/play-framework-desenvolvendo-aplicaes-web-com-java-sem-dor
  • 49.
    Maurício Junior Carvalhodos Santos Mauriciosantos@amil.com.br Obrigado!