Чи йде Гроуві? [зачинено]


30

Я впевнений, що це питання задавали багато разів. Однак мені подобається запитати це ще раз з наміром, яким є майбутнє цих мов.

Мене вперше познайомили з Groovy і дуже сподобалось. Я відчув, що синтаксис простіший, і він набагато ближче до Яви, і я зміг швидко вивчити Грааль .

Потім з’явилася Scala , і робота над веб-кадрами Lift . Я все ще вивчаю Scala, і мені здається, що синтаксис часом дуже важкий.

Однак мені все ще цікаво, яке майбутнє Groovy. Коли автор Groovy каже , що ніколи б не створив groovy, якби знав про Scala, тоді мене змушує задуматися, чи взагалі є майбутнє. Звичайно, Groovy пройшов довгий шлях, і Grails сьогодні використовується багатьма великими компаніями.

Якби сьогодні дивитись на Граальс проти Ліфта, то Граал був би явним переможцем. Більше компаній використовують це. Але з огляду на все, про що я говорив дотепер, мені цікаво знати, чи варто інвестувати в Groovy? Невже Groovy іде і Scala - кращий вибір? Якщо генеральний директор BMW каже, що він їздить у Mercedes, тоді варто задатись питанням, чому ми не повинні також везти Mercedes, правда?

(Я розумію, якщо це питання дійсно широке і може бути закритим. Я сподіваюся зробити його відкритим Вікі для інших.)


1
Якби сьогодні було дивитись на Граальс проти Ліфта, то Граал був би явним переможцем. Хто каже?
Махмуд Хоссам

Я просто робив за популярністю. У Grails є x1000 підписників, а Lift має лише x200ish на stackoverflow.
Амір Рамінфар

Може, підйом легше? має кращу документацію? а може, Грааль вже довше, ніж ліфт?
Махмуд Хоссам

3
Більш справедливо було б порівнювати Grails з Scala + Play Framework. Play Framework також можна використовувати з Java і надихається Ruby on Rails.
Йонас

3
"Якби сьогодні було дивитись на Grails vs Lift, тоді Grails був би ясним переможцем" , ви сказали 2 роки тому, але Play! 2 легко витіснив ліфт як провідну веб-структуру на базі Scala, і це вулиці попереду Граалу (ІМХО).
Vorg van Geir

Відповіді:


23

Я не думаю, що Groovy не зникне, це сукупність самозбереження. Граальні рамки побудовані навколо Groovy мови, що є вагомим приводом залишитися в живих. Groovy отримав свою заяву-вбивцю.

Я не кажу, що «Грааль» - це єдиний життєво важливий проект Groovy, Gradle також досить добре. GORM - це дуже зручно. Гант - приємне поліпшення в порівнянні з Мурахом.

Не кажучи вже про те, що Groovy / Grails зараз перебувають під егідою SpringSource, і вони віддані обом.

Якщо генеральний директор BMW каже, що він їздить у Mercedes, тоді варто задатись питанням, чому ми не повинні також везти Mercedes, правда?

Здогадайтесь, що обрав Джеймс Гослінг?


Gradle більше не є відкритим кодом! _!
Мураха

1
Що дійсно має значення, це основна мова та це основні бібліотеки. Ви не можете зробити нічого кращого за Groovy. Основна мова проста та динамічна, вона швидка, а бібліотеки java, такі як apache тощо, кращі, ніж на інших мовах. Це найкраща мова навколо, і через це вона не йде. Плагіни та Грааль - це не важливо - світ динамічних мов, таких як PHP, вже знає, що має значення (як я вже сказав). А ще є tomcat та jboss. Тепер іди і перевіряй Рубі, це жарт! Це гірше, ніж .net! Тепер перейдіть і перевірте Python і з’ясуйте, як обробити помилки в мережевому коді.
Ендрю Сміт

Ви маєте рацію .. Gradle стає все популярнішою, яка використовує сценарії Groovy ..
Кодер,

6

Як і коментарі @The Legend of 1982:

Groovy буде продовжувати триматися, оскільки це динамічна альтернатива Java з синтаксисом, який досить близький до Java, щоб багато розробників могли зробити перемикання (або принаймні спростувати його).

  • Grails постійно перебуває у топ-2 рамах, коли Метт Рейблі робить свої масивні діаграми порівняння для веб-мов JVM. Його, мабуть, найповніший аналіз там.

  • GPars - це новий параметр / API API, який приносить Groovy набагато більше можливостей Scala.

Проблема зі швидкістю буде покращуватися з часом, як Groovy з'ясує, як використовувати виклики з динамікою та інші хитрощі компілятора.


"Grails постійно знаходиться в топ-2 рамок", але основи на PHP не вважаються "рамкою", навіть тому, що переважна більшість підприємств все ще використовують.
Vorg van Geir

3

Groovy - це дуже приємна і недооцінена (навіть, як це її власна творця, як ви вже згадували). Як на мене, його роль в екосистемі Java подібна ролі Луа у світовій екосистемі C / C ++. Так, це не так швидко, але все ж.

Мені буде дуже сумно, якщо бурхливий помре, але ця дорожня карта насправді говорить нам, що це не так вже й погано.

Власне, Groovy - це дуже приємна, акуратна, виразна мова. Що стосується Scala, я вважаю, що Groovy і Scala просто в різних нішах.


3

Не збивати загальної досконалості Groovy чи справді Ruby, але понад 90% веб-трафіку припадає на сайти, написані на PHP, або якусь фреймворку Java.

Я не знаю, звідки у вас "Грааль використовується багатьма великими компаніями", це дуже схоже на те, що сказати "всі компанії, котрі складають 500, використовують Python", що насправді відповідає дійсності, але вони не використовують python для нічого критичного для бізнесу.

Вони не мають права граалів, рейок тощо. Вони чудово підходять для невеликих акуратних майданчиків, але вони не мають масштабів. Крім того, у більшості великих підприємств є хитромудро пов'язані між собою системи, і головна проблема при створенні веб-додатків пов'язана з тим, як підключитися до всіх інших систем, які надають або споживають ваші дані - кодування за умовами просто не працює в цьому просторі.

Основним конкурентом мови Groovy є насправді JPython, який працює в просторі sames (Сценарій на JVM) і використовується для таких же речей (Автоматизовані тести, автоматизовані побудови тощо).


1
Озираючись, ніхто, кого я знаю, не використовує Groovy в наші дні, і в моєму районі немає рекламних записів Groovy. Тож, звичайно, це не виглядає добре. Я впевнений, що він використовується, але це не основна технологія.
Брайан Ноблеуч

1
@Brian Groovy - це єдиний можливий вибір, якщо вам потрібно використовувати Grails. (То, правда, Грааль все більше витісняється з більш чистих користувачів, таких як Play! 2.)
Vorg van Geir

@James Не забувайте Eclipse як Groovy-убивця для сценаріїв JVM, автоматизованих тестів та побудов тощо
Vorg van Geir

Я зараз натрапив на місцевий магазин із використанням Groovy! Однак я ще не зустрічаю всіх, хто використовує Грааль.
Брайан Ноблеуч

2

Продуктивність Groovy 2.0 перетворює Groovy зараз у лігу, дуже близьку до Яви, див. Http://java.dzone.com/articles/groovy-20-performance-compared Орієнтир у цій статті дуже грубо, але я зараз працюю над новим орієнтиром для Groovy 2.1, який базується на Роберті Гундті (https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf) для порівняння продуктивності Google Go з іншими мовами. Мені потрібно 2-3 тижні, поки я не закінчу з написанням статті, але вимірювання виглядають дуже добре поки що. Groovy2.1 з @CompileStatic і JDK7 має приблизно таку ж продуктивність, як і Java з JDK6 (!).

Я думаю, що Groovy більше конкуруватиме з Котліном і, можливо, з Цейлоном, а не зі Scala. Scala - це скоріше академічна дослідницька мова (хоч і дуже цікава), і не стільки мова, щоб виконати роботу, як Groovy та Kotlin. Якщо вам просто не вистачає міксинів, методів розширення, справжнього закриття та речей на Java, це великий крок, який ви повинні зробити, щоб просто це отримати. Синтаксис Groovy дуже близький до Java, що вважає справжньою точкою продажу порівняно з Kotlin.


4
Я прошу не погоджуватися з приводу того, що Скала є академічною. Це насправді дуже продуктивно і корисно, і зараз він використовується у багатьох фінансових установах, на Linkedin, Twitter тощо. Я фактично спробував і Scala, і Groovy тут, де я працюю, і ніколи б не вибрав Groovy для проектів над помірним порогом складності.
Андреа

1
Лише минулого тижня виникла серйозна помилка в режимі статичного складання Groovy 2.1 . Ви можете отримати швидкість за допомогою помилок (тобто статичних Groovy) або ви можете отримати надійність, але slooooooow (тобто динамічно складений Groovy), але ви не можете отримати як швидкість, так і надійність. Мови програмування квантового ефекту нікому не корисні.
Vorg van Geir

1
Groovy - це мова, що додається до Java (тобто додає Java деякі функції). Досить складні системи створили бен з Java. Тому я не думаю, що вам потрібна не дуже складна мова для написання складних додатків. Я додав кілька помилок компілятора Groovy до бази помилок Groovy, і я вважаю, що у Scala є компілятор кращої якості. Але я не думаю, що вам потрібна Scala, оскільки заявка вимоглива. Рішення полягає в розробці та досвіді проблемної області, не стільки в мові.
OlliP
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.