All streams
Search
Write a publication
Pull to refresh
86
0
Lite @Lite

Пользователь

Send message
В Groovy необязательно объявлять конструктор из-за приятной возможности:

class A {
  def b
  def c
  def d
}

def a = new A(b:0, c:1)


И, так уж и быть, открою самую тёмную сторону Groovy: он отучает использовать точку с запятой, что потом может вылезать боком. ;)
Нельзя забывать, что Groovy фактически поддерживает синтаксис Java и поддерживает полный доступ к библиотекам Java. Это очень большой плюс для перехода. Сами же выше указали, что разработчики мигрируют очень неохотно. А тут практически и мигрировать не надо. ;)
Судя по западным блогам, есть таки люди, которые переползают с Ruby на Groovy. А это уже Java-платформа. Кроме того, я не стал бы цепляться за «угрохано больше ресурсов». Java предоставляет реальные преимущества в виде мультиплатформенности, неплохого быстродействия, прорвы разнообразных библиотек и множества разработчиков.
А вы сами внимательно посмотрите чем является свойство в IL. ;)
Несмотря на дополнительные мета-данные это всего-навсего метод.
Всегда больше косился на БД, чем на логику. Я не прав?
В тексте действительно было про все квадраты меньше 100, но поскольку в коде используется диапазон значений от 1 до 10 (а не число 100), то я счёл более корректным перевести как перевёл. Так точнее. О простых числах там ничего не говорится, кстати.
Разделите два понятия: синтаксис языка и получаемый байт-код. Тогда плюс Groovy станет понятен: одной строкой генерится байт-код, который на Java можно получить только несколькими строками. Ввиду того, что свойства используются повсеместно, это даёт ощутимый выигрыш в объеме кода и простоте поддержки. Это, кстати, не приводит к нарушению инкапсуляции (в отличие от public-полей). И если вдруг понадобится усложнение getter или валидация в setter, вы можете их добавить совершенно не нарушая совместимости. Код, зависящий от вашей библиотеки, не надо будет перекомпилировать.
Ой, точно. Спасибо за замечание. Вот что бывает когда постоянно пользуешься delicious :)
Забыл сказать, что в Groovy тоже можно ограничить область действия добавленного метода или преопределённого оператора:

class StringCalculationCategory {
  static def plus(String self, String operand) {
    return self.toInteger() + operand.toInteger()
  }
}

use (StringCalculationCategory) {
  assert 1 == '1' + '0'
}
Меня Scala давно интересует, но надо найти хорошее руководство. Статья на RSDN мне в своё время показалась весьма жёсткой, хотя и мозгонаполняющей.
В вашем примере нет свойств и нарушена инкапсуляция.
Прозрачное взаимодействие с Java, видимо, тоже многого стоит. Вот уж на чём действительно много существующего кода. :) Хотя делать умный вид не буду, ибо на Ruby писал мало, а про JRuby только читал.
Нельзя забывать о том, что Rails — гораздо более зрелый проект, чем Grails и для него существует много вкусностей, которые пока не доступны в последнем. JRuby фактически имеет смысл только из-за Rails. Хотя лично мне JRuby действительно уже не кажется актуальным.
А кто мешает? По крайней мере для скриптов и небольших собственных проектов эти языки каждый может использовать хоть сейчас. Начните с себя!
> Хорошо придумал: вот вам статья, но если она показалось вам поверхностной, то мопед не мой, я только разместил объяву :)

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

> Поток — это не процесс, я думаю тут мешанина из терминов получилась.

Cам морщился.

> Нууу, кто использовал pthreads и потоки win32, тот знает, что разница в их работе разительна…

Вот это я и называю полезным комментарием. Тема интересная и «вечная». Почему бы не сделать более качественную статью по этой теме? Лично я буду рад почитать.
Сильно. Ждём Singularity/Midori, в которой это будет летать. :)
Для тех, кто не знает: на этой странице, под статьёй, после звёздочки «избранное» как раз располагается ссылка на оригинал.
Исправил. Сначала никак не мог найти его имя, так как не подписывает статьи, подлец. :) Но потом увидел маленькую строчку в самом низу.
Fibers в Ruby таки называются нитями или волокнами?
Согласен. Но поднимать java-хостинг — это довольно масштабное мероприятие. Хотя обрадуются поклонники jruby и jython.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity