Grails report, JEEConf 2012

3,281 views

Published on

Groovy and Grails presentation on JEEConf 2012, May 19, Kiev, Ukraine

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,281
On SlideShare
0
From Embeds
0
Number of Embeds
2,382
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Grails report, JEEConf 2012

  1. 1. Grails Священный грааль web-разрабочика на JavaGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 1
  2. 2. • 1998 Korzh.com Разработка и продажа software. Компоненты для Delphi и .NET: Localizer, EasyQuery.NET • 2005 Beacon CRM/CMS web-application Spring, Sitemesh, JDBC • 2011 Wishpresent.com social wish-listСергей Корж Groovy & Grailshttp://korzh.comhttp://wishpresent.comsergiy@korzh.comhttp://twitter.com/korzhshttp://facebook.com/sergiy.korzh Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 2
  3. 3. Yet another one Java web framework?Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 3
  4. 4. - the search is over• Язык Groovy == Java++• Полная соместимость с Java (binary & source)• All-inclusive: библиотека, web-сервер, БД, IDE (STS)• Плагины• Сильное коммюнити• Надежный вендор Grails == SpringSource == VMWare Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 4
  5. 5. НЕ изобретаем велосипед!Groovy & Grails. Author: Sergiy Korzh JEEConf, May 2012, Kiev 5(Wishpresent.com)
  6. 6. Всякие загадочные абревиатуры• CC - Convention over configuration• MVC - Model-View-Controller• DI, IoC - Dependency Injection, Inversion of control• DSL - Domain specific language• ORM - Object relational mapping• DDD - Domain Driven Design Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 6
  7. 7. Groovy: Java on steroids• Динамический язык для JVM• Foo.java -> Foo.groovy == OK• Все библиотеки доступные для Java будут работать в Groovy• Очень легкий для изучения для Java программистов• Меньше кода, но он более выразительный и понятный Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 7
  8. 8. “Hello world” – Java wayGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 8
  9. 9. “Hello world” – Groovy wayGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 9
  10. 10. Groovy: базовые конструкции• Коллекции: • Хеши:Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 10
  11. 11. Groovy: closures • Блок кода • Может быть передан как аргумент в функцию • Может принимать параметры • Может возвращать значение • Может быть сам возвращенGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 11
  12. 12. Groovy: closures 2Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 12
  13. 13. Groovy: syntax sugarGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 13
  14. 14. Groovy: more syntax sugarGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 14
  15. 15. Grails: folder structure grails-app conf - конфигурационные файлы controllers - контроллеры domain - доменные классы i18n - ресурсы для локализации services - классы сервисов taglib - библиотеки тегов views - views (GSP файлы) layouts - макеты lib - дополнительные либы (jar файлы) src - дополнительные классы java на Java groovy на Groovy test web-app - статика, скрипты, JEE configuration files css images js WEB-INFGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 15
  16. 16. Grails: создание нового проектаGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 16
  17. 17. Wishlist: Класс UserGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 17
  18. 18. Wishlist: Класс WishGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 18
  19. 19. Wishlist: создание контроллеровGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 19
  20. 20. Wish-list: run-app: voilà! voilGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 20
  21. 21. Wish-list: User CRUDGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 21
  22. 22. Wish-list: User CRUD 2Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 22
  23. 23. Wish-list: User CRUD 3Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 23
  24. 24. Wishlist: Wish CRUDGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 24
  25. 25. Wishlist: Domain class modificationsGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 25
  26. 26. Wishlist: Domain class modifications 2Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 26
  27. 27. Wishlist: Controller scaffoldingGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 27
  28. 28. Wish-list: …and action!Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 28
  29. 29. Wish-list: View definitionGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 29
  30. 30. Wish-list: View definition 2Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 30
  31. 31. Wish-list: show object listGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 31
  32. 32. Wish-list: show object list 2Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 32
  33. 33. Подключаем плагиныGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 33
  34. 34. Исправления в классе UserGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 34
  35. 35. Добавляем пользователя и рольGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 35
  36. 36. Добавляем секюрность в контроллерGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 36
  37. 37. Voila: теперь у нас есть security А на самом деле мы обратились к /wish/mylist/Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 37
  38. 38. Grails 2.0 - что новенького?• Новая консоль команд• Новый reloading agent• Новая страница test report• Улучшенная страница сообщения об ошибках• H2 database• Groovy 1.8• Static resourcesGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 38
  39. 39. Резюмируем: почему именно Grails?• Работает везде где доступна Java• Надежный вендор SpringSource, он же VMWare• Берем самое лучшее! Spring + Hibernate + SiteMesh + Eclipse + … да что угодно еще• All-inclusive пакет Начать разработку можно скачав один zip файл• Язык Groovy Существенное ускорение разработки. Прост в освоении для любого вменяемого Java программера• Расширябельность (плагины) Если вы не нашли для чего-то плагин под Grails – скорее всего этого не существует!Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 39
  40. 40. Grails Links• Grails: http://grails.org/• Groovy: http://groovy.codehaus.org/• SpringSource: http://www.springsource.com/• Spring Tool Suite: http ://www.springsource.com/developer/stsGroovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 40
  41. 41. Questions?Groovy & Grails. Author: Sergiy Korzh (Wishpresent.com) JEEConf, May 2012, Kiev 41

×