SlideShare a Scribd company logo
1 of 15
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
"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."
!=
!=

** 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

More Related Content

What's hot

Greach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovyGreach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovyIván López Martín
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScriptJorg 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 DevelopersRutenis Turcinas
 
re-frame à la spec
re-frame à la specre-frame à la spec
re-frame à la specKent Ohashi
 
Groovy AST Demystified
Groovy AST DemystifiedGroovy AST Demystified
Groovy AST DemystifiedAndres 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 programmingahfast
 
Metaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And GrailsMetaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And GrailszenMonkey
 
Exploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLExploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLBarry 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 osGenchiLu1
 
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 GroovyKevin H.A. Tan
 

What's hot (20)

Greach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovyGreach 2014 - Metaprogramming with groovy
Greach 2014 - Metaprogramming with groovy
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScript
 
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
 
re-frame à la spec
re-frame à la specre-frame à la spec
re-frame à la spec
 
Groovy AST Demystified
Groovy AST DemystifiedGroovy AST Demystified
Groovy AST Demystified
 
Webpack & EcmaScript 6 (Webelement #32)
Webpack & EcmaScript 6 (Webelement #32)Webpack & EcmaScript 6 (Webelement #32)
Webpack & EcmaScript 6 (Webelement #32)
 
Structured web programming
Structured web programmingStructured web programming
Structured web programming
 
Metaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And GrailsMetaprogramming Techniques In Groovy And Grails
Metaprogramming Techniques In Groovy And Grails
 
Dart
DartDart
Dart
 
Exploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQLExploring Ruby on Rails and PostgreSQL
Exploring Ruby on Rails and PostgreSQL
 
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?
 
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...
 
R ext world/ useR! Kiev
R ext world/ useR!  KievR ext world/ useR!  Kiev
R ext world/ useR! Kiev
 
Groovy & Grails
Groovy & GrailsGroovy & Grails
Groovy & Grails
 
Understanding how concurrency work in os
Understanding how concurrency work in osUnderstanding how concurrency work in os
Understanding how concurrency work in os
 
Ruby Presentation
Ruby Presentation Ruby Presentation
Ruby Presentation
 
Golang for OO Programmers
Golang for OO ProgrammersGolang for OO Programmers
Golang for OO Programmers
 
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...
 
Introduction to Groovy
Introduction to GroovyIntroduction to Groovy
Introduction to Groovy
 
Fall in love with Kotlin
Fall in love with KotlinFall in love with Kotlin
Fall in love with Kotlin
 

Viewers also liked

Specialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ AshishSpecialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ AshishAshish 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.pdfMoscowdebt
 
University of Stellenbosch Academic Results
University of Stellenbosch Academic ResultsUniversity of Stellenbosch Academic Results
University of Stellenbosch Academic ResultsMargie Nortje
 
The Welding Institute Membership Certificate
The Welding Institute Membership CertificateThe Welding Institute Membership Certificate
The Welding Institute Membership CertificateMoustafa 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 registrationRuari Harrison
 
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...The webportal of the Mayor and the Government of Moscow
 
О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...The webportal of the Mayor and the Government of Moscow
 

Viewers also liked (15)

The Grails Framework.
The Grails Framework.The Grails Framework.
The Grails Framework.
 
Specialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ AshishSpecialized Diploma in Health Insurance_ Ashish
Specialized Diploma in Health Insurance_ Ashish
 
"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...
 
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...
 
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...
 
реализация гп спорт москвы 14 04 2014 (09 30)
реализация гп спорт москвы 14 04 2014 (09 30)реализация гп спорт москвы 14 04 2014 (09 30)
реализация гп спорт москвы 14 04 2014 (09 30)
 
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
 
University of Stellenbosch Academic Results
University of Stellenbosch Academic ResultsUniversity of Stellenbosch Academic Results
University of Stellenbosch Academic Results
 
The Welding Institute Membership Certificate
The Welding Institute Membership CertificateThe Welding Institute Membership Certificate
The Welding Institute Membership Certificate
 
final research[1][1]
final research[1][1]final research[1][1]
final research[1][1]
 
full academic record + proof of registration
full academic record + proof of registrationfull academic record + proof of registration
full academic record + proof of registration
 
Общественная пешеходная зона «Музейный парк»
Общественная пешеходная зона «Музейный парк»Общественная пешеходная зона «Музейный парк»
Общественная пешеходная зона «Музейный парк»
 
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...Информация об итогах реализации мероприятий по созданию и благоустройству общ...
Информация об итогах реализации мероприятий по созданию и благоустройству общ...
 
О мероприятиях посвященных Дню старшего поколения
О мероприятиях посвященных Дню старшего поколенияО мероприятиях посвященных Дню старшего поколения
О мероприятиях посвященных Дню старшего поколения
 
О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...О присвоении наименований линейным транспортным объектам города Москвы и стан...
О присвоении наименований линейным транспортным объектам города Москвы и стан...
 

Similar to Introduction To Grails

Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Reviewnetc2012
 
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.pdfohupalo
 
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 FrameworksAngelin R
 
Azure serverless architectures
Azure serverless architecturesAzure serverless architectures
Azure serverless architecturesBenoit 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 scriptAMC 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 AboutBJIT Ltd
 
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 railsEvgeniy Hinyuk
 
Introduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy HinyukIntroduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy HinyukPivorak MeetUp
 
OUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryOUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryBrendan Tierney
 
Viridians on Rails
Viridians on RailsViridians on Rails
Viridians on RailsViridians
 
The Scala Programming Language
The Scala Programming LanguageThe Scala Programming Language
The Scala Programming LanguageHaim Michael
 

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
 
Mean stack
Mean stackMean stack
Mean stack
 
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
 
What is Mean Stack Development ?
What is Mean Stack Development ?What is Mean Stack Development ?
What is Mean Stack Development ?
 
What is scala
What is scalaWhat is scala
What is scala
 
Comparison of Java Web Application Frameworks
Comparison of Java Web Application FrameworksComparison of Java Web Application Frameworks
Comparison of Java Web Application Frameworks
 
Introduction to Spring & Spring BootFramework
Introduction to Spring  & Spring BootFrameworkIntroduction to Spring  & Spring BootFramework
Introduction to Spring & Spring BootFramework
 
Azure serverless architectures
Azure serverless architecturesAzure serverless architectures
Azure serverless architectures
 
Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)Apache Drill (ver. 0.2)
Apache Drill (ver. 0.2)
 
Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production
 
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
 
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
 
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
 
Grails
GrailsGrails
Grails
 
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)
 
Lecture #5 Introduction to rails
Lecture #5 Introduction to railsLecture #5 Introduction to rails
Lecture #5 Introduction to rails
 
Introduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy HinyukIntroduction to Rails by Evgeniy Hinyuk
Introduction to Rails by Evgeniy Hinyuk
 
OUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryOUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th January
 
Viridians on Rails
Viridians on RailsViridians on Rails
Viridians on Rails
 
The Scala Programming Language
The Scala Programming LanguageThe Scala Programming Language
The Scala Programming Language
 

Recently uploaded

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 

Recently uploaded (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 

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
  • 3.
  • 4.
  • 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."
  • 6.
  • 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

Editor's Notes