Какой язык JVM соответствует моим потребностям? - PullRequest
1 голос
/ 13 июля 2009

Я хочу выучить некоторый язык JVM, но есть так много

РЕДАКТИРОВАТЬ : Как выбрать язык из всех языков JVM?

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

(раньше у меня был список вопросов, но мне сказали, что они уже есть в Википедии)

Ответы [ 3 ]

5 голосов
/ 13 июля 2009

Сначала мы должны знать, что вам нужно!

Поскольку большинство вопросов, о которых вы спрашиваете, уже даны в ссылках из статьи в Википедии.

Редактировать : после того, как вы переформулируете вопрос, я предполагаю, что ваша основная цель - весело программировать на новом языке ...

Тогда я думаю, что динамический язык, такой как Groovy или Jython, будет более забавным в использовании, так как вы можете получить дело быстрее и увидеть результаты того, что вы делаете немедленно в интерпретаторе. Лично я предпочитаю Jython, потому что он основан на Python (на самом деле это IS Python, но немного устарел), но я должен признать, что Groovy более тесно связан с JRE, он более синтаксически похож на Java и, следовательно, может быть лучше опция.

Если вы хотите немного изменить свой образ мышления (при условии, что у вас есть процедурный / императивный опыт, как у большинства людей), то я рекомендую вам Scala, Clojure, SISC или Вооруженный медведь CL (тех двоих последних нет в списке Википедии).

Кроме того, я думаю, что стоит присмотреть за Крепостью , которая может стать следующим "Большим" языком для JVM ... Я давно не смотрел на это, но теперь кажется, что он уже готов к загрузке, сборке самостоятельно и тестированию. Если вы хотите по-настоящему повеселиться, возможно, этот вариант будет лучшим, потому что он имеет «действительно классные функции» (например, написание математических выражений в формате, похожем на LaTeX, которые фактически анализируются компилятором и используются для красивой печати документации). и вы будете постоянно удивлены предстоящими изменениями, так как это язык в активной разработке.

5 голосов
/ 13 июля 2009

Как насчет Groovy

Каковы его сильные стороны?

  • динамический набор
  • закрытие
  • ассоциативные массивы
  • безопасный штурман оператора
  • изначально вызывает Java

Для каких приложений он больше всего подходит?

  • скриптовый
  • оформить заказ Grails

Какая у него кривая обучения?

  • довольно легко выучить

Качество документации, поддержка и размер форумов, отвечающих фанатам.

  • хорошо, имеет большое сообщество

Уровень зрелости (выберете ли вы написать большое важное программное обеспечение или просто что-нибудь интересное для своего свободного времени).

  • созревают

Что тебе нравится больше, а что меньше ...

  • Мне нравится то, что они сделали с граалями
2 голосов
/ 13 июля 2009

Вы не говорите, почему вас это волнует, если это язык JVM. Почему время выполнения важно для вас?

Предположим, что был язык, не относящийся к JVM, который получил очень высокие оценки по всем вашим критериям, вас это заинтересовало бы?

Я счастлив в Java, думаю, он достаточно хорош для большого важного программного обеспечения. Он может обоснованно претендовать на зрелость. Очевидно, что есть широкая пользовательская база и активные сообщества.

Обучение: не путайте сам язык и набор окружающих библиотек. Мастерство библиотек - вот что делает вас продуктивным. Вы бы посчитали большой набор API Java недостатком - так много нужно узнать! или наоборот, есть библиотека для всего!

...