0
Play 2: Java ET ScalaPour le meilleur et pour le pire@blouerat
Bastien LOUËRAT@bloueratDéveloppeur @ Clever CloudHébergement PlayDéveloppement :Play 1, Play 2 Scala & Java
Play 2: Java ET ScalaComment les deuxtechnologies semarient-elles ?Problèmes rencontrésen passant de Scalaà Java.
The High VelocityWeb FrameworkFor Java and Scala
HistoriquePlay 1.x:○ 2007: Projet interne @ Zenexity.○ 2009: Open Sourcing. 1.0 release.○ 2010: Play 1.1 (Netty, Async WS,...
1 framework, 2 APIs
Controllers
# Default path will just redirect to the computer listGET / controllers.Application.index# Computers list (look at the def...
Vues
● "You don’t have to write complicated Scalacode here" – Play for Java developpers● @foo.bar != @{foo.`type`}● error: No i...
"We simply want tooffer a minimal setof helpers"Bases SQL
● Anorm par défaut. Minimal. Léger.« Parfait pour les ptites faims »● Slick by Typesafe. Verbeux sans macro.Bases SQL - Sc...
● Ebean. Très léger. Génère mauvais DDLpour évolution.● JPA.○ Hibernate 4.0 (conversion JodaTime)○ Import du module javaJp...
Formulaires - côté vueReverse router{HelpersHtml classique
public class User {@Requiredpublic String email;public String password;public String validate() {if(authenticate(email,pas...
Exécution Asynchrone - Scala
Exécution Asynchrone - Java
Simple Build Tool● Build.scala● Très bonne documentation● Maven SNAPSHOT via SSH● Build system…
play4allPlay with us!Auto-scalabilité / Supervision / Services
THATS ALL FOLKS!@blouerat
Upcoming SlideShare
Loading in...5
×

Play 2: java et scala

682

Published on

Retour d'expérience sur l'utilisation des deux langages au sein du framework

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
682
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Play 2: java et scala"

  1. 1. Play 2: Java ET ScalaPour le meilleur et pour le pire@blouerat
  2. 2. Bastien LOUËRAT@bloueratDéveloppeur @ Clever CloudHébergement PlayDéveloppement :Play 1, Play 2 Scala & Java
  3. 3. Play 2: Java ET ScalaComment les deuxtechnologies semarient-elles ?Problèmes rencontrésen passant de Scalaà Java.
  4. 4. The High VelocityWeb FrameworkFor Java and Scala
  5. 5. HistoriquePlay 1.x:○ 2007: Projet interne @ Zenexity.○ 2009: Open Sourcing. 1.0 release.○ 2010: Play 1.1 (Netty, Async WS, Scala, Future)○ 2011: Play 1.2 (Ivy, WebSockets, play.libs.F,Promise<T>, await)○ Décembre 2011: 1.2.4, fork yalp. Dev Play 2Play 2.x○ 2012: Play 2.0, Typesafe stack 2. Scala, Akka & sbt○ 2013: Play 2.1, Scala 2.10, scala.concurrent.Future
  6. 6. 1 framework, 2 APIs
  7. 7. Controllers
  8. 8. # Default path will just redirect to the computer listGET / controllers.Application.index# Computers list (look at the default values for pagination parameters)GET /computers controllers.Application.list(p:Int ?= 0, s:Int ?= 2, f ?= "")# Add computerGET /computers/new controllers.Application.createPOST /computers controllers.Application.save# Edit existing computerGET /computers/:id controllers.Application.edit(id:Long)POST /computers/:id controllers.Application.update(id:Long)VERB route reverseRouting
  9. 9. Vues
  10. 10. ● "You don’t have to write complicated Scalacode here" – Play for Java developpers● @foo.bar != @{foo.`type`}● error: No implicit Orderingdefined for Foofoos.sortedVues
  11. 11. "We simply want tooffer a minimal setof helpers"Bases SQL
  12. 12. ● Anorm par défaut. Minimal. Léger.« Parfait pour les ptites faims »● Slick by Typesafe. Verbeux sans macro.Bases SQL - Scala
  13. 13. ● Ebean. Très léger. Génère mauvais DDLpour évolution.● JPA.○ Hibernate 4.0 (conversion JodaTime)○ Import du module javaJpa○ @Transactionnal & AkkaBases SQL - Java
  14. 14. Formulaires - côté vueReverse router{HelpersHtml classique
  15. 15. public class User {@Requiredpublic String email;public String password;public String validate() {if(authenticate(email,password) == null) {return "Invalid email or password";}return null;}}:):(Formulaires - côté modèles
  16. 16. Exécution Asynchrone - Scala
  17. 17. Exécution Asynchrone - Java
  18. 18. Simple Build Tool● Build.scala● Très bonne documentation● Maven SNAPSHOT via SSH● Build system…
  19. 19. play4allPlay with us!Auto-scalabilité / Supervision / Services
  20. 20. THATS ALL FOLKS!@blouerat
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×