2012-02-21 2 views
9

Является ли Ruby хорошим вариантом для написания (возможно, частично) приложений на платформе независимо от рабочего стола?Является ли Ruby хорошим вариантом для написания автономных приложений для настольных ПК

Есть ли какая-либо библиотека, поддерживаемой написать код для записи окна, Linux, Mac Операционных систем

Я знаю, Java имеет возможности писать настольные приложения, что о Ruby?

+0

Я бы не считал C# хорошим вариантом, если ваша независимость от платформы - ваша цель. Хотя для других платформ, чем Windows, существуют версии .net, они не являются ни полными, ни современными, ни официально не поддерживаемыми. – jupp0r

+0

@ jupp0r Вы правы, я изменил вопрос. –

+0

Вы должны заметить, что исполняемый код является видимым текстовым, даже если вы используете [RubyScript2Exe] (http://www.erikveen.dds.nl/rubyscript2exe/); поэтому он будет соответствовать проектам с открытым исходным кодом. –

ответ

6

Ruby - отличный язык, но поддержка построения графических настольных приложений немного слаба. Я бы, вероятно, использовал JRuby + вашу библиотеку графического интерфейса Java.

Я считаю, что JRuby может быть предварительно скомпилирован в байт-код Java, что также может быть немного лучше для приложений с закрытым исходным кодом, чем обычный Ruby. (Хотя байт-код Java можно легко скомпилировать с обратной связью.)

+0

TideSDK выглядит очень многообещающим, когда речь идет о графическом интерфейсе. Он использует веб-технологии для создания собственных приложений. Поддерживает Ruby, Javascript, Python и PHP. http://www.tidesdk.org/ – Automatico

+0

@ Cort3z, спасибо за обмен этой информацией, но это не «комментарий» к моему ответу. Эта информация принадлежит новому ответу, а не комментарию. –

+0

Да. Я понял, поэтому я [сделал один] (http://stackoverflow.com/a/21417309/741850) сразу после :) – Automatico

2

Я предлагаю вам взглянуть на Shoes. Является ли это хорошим вариантом или нет, это дискуссия, которая зависит от ваших ограничений и предпочтений. Если вам удобнее программировать в Ruby, в отличие от Java или C#, то я определенно считаю, что это хороший вариант.

2

Это зависит от того, какое приложение вы разрабатываете. Я бы не сказал, что ruby ​​- это кросс-таблоформа для приложений, которым, например, нужен сложный gui. Я думаю, что Python немного больше X-платформы из моего опыта, Java определенно. И почему бы не попробовать C++ и Qt?

http://qt.nokia.com/products/

Edit: так как этот вопрос был отредактирован, я хотел бы добавить идти либо с Java или Qt более чем Ruby.

1

Вы можете попробовать FXRuby, он основан на библиотеке FOX Toolkit и позволяет использовать кросс-платформенный интерфейс Ruby GUI. Поддерживаются еще более экзотические платформы, такие как FreeBSD. Вы можете упаковать свое приложение вместе с интерпретатором Ruby и всеми необходимыми фреймворками для минимизации зависимостей целевой платформы.

4

Проблема с многоплатформенными графическими библиотеками заключается в том, что они выглядят уродливыми на любой платформе.

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

Существует только одна многоплатформенная библиотека графического интерфейса, которая не вызывает никаких моих психических предрассудков: HTML5. Но, конечно, вы не можете получить доступ к родному OS API.

Я бы порекомендовал себя, чтобы попытаться определить архитектуру вашего приложения таким образом, чтобы 90% кода является визуализирующим агностиком. А затем постройте этот 10% уровня визуализации для любой платформы adhoc.

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

1

IMHO Ruby - отличный выбор для кросс-платформенных графических интерфейсов. Однако это зависит от того, какой инструмент GUI вы используете. Инструменты: Qt, Tk, wxRuby, Shoes, GTK и т. Д. Я выбрал GTK, потому что вы можете использовать конструктор интерфейса Glade для создания ваших форм.Вы можете увидеть несколько примеров ГПИ строить с рубином на:

http://www.visualruby.net

о внешнем виде программ, я попробовал свои программы на Ubuntu, Win7 и Win XP, и все выглядит идеально. Кроме того, если вы посмотрите на веб-сайт Tks, у них есть скриншоты TK GUI на разных платформах, и они выглядят также фантастически.

Главное преимущество написания GUI в рубине заключается в том, что вы используете рубин вместо java. Лично я считаю, что рубин - это радость для работы. Удачи.

+0

I второй GTK. Посмотрите на это: http://www.visualruby.net/site/Screen%20Shots.html – rpattabi

0

Я считаю, что это может быть с TideSDK. Недавно я обнаружил это и, похоже, один из лучших подходов к многоплатформенному gui, который я видел. Он использует HTML5, но он поддерживает такие вещи, как системный трей и другое собственное поведение.

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

Одна заметка о TideSDK сегодня: она поддерживает только Ruby 1.8.7. Это для меня большая проблема, так как многие из драгоценных камней, которые я хочу использовать, - 1.9.2+. TideSDK, развернутый на linux, равен 1.9, но не osx или windows, они находятся на 1.8.7. Это то, что, надеюсь, скоро будет обновлено. Хотелось бы увидеть несколько рубиновых версий.

В любом случае. Посмотри на это. Это с открытым исходным кодом, ака. бесплатно, так что это хорошо.

Смежные вопросы