Какова лучшая/самая легкая Библиотека GUI для Ruby? [закрытый]

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

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

поймать что-нибудь

try...except Exception as e

повысить предпочтительную ошибку

raise AssertionError()

получить сообщение

e.message

получить тип

type(e)

] Собираем все вместе:

try:
    # some code that raises an error
    g = 10 + '11'
except Exception as e:
    raise AssertionError('{}: {}'.format(type(e), e.message))

Вывод будет:

<type 'exceptions.TypeError'>: unsupported operand type(s) for +: 'int' and 'str'

Это можно очистить, чтобы избавиться от уродливого вывода type(e), но В общем случае, именно так вы бы включили тип ошибки и соответствующее сообщение.

137
задан Chris Pietschmann 4 November 2008 в 04:43
поделиться

17 ответов

Ruby Обувь (почему) предназначается, чтобы быть действительно простая платформа GUI. Я не знаю, насколько полнофункциональный это, все же.

Некоторые хорошие примеры кода могут быть найдены в эти учебные руководства .

кроме того, я думаю полномочия обуви взлом hackety , среда обучения программирования принуждения для молодежи.

85
ответ дан 23 November 2019 в 23:34
поделиться

Мерцание является интересной опцией для пользователей JRuby, которая обеспечивает очень интерфейс выхода Ruby к инструментарию SWT. (SWT является платформой пользовательского интерфейса позади Eclipse, который обеспечивает высокую производительность и знакомые метафоры UI путем использования собственных виджетов на различных платформах, которые это поддерживает: Windows, OS X, Linux, и т.д.) SWT всегда обращался ко мне как к Java-разработчику, но кодирование его было болезненным в экстремальном значении. Мерцание делает процесс намного более простым путем подчеркивания конвенции по конфигурации, и путем оценки Сухости и все другие нормальное совершенство Ruby.

Другая аккуратная опция SproutCore, основанный на JavaScript инструментарий GUI с привязкой Ruby, разработанной Apple. По крайней мере, демонстрации для него выглядят большими, и otherinbox создал довольно гладкий взгляд приложение сверху его. Лично, я провел довольно много часов, пытаясь получить его работающий на двух системах - одном Windows и одном Linux - и не успешно выполнился или на одном - я продолжаю сталкиваться с проблемами зависимости с Merb или другими частями стека SproutCore. Но это интригует достаточно, что я возвращусь после нескольких недель и попробую еще раз, надеясь, что вопросы решены в то время.

8
ответ дан 23 November 2019 в 23:34
поделиться

Центр внимания я действительно наслаждаюсь театральной метафорой.

10
ответ дан 23 November 2019 в 23:34
поделиться

Я недавно начал использовать Qt в качестве платформы GUI для приложения Ruby. Существует привязка, названная QtRuby. Для учебного руководства по быстрому запуску (покрывает только окна) см. этот сообщение

12
ответ дан 23 November 2019 в 23:34
поделиться

Я запустил с FXRuby, потому что он имел книга .

18
ответ дан 23 November 2019 в 23:34
поделиться

Вот хороший ресурс для Вас:

http://en.wikibooks.org/wiki/Ruby_Programming/GUI_Toolkit_Modules

имеет ссылки, сравнивающие в основном всех их.

29
ответ дан 23 November 2019 в 23:34
поделиться

Существует привязка Ruby для QT и GTK, таким образом, Вы не можете пойти не так, как надо с теми (они являются портативными также).

Прагматически настроенные Программисты опубликовали мини-книгу по Ruby с QT и полную книгу по FXRuby, таким образом, я думаю другой хороший выбор последнего.

Обувь, хотя легкий для изучения и милый, является довольно ситуационной и не предоставляет столько же возможностей для средств управления, сколько любой из других делает, поэтому если Вы хотите создать что-нибудь вне простого UI (для не ненависти Обуви, но это еще не является достаточно сформировавшимся), я рекомендовал бы Вам использовать один из более сформировавшихся и протестированных инструментариев.

4
ответ дан 23 November 2019 в 23:34
поделиться

Tk доступен для Ruby. Некоторые хорошие примеры (в Ruby, Perl и Tcl) могут быть найдены в http://www.tkdocs.com/

2
ответ дан 23 November 2019 в 23:34
поделиться

Попробуйте обувь . К сожалению, у меня не было шанса работать с ним все же, но у меня есть предстоящий проект, где я планирую использовать его. Это является межплатформенным. Также API смотрит очень Rubyish, таким образом, я дал бы ему попытку.

2
ответ дан 23 November 2019 в 23:34
поделиться

Wxruby является большой платформой, простой и чистой. Попробуйте его или используйте поляну с рубином (simpliest опция)

2
ответ дан 23 November 2019 в 23:34
поделиться

Используя ironRuby, межболее дерзкий, у Вас есть вся платформа .NET, подразумевая, что можно кодировать Winforms и WPF (я только попробовал Winforms). Это является потенциально кросс-платформенным, так как моно платформа существует

3
ответ дан 23 November 2019 в 23:34
поделиться

Если Вам интересно, , RubyLearning предлагает курс о FXRuby и Обуви. На самом деле курс Обуви проводится в настоящее время.

, Вероятно, самой легкой является Обувь. Как учитель в RubyLearning, я надеюсь, что у нас будут лучшие курсы для учеников.

Некоторые люди застряли в установке FXRuby. Но Обувь имеет установщик для любых платформ (Windows, Mac и Linux).

3
ответ дан 23 November 2019 в 23:34
поделиться

Существует обсуждение здесь , который мог бы быть полезным.

От моего собственного (ограниченного) воздействия, я сказал бы, что обувь была самой забавной и вероятно "самой легкой" войти. Предупредите, однако, что выяснение, что было неправильным, когда что-то повреждается, может быть хитрым (по крайней мере, это было для меня).

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

2
ответ дан 23 November 2019 в 23:34
поделиться

У меня был некоторый очень хороший опыт с QT, таким образом, я определенно рекомендовал бы это.

необходимо быть изделием модели лицензирования все же. При разработке приложения с открытым исходным кодом можно использовать лицензионную версию с открытым исходным кодом бесплатно. При разработке коммерческого применения необходимо будет заплатить лицензионные сборы. И Вы не можете разработать в открытом исходном коде один и затем переключить лицензию на рекламу, прежде чем Вы начнете продавать.

P.S. У меня просто был беглый взгляд на обувь. Мне действительно нравятся декларативные определения элементов UI, таким образом, это определенно стоит исследовать...

3
ответ дан 23 November 2019 в 23:34
поделиться

Если бы Вы ищете межплатформенный GUI, то я настоятельно рекомендовал бы движение с JRuby и Swing.

кроме того, смотрите на библиотека monkeybars , которая является библиотекой Ruby для создания приложений MVC с помощью JRuby и Swing, где можно также использовать превосходный IDE Netbeans для визуального создания GUI.

7
ответ дан 23 November 2019 в 23:34
поделиться

wxWidgets стоит проверить. Это хорошо поддерживается на Ruby через wxRuby. Для приложения в качестве примера взгляните на wxRIDE. Посмотрите его по сравнению с другими инструментариями . Вы могли бы также хотеть проверить Наковальня , который является своего рода платформой выхода направляющих для работы с wx. Это выглядит умирающим теперь, все же.

8
ответ дан 23 November 2019 в 23:34
поделиться

Если вы разрабатываете для Mac, то MacRuby имеет лучшую библиотеку, руки вниз. Помимо молниеносной скорости, она имеет очень красивый GUI-интерфейс под названием hotcocoa. Кроме того, библиотека разработана компанией Apple, использует в качестве базы классы Core Foundation, и работает поверх среды исполнения Objective-C, используя LLVM. В двух словах, она работает очень быстро

.
5
ответ дан 23 November 2019 в 23:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: