Что должно быть в моей Groovy презентации?

Я готовлю презентацию Введение в Groovy для моей локальной группы пользователей Java, и я в значительной степени собрал ее. То, что я хотел бы увидеть, это то, что вы все думаете, что я просто должен охватить.

Помните, это вводная презентация. Большинство людей - опытные Java-разработчики, но я уверен, что у них мало знаний об Groovy. Я не буду отравлять колодец, упоминая то, что у меня уже есть, чтобы покрыть, поскольку я хочу посмотреть, что может предложить сообщество.

Каковы лучшие вещи, которые я могу охватить (в течение 1 часа), которые помогут мне эффективно сообщить этим Java-разработчикам, насколько полезен Groovy для них?

PS Я поделюсь своей презентацией здесь позже для всех, кто заинтересован

как и было обещано, что моя презентация была представлена здесь

7 ответов

Решение

Я ничего не знаю о Groovy, так что в некотором смысле я готов ответить на это...

Я бы хотел, чтобы вы:

  • Скажите, почему я хотел бы использовать сценарии (в целом) в отличие от Java- что позволяет мне делать это быстрее (как во время разработки), что делает его более читабельным. Приведите соблазнительные примеры того, как я могу использовать куски сценариев в своем основном Java-приложении. Вы хотите, чтобы это относилось к разработчикам Java больше, чем к техническому наркоману.
  • С этим из пути, почему Groovy? Почему бы не Ruby, Python или что-то еще (все они работают на JVM).
  • Не показывайте мне синтаксис, который Java уже может делать (если операторы, циклы и т. Д.) Или если вы делаете это быстро. Скучно, как ад, смотреть, как кто-то прогуливается по синтаксису 101 языка в течение 20 минут.
    • Для синтаксиса, который имеет сопоставимую особенность в Java, возможно, покажите их рядом быстро.
    • Что касается синтаксиса, отсутствующего в Java (замыкания и т. Д.), Вы можете поговорить с ними более подробно.
  • Помните эти примеры из первого пункта. Покажите мне один, полностью работающий (или, по крайней мере, выглядит так).
  • В конце есть время вопроса. Это безумно важно, и с вами становится бременем быть псевдо-гуру:P.

Я не уверен, как работает поддержка сценариев Java6, но я уверен, что это можно сделать безопасным. Я помню кое-что об определении API, который сценарий может использовать до его запуска.

Если это так, то примером, который вы могли бы показать, было бы какое-нибудь приложение для толстого клиента (например, музыкальный проигрыватель), где пользователи могут писать свои собственные сценарии с API, который вы предоставляете им в Groovy, что позволяет им создавать интересные и безопасные сценарии для своих приложений. способы (например, создание пользовательских столбцов в списке воспроизведения)

Я бы пошел на:

  1. Затворы
  2. Утка печатать
  3. Строители (XML Builder и Slurper)
  4. GStrings
  5. Grails

Я бы упомянул следующие вещи в дополнение к тому, что уже было сказано:

  • GDK - расширения / дополнения к существующим классам JDK
  • Взаимодействие между Groovy и Java-кодом (в основном не проблема)
  • Компиляция Groovy-кода в файлы Java .class
  • Синтаксический анализ XML и механизмы доступа к содержимому документа.

Одна вещь, которую мне нравится делать с Groovy, - это реализация интерфейса, определенного в Java как карта от имен методов до замыканий. Это крутая вещь, которую вы можете сделать с Groovy, но, вероятно, далеко за пределы вводной презентации.

Включите пример того, как сделать Java-код более привлекательным и убрать слишком много кода. Подождите, пока они поднимут челюсти с пола, прежде чем продолжить. У Скотта Дэвиса есть простой пример в начале Groovy Recipes, который занимает 35 строк Java или 3 строки Groovy.

Вы должны обязательно показать им, как создать быстрое приложение Grails. Два предметных класса, которые связаны между собой. Создайте базовое приложение CRUD. Объясните, что таблицы создаются за кулисами с помощью GORM(Hibernate). Затем объясните, что вы можете создать файл war и развернуть его так же, как и любой другой файл war Java. Вы также можете добавить Grails/Groovy в существующий проект Java/JSP, чтобы он не требовал значительных изменений или изменения парадигмы.

Groovy / Grails - это просто Ruby/Rails для Java-людей. Я бы также рассмотрел плагины для Netbeans/Eclipse. Groovy/Grails только сейчас получают полную поддержку в основных IDE.

Наконец, если вы можете найти хорошую диаграмму, которая показывает, как Grails построен поверх Spring, Hibernate, Quartz, Sitemesh и Groovy, я думаю, что люди поймут, что есть сундук с сокровищами, ожидающий разблокировки.

Вот недавняя презентация groovy и grails, которая кажется представительной: http://jshingler.blogspot.com/2009/01/codemash-2009-groovy-and-grails.html

[Больше комментария, чем ответа] Les, Отлично сделано на презентации Groovy. Просматривая его, я вспомнил дюжину особенностей Groovy, о которых я забыл. (Я довольно хорош в Groovy, но он так богат возможностями...) Я буду использовать ваши слайды презентации как карточки, пока не изучу все это. Благодарю.

Другие вопросы по тегам