Monday, December 12, 2016

New Gails 3 Book

We present here our new Grails 3 book. It is about how you can build a greenfield application using the framework: Grails 3 book - Step by Step

You can buy it here: Step By… by Cristian Olaru [Leanpub PDF/iPad/Kindle]. There is already a sample chapter available: Grails 3 - Step By Step


First part - Grails 3 Essentials

An introduction to application development with Grails 3; we describe the main application that will be implemented in the second part of the book
Chapter 1 is an introduction to the framework. You will find here some history of the framework and a lot of links to the Grails resources; it is presenting the classical three layered architecture for a web application provided by Grails 3
Chapter 2 describes how to start your work with Grails 3 framework and how to install all the tools for a free working environment - free as much as possible because you have to pay some money for the best tools on the market
Chapter 3 presents the project we want to implement as an example; it is presenting also the way we choose to work on implementing the sample application, based on BDD, TDD and CI, CD; it shows how the main application is split in parts based on Grails 3 profiles

Second part - Practical example with Grails 3

A practical implementation of a greenfield application with Grails 3; the application is composed from multiple parts corresponding to various Grails 3 profiles
Chapter 4 describes the implementation of the application admin portal that will be used in Intranet by the site administrators, based on a classical Grails 3 Web Profile
Chapter 5 describes the implementation of the application site exposed to the Internet to the customers, that is based on Grails 3 Angular Profile
Chapter 6 describes a REST web API exposed with Grails 3 Rest Profile and consumed by a mobile hybrid application created with Ionic (can be published in Google Play, Apple Store and Windows Store)
Chapter 7 describes a microservice developed with Grails 3 Micro Profile

Tuesday, December 6, 2016

What is making Grails a good choice

What is making Grails a good choice from the multitude of frameworks for building Web applications
  • Grails is a full stack web framework in the sense that you can create an entire application using it. It covers the web presentation, business domain and database persistence aspects of your application. Not alone, but integrating the right technologies for this: Java, Spring, Hibernate. And all of this are linked by Groovy language with is used for configuring your application - the DSL for configurations are Groovy based (now in Grails 3 you will have the option to use YAML also)
  • conventions over configurations
    • for creating a service is enough to place a groovy file containing a class without state in /service folder without annotating it with @Service or mark it in a configuration file like in Spring or annotate with @Stateless for an EJB 3 stateless session bean
    • for creating an entity is enough to place a POJO class in a /domain folder and no @Entity annotation like in JPA or Hibernate or declaring it in configuration files
  • scaffolding for generating a seed application or a variety of elements starting from domain objects; it can be static (generating the corresponding files in the filesystem) or dynamic (generating just proxies in memory)
  • environments inside from beginning like TEST, DEV, PROD (or a custom one) letting you to take different actions in runtime based on the given environment
  • testing inside the framework (unit - in isolation using mocking, integration, functional) using JUnitSpock and Geb
  • static resources served in an optimized way (asset pipeline plugin replacing resources plugin)
  • asynchronous features based on plugins in first versions and directly inside in version 3 using Reactor
  • dynamic reload of classes and resources in runtime based on spring-loaded technology; no server restarts are needed in development or products like JRebel
  • and many more…