План практического обучения для изучения Grails - PullRequest
10 голосов
/ 03 февраля 2009

Я - Java-разработчик, пытающийся изучать Grails, и я хотел бы познакомиться с как можно большим количеством частей среды Grails. Желательно делать это, решая небольшие реальные проблемы, используя «способ Grails» (DRY, соглашение о конфигурации и т. Д.).

Три примера могут быть:

  • Узнайте о GORM, создав несколько классов (например, «Фильм», «Актер» и т. Д.) И связи / сопоставления между ними (1: 1, 1: N, N: N и т. Д.).
  • Узнайте о поддержке макетов (sitemesh), используя ее для создания верхних и нижних колонтитулов, общих для всех GSP на сайте.
  • Узнайте о поддержке фильтра, используя его, чтобы убедиться, что все обращения к определенному контроллеру осуществляются аутентифицированными пользователями.

Мой вопрос ко всем разработчикам Grails: что бы вы включили в «Учебную программу Grails» и в каком порядке?

Все отзывы приветствуются!

Ответы [ 4 ]

14 голосов
/ 07 февраля 2009

Вот несколько примеров, но имейте в виду, что они довольно тривиальны и не показывают, как система работает вместе. Одной из сильных сторон Grails является то, что различные части объединяются, чтобы уменьшить сложность кода и ускорить разработку. Я рекомендую сделать один проект небольшого размера (например, программное обеспечение для блогов или фотогалерею), который заставит вас коснуться практически всего. В настоящее время я работаю над приложением для управления билетами, и мне пришлось изучать практически все в рамках. На самом деле это не так много материала.

При этом, вот мой список "должны учиться", а также несколько примеров:

  1. Groovy, особенно замыкания, карты и свойства. Если вы пришли с Java, поначалу замыкания могут показаться немного странными. Однако, когда вы обернетесь вокруг них, будет трудно вернуться к языку, который их не использует. Карты и свойства используют идеи, которые могут быть знакомы, но синтаксис и использование достаточно различны, поэтому стоит их внимательно изучить. Grails использует эти три вещи ВСЕ ВРЕМЯ, все в рамках. В качестве хорошего примера рассмотрим BeanBuilder, который создает экземпляры Spring-компонентов, определенных в resources.groovy. Также ознакомьтесь с документацией Groovy по адресу groovy.codehaus.org. Через пару часов вы сэкономите ДНИ в будущем.

  2. Программирование MVC. Модель "MVC" в Grails довольно близко соответствует той, которая используется в Rails, но она существенно отличается от модели "MVC", используемой в настольных приложениях Java. По сути, все входящие URL-запросы являются сообщениями для контроллера, который возвращает представление. Доменные объекты - это данные, которые вы хотите хранить, просматривать и манипулировать с помощью представлений и контроллеров. Создайте форму ввода, которая проверяет ввод пользователя с помощью ограничений, а затем каким-то образом манипулирует им с помощью контроллера. Что-то вроде страницы, которая принимает ваш день рождения и возвращает ваш знак зодиака и животное китайского зодиака. Посмотрите, сможете ли вы заставить его возвращать пользователю ошибки при неправильном вводе.

  3. GORM. GORM очень важен, но вы будете вынуждены изучать его практически в любом выбранном вами проекте. Дайте документацию еще раз, чтобы вы знали, каковы ее возможности.

  4. Фильтры и услуги. Это «способ Грааля» для выполнения СУХОГО программирования. Аутентификация является каноническим примером и идеально подходит для изучения фильтров. Для услуг напишите что-нибудь, что будет отправлено по электронной почте. На сайте Grails есть отличный пример простой службы электронной почты.

  5. Страницы Groovy Server. Если вы раньше работали с шаблонизатором, то это должно показаться вам знакомым. Познакомьтесь с библиотекой тегов GSP, это огромная помощь. Практические примеры включают в себя: практически все. Каждое приложение нуждается во внешнем интерфейсе. Попробуй и сделай это красиво. ПРИМЕЧАНИЕ. Это включает в себя множество вещей, не связанных с Grails, таких как JavaScript, CSS и т. Д. Если у вас нет этих знаний, подготовьтесь к некоторой кривой обучения.

  6. Ваш каталог "conf". Узнайте все файлы там, особенно UrlMappings.groovy. Поиграйте с UrlMappings, чтобы у вас было приложение, которое получает значимую информацию из URL. Что-то вроде /myapp/calculate/36/times/145, где приложение возвращает ответ.

Я бы сказал, что это основы, но есть много других тем, таких как веб-процессы, i18n, тестирование, обработка сессий и так далее. Лучший способ узнать это - создать достойный проект. Пока вы делаете это, вы, вероятно, обнаружите, что думаете: «Черт возьми, я бы хотел, чтобы Граальс сделал ____». Прочитайте отличную документацию на Grails.org, и вы, вероятно, найдете встроенную возможность или плагин, который делает то, что вы хотите. Справочный файл PDF находится на моем рабочем столе, и я нашел его бесценным в процессе обучения.

Да, и посмотрите на код лесов, который генерирует Grails. Вы, вероятно, в конечном итоге представите все это, но это даст вам хорошее представление о том, как работает система.

Удачи и счастливого взлома!

2 голосов
/ 28 августа 2009

Шаг 1 - Изучение Groovy

Если вы уже знаете Java, я настоятельно рекомендую Программирование Groovy . Это намного более кратко и актуально, чем превосходное Groovy в действии . Ни одна из этих книг не описывает существенные изменения языка в Groovy 1.6, поэтому вам также следует прочитать эту страницу .

Шаг 2 - Изучение Грааля

Полное руководство по Grails , вероятно, является стандартным справочником по Grails - убедитесь, что вы получаете второе издание. Grails в действии немного новее, но я не читал его, поэтому не могу комментировать дальше. Я нашел TDGTG немного более легким для GORM, поэтому вы можете также рассмотреть возможность проверки Grails Persistence с помощью GORM и GSQL . Это очень короткая книга, но на вес золота.

Шаг 3 - Погружение

Попробуйте изменить пример приложения в книге Grails или создайте свое собственное с нуля. Консоль Groovy - отличный способ поэкспериментировать с фрагментами кода Groovy.

0 голосов
/ 17 февраля 2009

Я бы действительно рекомендовал прочитать Определенное руководство по Grails, второе издание . Он охватывает все, что вам нужно знать о написании приложений на Grails. Вероятно, ему не хватает знания «что происходит под капотом», но вы должны освоить его. Вы можете купить его в формате PDF и сразу же начать читать.

У вас также должен быть список плагинов для использования - у Grails есть несколько действительно хороших, которые пригодятся. Я могу рассказать вам о некоторых из них, которые я использую, но это может быть хорошим вопросом и здесь. : -)

0 голосов
/ 03 февраля 2009

Если аудитория не знакома с программированием в Groovy , должно быть введение в это. Ява будет работать, но она будет полезна, когда вы увидите, насколько менее подробный код в Groovy. При обсуждении GORM включите ограничения и их влияние на проверку . Строительные леса экономят время при запуске нового проекта, поэтому обязательно включите его. Одна из особенностей Grails, которая действительно помогла мне, это Плагины . Выберите несколько и покажите, как они предоставляют решения, экономя время разработки. Плагин security подходит прямо к теме filter , которую вы упомянули. Тестирование , может ли быть достаточно тестов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...