SlideShare a Scribd company logo
Introduction to

Groovy & Grails
‣ Builds upon the strengths of Java but has additional power features
  inspired by languages like Python, Ruby and Smalltalk

‣ Makes modern programming features available to Java developers with
  almost-zero learning curve

‣ Supports Domain-Specific Languages and other compact syntax so your
  code becomes easy to read and maintain

‣ Simplifies testing by supporting unit testing and mocking out-of-the-box

‣ Seamlessly integrates with all existing Java objects and libraries

‣ Compiles straight to Java bytecode so you can use it anywhere you can use Java
Introduction To Grails
Introduction To Grails
"Groovy is like a super version
of Java. It can leverage Java's
enterprise capabilities but also
has cool productivity features
like closures, builders and
dynamic typing. If you are a
developer, tester or script guru,
you have to love Groovy."
Introduction To Grails
!=
!=

** but Rails paved the way
Development modes (development, test, production, custom)
•   Built-in web server
•   Hot deploy / class reloading without restarting the server
•   ORM (Object Relational Mapping)
•   Lots of plugins, that can be downloaded from the command line / plugin
    manager
•   Simple routing configuration
•   Model, view, controller, and test generators
•   Active community
•   Easy to learn
•   Full stack frameworks
•   Console (groovysh / groovyConsole)
•   Easy to configure
•   Builders
•   Very easy to create tags / reusable HTML components
•   Convention over Configuration
Services
 Classes which contain business logic but are not
 necessarily tied to a specific domain class (ie. model)
Services
 Classes which contain business logic but are not
 necessarily tied to a specific domain class (ie. model)

No Migrations
 SQL generation is done through the domain class. You define how the
 domain class should be structured, and the SQL is generated.
Services
 Classes which contain business logic but are not
 necessarily tied to a specific domain class (ie. model)

No Migrations
 SQL generation is done through the domain class. You define how the
 domain class should be structured, and the SQL is generated.

Plugins
 Plugins written for Grails are simply Grails applications that override
 existing code. Similar to Rails Engines, but done right.
Services
 Classes which contain business logic but are not
 necessarily tied to a specific domain class (ie. model)

No Migrations
 SQL generation is done through the domain class. You define how the
 domain class should be structured, and the SQL is generated.

Plugins
 Plugins written for Grails are simply Grails applications that override
 existing code. Similar to Rails Engines, but done right.

Java Integration
 Any Java jars or code libraries can be used within the Grails application
 easily.
Demonstration
1st Thursday of every month at 6:30 PM
    Neumont University Room #308
Ad

More Related Content

What's hot (20)

Greach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovyGreach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovy
Iván López Martín
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScript
Jorg Janke
 
TypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack DevelopersTypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack Developers
Rutenis Turcinas
 
re-frame à la spec
re-frame à la specre-frame à la spec
re-frame à la spec
Kent Ohashi
 
Groovy AST Demystified
Groovy AST DemystifiedGroovy AST Demystified
Groovy AST Demystified
Andres Almiray
 
Webpack & EcmaScript 6 (Webelement #32)
Webpack & EcmaScript 6 (Webelement #32)Webpack & EcmaScript 6 (Webelement #32)
Webpack & EcmaScript 6 (Webelement #32)
srigi
 
Structured web programming
Structured web programmingStructured web programming
Structured web programming
ahfast
 
Metaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And GrailsMetaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And Grails
zenMonkey
 
Dart
DartDart
Dart
Andrea Chiodoni
 
Exploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLExploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQL
Barry Jones
 
What's New in Groovy 1.6?
What's New in Groovy 1.6?What's New in Groovy 1.6?
What's New in Groovy 1.6?
Guillaume Laforge
 
CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...
CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...
CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...
Chris Richardson
 
R ext world/ useR! Kiev
R ext world/ useR!  KievR ext world/ useR!  Kiev
R ext world/ useR! Kiev
Ruslan Shevchenko
 
Groovy & Grails
Groovy & GrailsGroovy & Grails
Groovy & Grails
Michael Yan
 
Understanding how concurrency work in os
Understanding how concurrency work in osUnderstanding how concurrency work in os
Understanding how concurrency work in os
GenchiLu1
 
Ruby Presentation
Ruby Presentation Ruby Presentation
Ruby Presentation
platico_dev
 
Golang for OO Programmers
Golang for OO ProgrammersGolang for OO Programmers
Golang for OO Programmers
khalid Nowaf Almutiri
 
Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...
Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...
Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...
Guillaume Laforge
 
Introduction to Groovy
Introduction to GroovyIntroduction to Groovy
Introduction to Groovy
Kevin H.A. Tan
 
Fall in love with Kotlin
Fall in love with KotlinFall in love with Kotlin
Fall in love with Kotlin
Hari Vignesh Jayapalan
 
Greach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovyGreach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovy
Iván López Martín
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScript
Jorg Janke
 
TypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack DevelopersTypeScript - Silver Bullet for the Full-stack Developers
TypeScript - Silver Bullet for the Full-stack Developers
Rutenis Turcinas
 
re-frame à la spec
re-frame à la specre-frame à la spec
re-frame à la spec
Kent Ohashi
 
Groovy AST Demystified
Groovy AST DemystifiedGroovy AST Demystified
Groovy AST Demystified
Andres Almiray
 
Webpack & EcmaScript 6 (Webelement #32)
Webpack & EcmaScript 6 (Webelement #32)Webpack & EcmaScript 6 (Webelement #32)
Webpack & EcmaScript 6 (Webelement #32)
srigi
 
Structured web programming
Structured web programmingStructured web programming
Structured web programming
ahfast
 
Metaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And GrailsMetaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And Grails
zenMonkey
 
Exploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLExploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQL
Barry Jones
 
CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...
CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...
CommunityOneEast 09 - Dynamic Languages: the next big thing for the JVM or an...
Chris Richardson
 
Understanding how concurrency work in os
Understanding how concurrency work in osUnderstanding how concurrency work in os
Understanding how concurrency work in os
GenchiLu1
 
Ruby Presentation
Ruby Presentation Ruby Presentation
Ruby Presentation
platico_dev
 
Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...
Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...
Groovy DSLs, from Beginner to Expert - Guillaume Laforge and Paul King - Spri...
Guillaume Laforge
 
Introduction to Groovy
Introduction to GroovyIntroduction to Groovy
Introduction to Groovy
Kevin H.A. Tan
 

Viewers also liked (15)

The Grails Framework.
The Grails Framework.The Grails Framework.
The Grails Framework.
melidevelopers
 
Specialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ AshishSpecialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ Ashish
Ashish Singh
 
"We'll burn that bridge when we get to it”—Technology, Metadata Standards, an...
"We'll burn that bridge when we get to it”—Technology, Metadata Standards, an..."We'll burn that bridge when we get to it”—Technology, Metadata Standards, an...
"We'll burn that bridge when we get to it”—Technology, Metadata Standards, an...
Jennifer Liss
 
UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...
UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...
UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...
Courtney McDonald
 
Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...
Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...
Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...
Ayeeshah Ibrahium
 
реализация гп спорт москвы 14 04 2014 (09 30)
реализация гп спорт москвы 14 04 2014 (09 30)реализация гп спорт москвы 14 04 2014 (09 30)
реализация гп спорт москвы 14 04 2014 (09 30)
novel84
 
Digest foreign financial-economic_publications_01_2015.pdf
Digest foreign financial-economic_publications_01_2015.pdfDigest foreign financial-economic_publications_01_2015.pdf
Digest foreign financial-economic_publications_01_2015.pdf
Moscowdebt
 
University of Stellenbosch Academic Results
University of Stellenbosch Academic ResultsUniversity of Stellenbosch Academic Results
University of Stellenbosch Academic Results
Margie Nortje
 
The Welding Institute Membership Certificate
The Welding Institute Membership CertificateThe Welding Institute Membership Certificate
The Welding Institute Membership Certificate
Moustafa El Haloty
 
final research[1][1]
final research[1][1]final research[1][1]
final research[1][1]
Adama Kalokoh
 
full academic record + proof of registration
full academic record + proof of registrationfull academic record + proof of registration
full academic record + proof of registration
Ruari Harrison
 
Общественная пешеходная зона «Музейный парк»
Общественная пешеходная зона «Музейный парк»Общественная пешеходная зона «Музейный парк»
Общественная пешеходная зона «Музейный парк»
The webportal of the Mayor and the Government of Moscow
 
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
The webportal of the Mayor and the Government of Moscow
 
О мероприятиях посвященных Дню старшего поколения
О мероприятиях посвященных Дню старшего поколенияО мероприятиях посвященных Дню старшего поколения
О мероприятиях посвященных Дню старшего поколения
The webportal of the Mayor and the Government of Moscow
 
О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...
The webportal of the Mayor and the Government of Moscow
 
Specialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ AshishSpecialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ Ashish
Ashish Singh
 
"We'll burn that bridge when we get to it”—Technology, Metadata Standards, an...
"We'll burn that bridge when we get to it”—Technology, Metadata Standards, an..."We'll burn that bridge when we get to it”—Technology, Metadata Standards, an...
"We'll burn that bridge when we get to it”—Technology, Metadata Standards, an...
Jennifer Liss
 
UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...
UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...
UX for the People: Empowering Patrons & Front-Line Staff through a User-cente...
Courtney McDonald
 
Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...
Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...
Certificate issued by UCT Getsmarter- Import & Export Management - 18 Decembe...
Ayeeshah Ibrahium
 
реализация гп спорт москвы 14 04 2014 (09 30)
реализация гп спорт москвы 14 04 2014 (09 30)реализация гп спорт москвы 14 04 2014 (09 30)
реализация гп спорт москвы 14 04 2014 (09 30)
novel84
 
Digest foreign financial-economic_publications_01_2015.pdf
Digest foreign financial-economic_publications_01_2015.pdfDigest foreign financial-economic_publications_01_2015.pdf
Digest foreign financial-economic_publications_01_2015.pdf
Moscowdebt
 
University of Stellenbosch Academic Results
University of Stellenbosch Academic ResultsUniversity of Stellenbosch Academic Results
University of Stellenbosch Academic Results
Margie Nortje
 
The Welding Institute Membership Certificate
The Welding Institute Membership CertificateThe Welding Institute Membership Certificate
The Welding Institute Membership Certificate
Moustafa El Haloty
 
final research[1][1]
final research[1][1]final research[1][1]
final research[1][1]
Adama Kalokoh
 
full academic record + proof of registration
full academic record + proof of registrationfull academic record + proof of registration
full academic record + proof of registration
Ruari Harrison
 
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
The webportal of the Mayor and the Government of Moscow
 
О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...
The webportal of the Mayor and the Government of Moscow
 
Ad

Similar to Introduction To Grails (20)

Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
netc2012
 
Mean stack
Mean stackMean stack
Mean stack
RavikantGautam8
 
GraalVM and Oracle's Documentation Trends.pdf
GraalVM and Oracle's Documentation Trends.pdfGraalVM and Oracle's Documentation Trends.pdf
GraalVM and Oracle's Documentation Trends.pdf
ohupalo
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?
Balajihope
 
What is scala
What is scalaWhat is scala
What is scala
Piyush Katariya
 
Comparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application Frameworks
Angelin R
 
Introduction to Spring & Spring BootFramework
Introduction to Spring  & Spring BootFrameworkIntroduction to Spring  & Spring BootFramework
Introduction to Spring & Spring BootFramework
Kongu Engineering College, Perundurai, Erode
 
Azure serverless architectures
Azure serverless architecturesAzure serverless architectures
Azure serverless architectures
Benoit Le Pichon
 
Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)
Camuel Gilyadov
 
Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production
Tal Maayani
 
A sneak peek into the similarities and differences between java and java script
A sneak peek into the similarities and differences between java and java scriptA sneak peek into the similarities and differences between java and java script
A sneak peek into the similarities and differences between java and java script
AMC Square
 
5 Treding Java Frameworks Offshore Developers Should About
5 Treding Java Frameworks Offshore Developers Should About5 Treding Java Frameworks Offshore Developers Should About
5 Treding Java Frameworks Offshore Developers Should About
BJIT Ltd
 
One-stop solution for Grails web app development
One-stop solution for Grails web app developmentOne-stop solution for Grails web app development
One-stop solution for Grails web app development
OnGraph Technologies Pvt. Ltd.
 
mearn-stackjdksjdsfjdkofkdokodkojdj.pptx
mearn-stackjdksjdsfjdkofkdokodkojdj.pptxmearn-stackjdksjdsfjdkofkdokodkojdj.pptx
mearn-stackjdksjdsfjdkofkdokodkojdj.pptx
aravym456
 
Grails
GrailsGrails
Grails
Aditya Gaur
 
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Nedelcho Delchev
 
Lecture #5 Introduction to rails
Lecture #5 Introduction to railsLecture #5 Introduction to rails
Lecture #5 Introduction to rails
Evgeniy Hinyuk
 
Introduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy HinyukIntroduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy Hinyuk
Pivorak MeetUp
 
Laravel Framework Notes Web Techonologies
Laravel Framework Notes Web TechonologiesLaravel Framework Notes Web Techonologies
Laravel Framework Notes Web Techonologies
binshehzad26
 
OUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryOUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th January
Brendan Tierney
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
netc2012
 
GraalVM and Oracle's Documentation Trends.pdf
GraalVM and Oracle's Documentation Trends.pdfGraalVM and Oracle's Documentation Trends.pdf
GraalVM and Oracle's Documentation Trends.pdf
ohupalo
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?
Balajihope
 
Comparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application Frameworks
Angelin R
 
Azure serverless architectures
Azure serverless architecturesAzure serverless architectures
Azure serverless architectures
Benoit Le Pichon
 
Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production
Tal Maayani
 
A sneak peek into the similarities and differences between java and java script
A sneak peek into the similarities and differences between java and java scriptA sneak peek into the similarities and differences between java and java script
A sneak peek into the similarities and differences between java and java script
AMC Square
 
5 Treding Java Frameworks Offshore Developers Should About
5 Treding Java Frameworks Offshore Developers Should About5 Treding Java Frameworks Offshore Developers Should About
5 Treding Java Frameworks Offshore Developers Should About
BJIT Ltd
 
mearn-stackjdksjdsfjdkofkdokodkojdj.pptx
mearn-stackjdksjdsfjdkofkdokodkojdj.pptxmearn-stackjdksjdsfjdkofkdokodkojdj.pptx
mearn-stackjdksjdsfjdkofkdokodkojdj.pptx
aravym456
 
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Dirigible powered by Orion for Cloud Development (EclipseCon EU 2015)
Nedelcho Delchev
 
Lecture #5 Introduction to rails
Lecture #5 Introduction to railsLecture #5 Introduction to rails
Lecture #5 Introduction to rails
Evgeniy Hinyuk
 
Introduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy HinyukIntroduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy Hinyuk
Pivorak MeetUp
 
Laravel Framework Notes Web Techonologies
Laravel Framework Notes Web TechonologiesLaravel Framework Notes Web Techonologies
Laravel Framework Notes Web Techonologies
binshehzad26
 
OUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryOUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th January
Brendan Tierney
 
Ad

Recently uploaded (20)

Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdfSAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
SAP Modernization: Maximizing the Value of Your SAP S/4HANA Migration.pdf
Precisely
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 

Introduction To Grails

  • 2. ‣ Builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk ‣ Makes modern programming features available to Java developers with almost-zero learning curve ‣ Supports Domain-Specific Languages and other compact syntax so your code becomes easy to read and maintain ‣ Simplifies testing by supporting unit testing and mocking out-of-the-box ‣ Seamlessly integrates with all existing Java objects and libraries ‣ Compiles straight to Java bytecode so you can use it anywhere you can use Java
  • 5. "Groovy is like a super version of Java. It can leverage Java's enterprise capabilities but also has cool productivity features like closures, builders and dynamic typing. If you are a developer, tester or script guru, you have to love Groovy."
  • 7. !=
  • 8. != ** but Rails paved the way
  • 9. Development modes (development, test, production, custom) • Built-in web server • Hot deploy / class reloading without restarting the server • ORM (Object Relational Mapping) • Lots of plugins, that can be downloaded from the command line / plugin manager • Simple routing configuration • Model, view, controller, and test generators • Active community • Easy to learn • Full stack frameworks • Console (groovysh / groovyConsole) • Easy to configure • Builders • Very easy to create tags / reusable HTML components • Convention over Configuration
  • 10. Services Classes which contain business logic but are not necessarily tied to a specific domain class (ie. model)
  • 11. Services Classes which contain business logic but are not necessarily tied to a specific domain class (ie. model) No Migrations SQL generation is done through the domain class. You define how the domain class should be structured, and the SQL is generated.
  • 12. Services Classes which contain business logic but are not necessarily tied to a specific domain class (ie. model) No Migrations SQL generation is done through the domain class. You define how the domain class should be structured, and the SQL is generated. Plugins Plugins written for Grails are simply Grails applications that override existing code. Similar to Rails Engines, but done right.
  • 13. Services Classes which contain business logic but are not necessarily tied to a specific domain class (ie. model) No Migrations SQL generation is done through the domain class. You define how the domain class should be structured, and the SQL is generated. Plugins Plugins written for Grails are simply Grails applications that override existing code. Similar to Rails Engines, but done right. Java Integration Any Java jars or code libraries can be used within the Grails application easily.
  • 15. 1st Thursday of every month at 6:30 PM Neumont University Room #308