Различаются ли синтаксис Ruby и JRuby? - PullRequest
3 голосов
/ 20 апреля 2011

Возможно, это мой худший вопрос, но я сейчас нахожусь в процессе выбора Ruby vs. Jruby для проекта, который находится на стадии технологического исследования, поэтому синтаксис остается одним и тем же небольшим беспокойством о гибкости.

Это два разных синтаксиса или оба выглядят одинаково?

Ответы [ 3 ]

11 голосов
/ 20 апреля 2011

Краткий ответ : они используют один и тот же синтаксис.Существуют небольшие различия в доступных объектах и ​​методах, но синтаксис тот же.

Более длинный ответ : Ruby 1.9 использует немного другой синтаксис, чем Ruby 1.8.Первоначально JRuby отставал от поддержки 1.9, но постепенно догонял.Если вы говорите о Ruby 1.8 против JRuby, то это то же самое.Если вы говорите Ruby 1.9 против JRuby, то это то же самое, что и JRuby 1.6.0RC2 или новее .

Компилятор обрабатывает все1.9 синтаксис сейчас

3 голосов
/ 21 апреля 2011

Рубин это язык. Он имеет несколько реализаций, но есть одна ссылочная реализация, известная как MRI (Ruby интерпретатор Matz) или C-Ruby (потому что она написана на C). Существует также проект спецификации ruby, который пытается документировать, как должен вести себя ruby, а не просто «делать то, что делает MRI».

Существует также несколько версий ruby, 1.8.7 и 1.9.1 - наиболее часто встречающиеся в наши дни.

При этом цель всех реализаций (включая JRuby, Ironruby, Rubinius) - соответствовать спецификации и, следовательно, быть совместимым. Таким образом, вы можете написать свой «чистый» код ruby ​​и запускать его в любой реализации, которая лучше.

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

1 голос
/ 20 апреля 2011

тот же синтаксис. отличается только от подключения к базе данных. ruby ​​использует MYSQL2 для подключения к базе данных, а jruby использует jdbcmsql для подключения к базе данных

обязательный гем для подключения к базе данных jruby: activerecord-jdbcmysql-adapter

...