gr8conf 2016 - what's new in grails 3

31

Upload: graemerocher

Post on 08-Jan-2017

585 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Gr8Conf 2016 - What's new in Grails 3
Page 2: Gr8Conf 2016 - What's new in Grails 3

What’s new in Grails?

Page 3: Gr8Conf 2016 - What's new in Grails 3

Graeme Rocher Grails Project Lead @graemerocher [email protected]

Page 4: Gr8Conf 2016 - What's new in Grails 3

Grails 3 Status Update• Grails 3.1.8 current release of 3.x

line

• Grails 3.0.x and 2.x in maintenance mode

• Grails 2.x plugins being migrated (the good ones)

Page 5: Gr8Conf 2016 - What's new in Grails 3

New Plugin Portal• Thanks to the Agile Orbit crew!

Page 6: Gr8Conf 2016 - What's new in Grails 3

slack-signup.grails.org

Page 7: Gr8Conf 2016 - What's new in Grails 3

Grails 3 Recap

• New architecture - Spring Boot, Gradle, Profiles

• Same philosophy - Conventions, DRY, Plugins

3.0

Page 8: Gr8Conf 2016 - What's new in Grails 3

Application Profiles

• Not just web applications

• REST APIs, SPA, Big Data, Micro Services

• The world has changed!

• Expand Grails’ reach

Page 9: Gr8Conf 2016 - What's new in Grails 3

Grails 3 Feature Recap

• Grails 3.0.x a solid base for the future

• Foundational components stable

• Great time to jump into plugin development

• Improvements coming all the time!

Page 10: Gr8Conf 2016 - What's new in Grails 3

Then came Grails 3.1

• Spring Boot 1.3, Spring 4.2

• Massive improvements to profiles

• REST (Web API) Profile

• AngularJS Profile

• GORM 5

Page 11: Gr8Conf 2016 - What's new in Grails 3

Announcing Grails 3.2• RxGORM

• MongoDB 3.0 RX driver support

• RxGORM REST client

• GORM Multi Tenancy

• GORM for Neo4j 3.x / Bolt support

• AngularJS scaffolding

• Further refinements to REST support

Page 12: Gr8Conf 2016 - What's new in Grails 3

Profile Improvements

• New Gradle Plugins

• Now just JAR files

• A Profile for creating Profiles!

• Extensibility

Page 13: Gr8Conf 2016 - What's new in Grails 3

The REST Profile

• Easy creation of REST APIs

• Easy customisability with JSON views

• Security support with spring-security-rest

• Integration unit and functional testing

Page 14: Gr8Conf 2016 - What's new in Grails 3

The REST Profile• Profile specific commands:

• create-domain-resource - creates an @Resource domain

• create-restful-controller - Creates a RestfulController

• Default commands provide focused templates

Page 15: Gr8Conf 2016 - What's new in Grails 3

JSON Views

• Statically compiled, extensible JSON views:

json.person{name"bob"}

{"person":{"name":"bob"}}

Page 16: Gr8Conf 2016 - What's new in Grails 3

DEMO - JSON Views

Page 17: Gr8Conf 2016 - What's new in Grails 3

JSON Views• Restoring the V in MVC

• Fast, flexible and expressive

• Pre-compilation for production environments

• Grails 3.2: Template inheritance, global templates, HAL pagination and more

• Find out more http://views.grails.org/1.1.x

Page 18: Gr8Conf 2016 - What's new in Grails 3

The AngularJS Profile

• Extends the REST profile

• Adds project setup for AngularJS

• Code generation for AngularJS

• Grails 3.2: AngularJS scaffolding

Page 19: Gr8Conf 2016 - What's new in Grails 3

The AngularJS Profile• Profile specific commands:

• create-ng-controller - Creates an AngularJS controller

• create-ng-service - Creates an AngularJS service

• Default commands provide focused templates

Page 20: Gr8Conf 2016 - What's new in Grails 3

DEMO - Angular Scaffolding

Page 21: Gr8Conf 2016 - What's new in Grails 3

GORM 5 Suite

• GORM Reborn - Trait based

• Hibernate 5

• MongoDB 3

• Neo4j 2.3

• Cassandra

3.0

Page 22: Gr8Conf 2016 - What's new in Grails 3

GORM 5 - Hibernate

• Support for Hibernate 3, 4 and 5 (and 5.1)

• Completely rewritten and based on traits

• Grails 2, Grails 3, Spring Boot or Standalone

Page 23: Gr8Conf 2016 - What's new in Grails 3

GORM 5 - MongoDB

• Rewritten for MongoDB 3.x driver

• Uses codecs to avoid Document to Object conversion (much faster)

• Grails 2, Grails 3, Spring Boot or Standalone

Page 24: Gr8Conf 2016 - What's new in Grails 3

GORM 5 - Neo4j• Rewritten for Neo4j 2.3.x

• Robust Cypher and Transaction support

• Embedded, REST & HA modes supported

• Grails 2, Grails 3, Spring Boot or Standalone

Page 25: Gr8Conf 2016 - What's new in Grails 3

Announcing GORM 6 Suite

• RxGORM

• MongoDB RX Support

• RxGORM REST Client

• Neo4j 3.x / Bolt Driver

• Native Multi Tenancy

3.0

Page 26: Gr8Conf 2016 - What's new in Grails 3

RxGORM

• GORM for RxJava

• Reactive

• Stateless

• Non-Blocking

• Lightweight

3.0

Page 27: Gr8Conf 2016 - What's new in Grails 3

DEMO - RxGORM

Page 28: Gr8Conf 2016 - What's new in Grails 3

Summary

• Big plans in the future for profiles and the Grails platform

• Grails evolving to tackle new challenges

• The Grails community and plugin ecosystem as important as ever

Page 29: Gr8Conf 2016 - What's new in Grails 3

Q & A

Page 30: Gr8Conf 2016 - What's new in Grails 3

Thank You! Graeme Rocher [email protected] ociweb.com/grails

Page 31: Gr8Conf 2016 - What's new in Grails 3

Come speak to the OCI Grails Team!

Web: grails.org StackOverflow: http://stackoverflow.com/tags/grails

Slack: http://slack-signup.grails.org Twitter: @grailsframework