SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
1 /

www.thalesgroup.com

Centre de Services de Nantes
L’univers de Grails

21 Novembre 2013

Guillaume Monjal
Sommaire

2 /



1ère partie : Présentation de Grails


Qu’est-ce que Grails ?



A propos de Groovy



Pourquoi, quand et comment l’utiliser ?



2ème partie : Mise en situation (live coding)



Conclusion et bien plus encore …

Guillaume Monjal
3 /

1ère partie : Qu’est-ce que Grails ?

• Framework Web Opensource

• Basé sur le langage Groovy
• Première version en 2006
• Version actuelle : 2.3.2 (datant du 07/11/2013)

Guillaume Monjal
4 /

1ère partie : La philosophie de Grails
Pour adopter Grails, il y a 7 idées à intégrer :

 Convention au lieu de Configuration (CoC)
 Philosophie agile
 Des fondations solides (Spring et Hibernate)
 Scaffolding et moteur de template
 Intégration avec Java (répertoire Java, injection services Java dans les contrôleurs Grails)
 Une communauté et des plugins (documentation excellente, nombreux utilisateurs, nombreux
plugins : Searchable (lucene), CloudFoundry, SpringSecurity, …
 Rapidité de développement

Guillaume Monjal
5 /

Copyright : Université de Paris-Est (http://www-igm.univ-mlv.fr/~dr/XPOSE2009/Groovy_and_Grails/index.php)
Guillaume Monjal
6 /

1ère partie : Le langage Groovy


C’est quoi ?
 Langage orientée objet utilisant principalement la syntaxe Java
 Construit sur des bases solides (Java) mais aussi inspiré par les langages Python,
Ruby et SmallTalk
 Compatibilité du code Java / Groovy
 Faiblement typé
 Vérification des types à l'exécution
 Réutilise les librairies Java

 Comment ?
 Utilise la JVM (Profite du JIT Compiler)

 Quel but ?
 Simplification (syntaxe, closures, dynamic typing, etc.)

Guillaume Monjal
7 /

2ème partie : Live Coding

Gestion d’un Karting

 Un coureur s’enregistre sur une ou plusieurs courses
 Une course comporte un ou plusieurs coureurs

Guillaume Monjal
8 /

Relation N-N

Guillaume Monjal
9 /

Conclusion et bien plus encore …



Gestion de la BDD



GORM



Ajout de plugins (searchable, filterPane, calendar)



Custom TagLibs



GSP, templates, SiteMesh



Filtres (sécurité), Intercepteurs



Services



Tests : Mockito, Spock

Guillaume Monjal
10 /

Sources intéressantes :


Débuter sur Grails (RaceTrack complet, livre PDF gratuit) :
http://www.infoq.com/minibooks/grails-getting-started



Tutoriels : http://grails.org/tutorials



Documentation : http://grails.org/Documentation



Plugins : http://grails.org/plugins/

Guillaume Monjal
11 /

Merci de votre attention !

Vos questions

Guillaume Monjal

Contenu connexe

Similaire à Formation Grails

Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 
Présentation GWT et HTML 5 pour l'Offline
Présentation GWT et HTML 5 pour l'OfflinePrésentation GWT et HTML 5 pour l'Offline
Présentation GWT et HTML 5 pour l'OfflineDNG Consulting
 
Intégration continue
Intégration continueIntégration continue
Intégration continueJohan Moreau
 
01 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 201701 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 2017Michael Bertocchi
 
Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...
Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...
Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...Association Agile Nantes
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiquesJohan Moreau
 
Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009JUG Lausanne
 
08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentation08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentationOpenCascade
 
Lyon JUG 2018 - Java le changement c'est maintenant
Lyon JUG 2018 - Java le changement c'est maintenantLyon JUG 2018 - Java le changement c'est maintenant
Lyon JUG 2018 - Java le changement c'est maintenantJean-Michel Doudoux
 
JUGL 2009 - Introduction Groovy/Grails
JUGL 2009 - Introduction Groovy/GrailsJUGL 2009 - Introduction Groovy/Grails
JUGL 2009 - Introduction Groovy/Grailscyrilpicat
 
2008-11-08 xmpp jabber for all at iut orleans
2008-11-08 xmpp jabber for all at iut orleans2008-11-08 xmpp jabber for all at iut orleans
2008-11-08 xmpp jabber for all at iut orleanslgilbon
 
Cohabitation Logiciels Libres et propriétaires
Cohabitation Logiciels Libres et propriétairesCohabitation Logiciels Libres et propriétaires
Cohabitation Logiciels Libres et propriétairesMichel-Marie Maudet
 
Liferay Portail Web Enterprise Plateforme Collaborative
Liferay Portail Web Enterprise Plateforme CollaborativeLiferay Portail Web Enterprise Plateforme Collaborative
Liferay Portail Web Enterprise Plateforme CollaborativeSavoir-faire Linux
 
Chap1_PresentationJava.pdf
Chap1_PresentationJava.pdfChap1_PresentationJava.pdf
Chap1_PresentationJava.pdfsayf7
 
20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation MavenArnaud Héritier
 

Similaire à Formation Grails (20)

Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 
Architecture android
Architecture androidArchitecture android
Architecture android
 
Présentation GWT et HTML 5 pour l'Offline
Présentation GWT et HTML 5 pour l'OfflinePrésentation GWT et HTML 5 pour l'Offline
Présentation GWT et HTML 5 pour l'Offline
 
Odoo / OCA
Odoo / OCAOdoo / OCA
Odoo / OCA
 
Intégration continue
Intégration continueIntégration continue
Intégration continue
 
Javavs net
Javavs netJavavs net
Javavs net
 
01 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 201701 presentation MkFramework AFUP janv 2017
01 presentation MkFramework AFUP janv 2017
 
#1 Introduction
#1 Introduction#1 Introduction
#1 Introduction
 
Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...
Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...
Agile Tour Nantes 2011 - Jean philippe gouigoux - architecture et agilité, ré...
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiques
 
Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009Maven2 - Philippe Kernevez - March 2009
Maven2 - Philippe Kernevez - March 2009
 
08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentation08 jus 20101123_cae_linux_presentation
08 jus 20101123_cae_linux_presentation
 
Lyon JUG 2018 - Java le changement c'est maintenant
Lyon JUG 2018 - Java le changement c'est maintenantLyon JUG 2018 - Java le changement c'est maintenant
Lyon JUG 2018 - Java le changement c'est maintenant
 
JUGL 2009 - Introduction Groovy/Grails
JUGL 2009 - Introduction Groovy/GrailsJUGL 2009 - Introduction Groovy/Grails
JUGL 2009 - Introduction Groovy/Grails
 
2008-11-08 xmpp jabber for all at iut orleans
2008-11-08 xmpp jabber for all at iut orleans2008-11-08 xmpp jabber for all at iut orleans
2008-11-08 xmpp jabber for all at iut orleans
 
Cohabitation Logiciels Libres et propriétaires
Cohabitation Logiciels Libres et propriétairesCohabitation Logiciels Libres et propriétaires
Cohabitation Logiciels Libres et propriétaires
 
android.pdf
android.pdfandroid.pdf
android.pdf
 
Liferay Portail Web Enterprise Plateforme Collaborative
Liferay Portail Web Enterprise Plateforme CollaborativeLiferay Portail Web Enterprise Plateforme Collaborative
Liferay Portail Web Enterprise Plateforme Collaborative
 
Chap1_PresentationJava.pdf
Chap1_PresentationJava.pdfChap1_PresentationJava.pdf
Chap1_PresentationJava.pdf
 
20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven20081023 - Paris Vi Master STL TA - Initiation Maven
20081023 - Paris Vi Master STL TA - Initiation Maven
 

Formation Grails

  • 1. 1 / www.thalesgroup.com Centre de Services de Nantes L’univers de Grails 21 Novembre 2013 Guillaume Monjal
  • 2. Sommaire 2 /  1ère partie : Présentation de Grails  Qu’est-ce que Grails ?  A propos de Groovy  Pourquoi, quand et comment l’utiliser ?  2ème partie : Mise en situation (live coding)  Conclusion et bien plus encore … Guillaume Monjal
  • 3. 3 / 1ère partie : Qu’est-ce que Grails ? • Framework Web Opensource • Basé sur le langage Groovy • Première version en 2006 • Version actuelle : 2.3.2 (datant du 07/11/2013) Guillaume Monjal
  • 4. 4 / 1ère partie : La philosophie de Grails Pour adopter Grails, il y a 7 idées à intégrer :  Convention au lieu de Configuration (CoC)  Philosophie agile  Des fondations solides (Spring et Hibernate)  Scaffolding et moteur de template  Intégration avec Java (répertoire Java, injection services Java dans les contrôleurs Grails)  Une communauté et des plugins (documentation excellente, nombreux utilisateurs, nombreux plugins : Searchable (lucene), CloudFoundry, SpringSecurity, …  Rapidité de développement Guillaume Monjal
  • 5. 5 / Copyright : Université de Paris-Est (http://www-igm.univ-mlv.fr/~dr/XPOSE2009/Groovy_and_Grails/index.php) Guillaume Monjal
  • 6. 6 / 1ère partie : Le langage Groovy  C’est quoi ?  Langage orientée objet utilisant principalement la syntaxe Java  Construit sur des bases solides (Java) mais aussi inspiré par les langages Python, Ruby et SmallTalk  Compatibilité du code Java / Groovy  Faiblement typé  Vérification des types à l'exécution  Réutilise les librairies Java  Comment ?  Utilise la JVM (Profite du JIT Compiler)  Quel but ?  Simplification (syntaxe, closures, dynamic typing, etc.) Guillaume Monjal
  • 7. 7 / 2ème partie : Live Coding Gestion d’un Karting  Un coureur s’enregistre sur une ou plusieurs courses  Une course comporte un ou plusieurs coureurs Guillaume Monjal
  • 9. 9 / Conclusion et bien plus encore …  Gestion de la BDD  GORM  Ajout de plugins (searchable, filterPane, calendar)  Custom TagLibs  GSP, templates, SiteMesh  Filtres (sécurité), Intercepteurs  Services  Tests : Mockito, Spock Guillaume Monjal
  • 10. 10 / Sources intéressantes :  Débuter sur Grails (RaceTrack complet, livre PDF gratuit) : http://www.infoq.com/minibooks/grails-getting-started  Tutoriels : http://grails.org/tutorials  Documentation : http://grails.org/Documentation  Plugins : http://grails.org/plugins/ Guillaume Monjal
  • 11. 11 / Merci de votre attention ! Vos questions Guillaume Monjal