2009-05-13 2 views
8

Пробовал ли кто-нибудь смешать JavaFX и JRuby? Я создал настольное приложение JRuby с графическим интерфейсом Swing (100% JRuby), и я играю с идеей замены графического интерфейса JavaFX для более гладкого ощущения.Кто-нибудь пробовал смешивать JavaFX и JRuby?

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

+0

Идея не существует, но даже если это возможно, вам может потребоваться отложить. С недавним приобретением Oracle Sun, многие думают, что они собираются позволить JavaFX умереть. Будучи фанатами Java, я надеюсь, что нет :( – Ross

+0

Eng.Фуад: Я не вижу причин помечать «JavaFx» и «JRuby» в качестве кода. Я также скептически отношусь к релевантности тегов [tag: java] и [tag: swing]; они касательные (особенно [tag: swing]). (Конечно, я не могу отменить редактирование). – echristopherson

ответ

0

Что касается концептуальных различий между JavaFX Script и J Ruby, их немало. Я начну с JRuby. JRuby не является фактически языком, per se. Вместо этого это реализация в Java языка программирования Ruby. Исходный интерпретатор времени выполнения для Ruby был написан на C (и, возможно, на C++, я не уверен). Проект JRuby был запущен некоторыми парнями, которые хотели реализовать исполняемую версию Ruby, написанную на Java вместо этого.

Почему? Ну, есть некоторые интересные преимущества. Прежде всего, они смогли очень легко вызвать код Java из приложения Ruby . Во-вторых, это означает, что программы Ruby в конечном итоге управляются виртуальной машиной Java (JVM) и поэтому могут извлечь выгоду из всей работы по оптимизации , которая была выполнена на JVM за последние десять лет. Сегодня JRuby функционирует только как переводчик, но из того, что я слышал от , один из проектов ведет в начале этого месяца, они очень близки к , способным скомпилировать программы Ruby непосредственно в байт-код JVM, который обеспечит еще одно повышение производительности.

В конце концов, JRuby очень интересен для проектов, которые написаны в Ruby, но которые хотят использовать либо: существующие Java библиотека или существующих Java автономной работы (виртуальная машина и даже приложения/веб-сервера, такие как GlassFish и Tomcat) или оба.

С другой стороны, JavaFX - это язык сценариев, который непосредственно впрыскивается для создания графического материала. Очень прагматичный. Также подходит для использования, когда вы следуете шаблону проектирования в этом случае MVC, если вы следуете правилам, которые должны быть в порядке. Но доверять там может быть очень мало случаев, которые могут начать использовать FX с JRuby.

+0

Вы можете узнать о [JRuby] (http://jruby.org) на странице [JRuby project] (http://jruby.org). Есть хорошая презентация от Google IO на вас тоже, которая попадает в реальную мощь Ruby в качестве первого класса JVM-языка. – will

1

Это будет намного проще при выходе JavaFX 2.0.

1

Начиная с java 7u6 javafx теперь является частью языка java и доступен по умолчанию для Linux, Mac и Windows. Вы можете запрограммировать это на любом языке на jvm, так что теперь вы сможете легко кодировать приложение.

Сценарий JavaFX был отброшен, но технология JavaFX больше и лучше, чем когда-либо. Все теперь включено в API напрямую, поэтому использование Groovy или JRuby обеспечивает отличную среду сценариев для использования JavaFX.

Счастливое кодирование!

4

В настоящее время существует жемчужина JRubyFX проекта JRuby для работы с JavaFX 2.0. Он поддерживает как JavaFX в коде, так и FXML. Большинство вещей должно работать, но в нем есть несколько проблем, которые описаны в Readme.

+0

+1 Я пришел сказать это – nurettin