Хочу всё знать: язык Groovy
Если вы никогда не слышали о языке программирования Groovy, то сейчас самое подходящее время начать им интересоваться. Всё дело в том, что в рейтинге TIOBE, основанном на популярности языков в поисковых системах, Groovy занял 18 место, обойдя за последний год уже знакомые нам Dart и R и вплотную приблизившись к индексам Visual Basic и Object Pascal.
Так что в этом языке такого удивительного и почему только сейчас, спустя 13 лет после своего создания, он начал подбираться к лидирующим позициям?
Краткая справка
Прежде чем понять феномен Groovy, обратимся к моменту его создания. Впервые он был упомянут в 2003 году, как язык, дополняющий Java с возможностями Python, Ruby и Smalltalk. Надо понимать, что в то время Java уже был самым популярным языком программирования, поэтому разработчики пытались придумать не замену, а скорее улучшение.
Так Groovy оказался в компании Java-подобных языков, среди которых также выделялся Scala. Вплоть до 2015 года именно последнему прочили стать заменой Java (самое удивительное, что эти слова принадлежат никому иному, как создателю Groovy Джеймсу Стрэчену), но судьба похоже распорядилась иначе.
Преимущества
Спросив любого человека, который имеет опыт работы с Groovy, вы узнаете, что главное преимущество Groovy – это то, что он спокойно «проглатывает» программы на Java. Если искать сравнение в графике, то Groovy – это новый слой, который, с одной стороны, основывается на исходном изображении и может его в точности повторять, а с другой – способен на качественные преобразования исходника.
Впрочем, есть и реальные полезности, как то возможность использовать замыкания, статическая и динамическая типизации или специальный синтаксис для работы с массивами, списками и регулярными выражениями. Однако именно «бесшовное» сопряжение с Java, сдобренное относительной легкостью изучения, помогло Groovy найти отклики в сердцах программистов.
Что касается стремительного взлёта за последний год, то основной причиной послужил переход под знамена Apache Foundation в мае 2015 года. Сразу после этого, многие ведущие технологические компании, опираясь на репутацию Apache, начали на постоянной основе внедрять и использовать Groovy в качестве одного из инструментов. И стоит признать, от этого сотрудничества пока все в выигрыше.
Кому стоит учить
Всем, кто хочет быть на передовой, чья профессия связана с Java, тестировщикам и тем, кто хочет просто немного расширить свои горизонты. А может вам просто надоело работать со Scala, как например вице-президенту Twitter.
Что почитать
Как всегда, начинаем с перечисления ресурсов от производителя:
http://www.groovy-lang.org — официальный сайт. Если вы последний раз заходили сюда пару лет назад, то сильно удивитесь, как косметическим преобразованиям, так и разделу под названием Documentation. В Apache Foundation быстро нашли причину ранней непопулярности Groovy и поспешили снабдить пользователя всей необходимой информацией;
https://dl.bintray.com/groovy/maven/apache-groovy-binary-2.4.7.zip — дистрибутив Groovy;
http://www.groovy-lang.org/events.html — важные мероприятия, посвящённые Groovy. В России они, к сожалению, пока не проводятся, зато если соберётесь в отпуск заграницу – не забудьте заглянуть и поинтересоваться, нет ли поблизости какой конференции.
Далее перейдем к хорошим книгам:
Grails. Гибкость Groovy и надежность Java, Глен Смит, Питер Ледбрук – прекрасная книга, посвященная главному фреймворку Groovy с массой практических уроков. Преимущественно для веб-разработчиков;
Groovy и Grails. Практические советы, Башар Абдул-Джавад – не столь увлекательное чтиво по сравнению с предыдущим (субъективно), но также будет иметь практическую ценность;
Making Java Groovy, Кеннет Коузен — книга, ориентированная на Java-разработчиков, которым захотелось сделать свою жизнь чуть проще.
Завершим знакомство с Groovy сторонними, но от того не менее полезными ресурсами:
https://habrahabr.ru/post/122127/ — всего за 15 минут вы прочитаете и усвоите основны Groovy.
https://ru.wikibooks.org/wiki/Groovy — довольно неплохой викиучебник на русском языке;
Testing with Groovy — если вы тестировщик и всё ещё читаете этот текст, то эта ссылка специально для вас;
https://plus.google.com/communities/105160926044623621768 — сообщество «груверов» на Google+.