Есть ли явный лидер среди языков на основе JVM? [закрыто]

9

Каково текущее состояние этих проектов, и появился ли один (или два) явным лидером?

Чтобы продемонстрировать мои мотивы для того, чтобы задать этот вопрос, отбросьте свой разум на несколько лет назад Prototype и jQuery встречались с другими игроками, такими как MooTools, которые тоже боролись за выживание. Перенесемся в будущее, и по общему мнению, jQuery - лучшая библиотека JavaScript общего назначения.

Произошло ли что-то подобное за последние несколько лет с этими языками на основе JVM? Определенные языки впали в упадок и отказ? Из того, что я прочитал, кажется, что Scala, безусловно, хорошо подготовлен, чтобы стать фаворитом, но опять же, почти всему, что я прочитал, уже несколько лет.


Я провел немного больше исследований - у меня была идея проверить объем поиска по годам с помощью Google Trends . Похоже, что Jython и JRuby мало интересуют, в то время как громкость Groovy уменьшается, а громкость Scala постоянна (в худшем случае) или немного увеличивается (в лучшем случае). Это точная оценка?


И да, я имею в виду не-Java языки в JVM, такие как Jython, JRuby, Groovy, Scala, Clojure и т. Д.

rinogo
источник
8
Важно помнить, что пользователи JRuby будут часто искать Ruby всякий раз, когда им интересно узнать о вещах, связанных с синтаксисом, идиомами, примерами и т. Д. Поэтому сравнивать теги или тренды сложно, поскольку Scala и Groovy ссылаются на язык и реализацию, тогда как JRuby просто относится к реализации.
Deckard,
10
Определите «лидера» :) В чистом смысле «количество использованных времен» сама Java является явным лидером
Хейко Рупп,
4
Я ожидаю, что это все еще Java :)
4
Действительно, Java является явным лидером в JVM.
Хирон
4
@jprete: rinogo перечислил языки, но Марк Трапп удалил их и изменил вопрос.
Джонас

Ответы:

12

Никто

Ни у кого нет проникновения на рынок, необходимого для объявления их «победителем» в гонке (если он есть), чтобы найти лучший язык JVM.

Проверка доступных рабочих мест (на сайте careers.stackoverflow.com) в качестве индикатора рынка для людей с этими навыками.

1 отличная работа.
4 скала работы.
21 C # рабочих мест.
22 рубиновых рабочих места.
29 рабочих мест на Python .
34 php рабочих мест.
39 рабочих мест java .
0 для JRuby, Jython или Grails.

Обыскали 23.04.2011, используя почтовый индекс 10001 и дальность 150 миль.

Джош К
источник
Было бы интересно посмотреть, как они взвешиваются по начальной зарплате (или даже по ее диапазону). Но с другой стороны, это привело бы вас прямо к не по теме территории.
GregC
3
Как насчет clojure?
альтернатива
2
Есть ли у карьеры вид проникновения на рынок, чтобы быть разумной выборкой? Общий список показывает 549 рабочих мест (звучит как все списки?).
Стивен Эверс
1
@SnOrfus: Возможно, нет, это был первый, который я начал искать, так как по моему собственному опыту все работы относительно высокого качества и хорошо определены с соответствующими тегами и фокусом. Я перезапущу эти результаты на нескольких других сайтах.
Джош К
@ Джош К. Это разумное решение. +1.
Стивен Эверс
7

Год назад была проведена оценка размеров сообщества Stack Overflow , и Scala получила лидерство, причем Groovy и Clojure были очень близки. Вы можете использовать свободно доступный дамп для создания похожих запросов.

Во всяком случае, я не вижу никакого явного победителя на земле JVM. Прежде всего, есть большая толпа, которая любит динамические языки и не пойдет со Scala. Тогда есть статичная толпа, которая не пойдет с динамическими языками, такими как Groovy.

Но у них у всех есть МАЛЕНЬКИЕ подписки, по сравнению с любым из больших языков там. Им не хватает критической массы, чтобы обеспечить долгосрочный успех, который станет признаком настоящего победителя.

Даниэль С. Собрал
источник
1
+1 за полезную ссылку - но я бы добавил, что суть языков JVM в том, что им не нужна критическая масса точно так же, как это делают полностью независимые языковые экосистемы, поскольку они могут использовать все библиотеки и инструменты Java. Я бы сказал, что Clojure, Scala, JRuby и Groovy уже прошли критическую массу в результате этого.
Микера
3

Наиболее связанный вопрос: как вы поощряете вашу организацию перейти с Java на Scala?

Scala предлагает другую парадигму программирования и синтаксис, в то время как Groovy предлагает низкую кривую обучения для разработчиков Java. Оба имеют свое место.

Связанные комментарии от сообщества: /programming/3644251/what-are-your-experiences-developing-in-scala-lift/3646365#3646365

Судя по положительным комментариям, я бы сказал, что Scala - хорошая ставка.

Я также считаю, что интуитивно понятный инструмент, который не вызывает много вопросов, является положительным показателем, поэтому количество вопросов по переполнению стека не является хорошим показателем.

GregC
источник
3
Чувства не дают ответа. У вас есть факты и ссылки ?
2
Марк отличный модератор!
GregC
Спасибо, но теперь ваш ответ не касается вопроса. Вопрос в поиске конкретной информации о статусе проектов, а не о том, когда вы думаете, когда использовать тот или иной. Ваша первоначальная формулировка ответила на вопрос, просто нужны ссылки для ее подтверждения.
@Mark Trapp: ваши усилия очень приветствуются. Я должен сосредоточиться на сути немного больше.
GregC
3

Этот вопрос основан на совершенно неуместном предположении, что языки JVM являются альтернативами друг другу. Вы проводите аналогию с наборами инструментов JS, которые используют один и тот же язык, имеют одинаковую аудиторию и используют одинаково. В случае языков JVM их объединяет только то, что они реализованы с использованием JVM. Кроме того, это настолько широкий спектр языков, сколько вы можете получить: статический, динамический, функциональный, объективный ...

Например, неправильно полагать, что Jython является альтернативой Scala или JRuby; это гораздо больше альтернативы CPython, IronPython или PyPy.

Что касается текущего ответа с наибольшим количеством голосов , он также делает ложное предположение, что описание работы будет говорить о деталях реализации. На самом деле, даже если компания использует Jython или JRuby, описание работы все равно потребует опыта работы с Python или Ruby. Jython соответствует спецификации языка, поэтому Jython - это Python , аналогичным для JRuby является Ruby .

Vartec
источник
+1. Очень хороший момент. Нет такого понятия, как «язык на основе JVM». Сама Java может быть скомпилирована в JavaScript (GWT) или в собственные двоичные файлы (GCJ). С другой стороны, JavaScript может работать на JVM (Rhino), даже если он не был указан среди кандидатов. Весь смысл языков программирования состоит в том, чтобы иметь управляемую абстракцию того, как программы выполняются.
back2dos
0

Четкого лидера нет - Scala, Clojure и Groovy кажутся очень сильными в настоящее время (середина 2012 года).

Некоторые данные опроса:

Хотя это трудно измерить - я думаю, что объявления о вакансиях и индексы, такие как TIOBE, по существу бесполезны для освоения нового языка, поскольку они зависят в первую очередь от очень запаздывающих индикаторов (ваш средний заостренный начальник не собирается нанимать разработчика Clojure, пока, по крайней мере, Через пару лет после того, как ваши нынешние хакеры Clojure создали удивительный потрясающий продукт, и вы, наконец, решили, что вам нужно развивать команду).

mikera
источник