Может ли Racket создавать визуально потрясающие приложения наравне с коммерческим программным обеспечением?

Хотя Racket позволяет создавать приложения с графическим интерфейсом (даже игры), мне интересно, подходит ли он для выпуска коммерческих приложений визуально наравне с Вещи или OmniOutliner. Будет ли такое приложение казаться родным или оно будет выглядеть неуклюжим пасынком, не принадлежащим платформе? Например, приложения Gnome в Ubuntu органично вписываются в платформу, хотя некоторые из них написаны на Ruby или Python.

Может ли Racket справиться с этим, и если да, то может ли кто-нибудь указать мне пример? Я пытаюсь определить, насколько Racket подходит для создания — с визуальной точки зрения — приложений коммерческого качества. Без этого нельзя было бы легко использовать его для создания приложений для продажи, и это, похоже, сводит язык к бэкэнду и академическому использованию.


person Mario    schedule 27.04.2013    source источник


Ответы (4)


Возможно, вас вдохновит SirMail?

В Windows Racket будет использовать собственный Windows API. В OS X он будет использовать Cocoa в Mac OS X, а в Linux — Gtk.

Эта галерея создана для Linux; а вот похожая галерея для OS X.

person soegaard    schedule 28.04.2013

Лучшим известным мне примером является Dr. Racket IDE, которую вы получили вместе с Racket. Он работает на нескольких платформах. Он включает в себя полный исходный код.

person Greg Hendershott    schedule 27.04.2013
comment
Я боялся, что получу такой ответ. Для меня IDE — это не приложение для конечного пользователя. Я имею в виду приложения, которые может использовать типичный нетехнический специалист, а не инструмент, используемый для их создания. - person Mario; 28.04.2013
comment
Хорошо, я вижу; Я пропустил это в вашем вопросе. Но по критериям, которые вы упомянули (используйте множество встроенных функций графического интерфейса, несколько платформ ОС, полный исходный код), я думаю, что это самое большое реальное приложение с графическим интерфейсом, и оно имеет наибольшее количество пользователей (если не вид пользователей, которых вы имели в виду). - person Greg Hendershott; 28.04.2013

Графический интерфейс Racket написан для создания программ, которые работают в Windows, OS X и Linux без изменения ни одной строки в коде.

Изучение вещей и OmniOutliner Я вижу, что приложения только для OS X. Это означает, что они используют элементы графического интерфейса, характерные для OS X, поэтому вывод должен заключаться в том, что вы не можете создавать столь же отточенные интерфейсы, если вы придерживаетесь racket/gui.

Однако есть серебряная подкладка. Racket включает в себя Object C FFI, поэтому вы можете напрямую использовать элементы графического интерфейса OS X. Поскольку вы заинтересованы в написании приложения только для OS X (я полагаю), у вас больше свободы действий, чем в независимой от ОС библиотеке графического интерфейса.

В качестве примера внедрения элементов графического интерфейса OS X в программу Racket я укажу вам на этот проект, который встраивает WebKit в Racket: https://github.com/shekari/racket-webkit

person soegaard    schedule 05.05.2014
comment
Не интересует OS X в частности. Интересно посмотреть, какой уровень приложения Racket может создать с эстетической точки зрения. Может ли он создать что-то похожее на вещи визуального качества? Частично это будет зависеть от того, сколько видов управления ему доступно. Было бы достаточно указать мне на любое визуально ошеломляющее коммерческое приложение, созданное Racket. - person Mario; 06.05.2014
comment
Насколько мне известно, нет приложения, на которое можно было бы указать. Это не означает, что вы не можете создать такое приложение. Все элементы GUI в предоставленной библиотеке GUI реализованы через C FFI (или Objective C FFI). Это означает, что в вашей ОС есть элемент GUI, не предоставленный библиотекой GUI, вы можете импортировать его через FFI. - person soegaard; 06.05.2014

Не очень впечатляющий графический интерфейс, но это соответствует стороне вопроса «конечного пользователя»: игра Towers в Ubuntu. (исходный код)

Гораздо меньше со стороны «конечного пользователя», дизайнер графического интерфейса для приложений Racket (старые скриншоты в Windows).

person Metaxal    schedule 02.05.2014