Кроссплатформенность на практике
Модератор: Модераторы разделов
-
cy6erGn0m
- Сообщения: 119
- ОС: MandrivaLinux/Solaris 10
Re: Кроссплатформенность на практике
на мой взгляд это всё фигня. Зачастую бирка опенсорс означает чрезвычайно низкое качество продукта и только ОЧЕНЬ старые опенсорсные продукты представляют из себя что-то серьёзное. На мой взгляд моно ещё развиваться и развиваться, а ява штука устоявшаяся и куда стабильнее и грамотнее сделанная чем моно. Можете кидаться камнями/помидорами, но это так 
I want to Believe!
They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
-
/dev/random
- Администратор
- Сообщения: 5456
- ОС: Gentoo
Re: Кроссплатформенность на практике
ozone baby писал(а): ↑16.05.2008 15:13почему-то от wxWidgets многие плюются. Лично мне C# больше нравится.
От C# плюются гораздо чаще, чем от wxWidgets. Почитать хотя бы отзывы на этом форуме.
-
Electronix
- Сообщения: 53
- ОС: Slackware, Suse, XP
Re: Кроссплатформенность на практике
Я пробовал работать с WxWidgets, на мой взгляд это еще очень сырая библиотека. Функционал довольно скудный - ну собственно это же ведь бесплатный продукт, и для бесплатного очень даже хороший.
We have no beginning, we have no end. We are infinite.
-
sergio
- Сообщения: 436
- Статус: Интересующийся новичок
- ОС: Debian GNU/Linux 4 & 5
Re: Кроссплатформенность на практике
Некто археолог-любитель выкопал тему, которая обсуждалась в декабре. Так что не флеймите попусту. 
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
-
Electronix
- Сообщения: 53
- ОС: Slackware, Suse, XP
Re: Кроссплатформенность на практике
Ой, блин - да я оказывается некромант, воскреситель топиков 
Извините, честное слово - не заметил.
Извините, честное слово - не заметил.
We have no beginning, we have no end. We are infinite.
-
Iroln
- Сообщения: 201
- ОС: openSUSE 10.3
Re: Кроссплатформенность на практике
Electronix писал(а): ↑17.05.2008 21:56Я пробовал работать с WxWidgets, на мой взгляд это еще очень сырая библиотека. Функционал довольно скудный - ну собственно это же ведь бесплатный продукт, и для бесплатного очень даже хороший.
А по моему WxWidgets мало чем уступает той же Qt особенно для создания не OpenSource кросплатформенных проектов. Скажем, я очень люблю и уважаю такие программы как Code::Blocks и Audacity, и не считаю, что они написаны на сыром инструментарии.
К тому же WxWidgets не такая и молодая (проект был запущен в 1992 году), успела нарастить потенциал, и продолжает бурно развиваться. Функционал для решения тривиальных и не только задач программирования вполне достаточен.
Что-то автора темы давно не слышно, наверное он уже принял для себя, как поступит?
Тайною мир держится
-
Electronix
- Сообщения: 53
- ОС: Slackware, Suse, XP
Re: Кроссплатформенность на практике
Iroln
Наверное. Честно говоря я не в восторге от code::blocks. В линуксе он вообще падает у меня постоянно с включенными плагинами, даже проект не создать (сегментфолитстя - последнию смотрел версию 2.0). Под виндой на него посмотрел - этакая Visual Studio 6, причем версия бетта.
Наверное. Честно говоря я не в восторге от code::blocks. В линуксе он вообще падает у меня постоянно с включенными плагинами, даже проект не создать (сегментфолитстя - последнию смотрел версию 2.0). Под виндой на него посмотрел - этакая Visual Studio 6, причем версия бетта.
We have no beginning, we have no end. We are infinite.
-
OCTAGRAM
- Сообщения: 28
- ОС: Mac OS X
Re: Кроссплатформенность на практике
Неприятные косяки есть и в Qt, и в wxWidgets. В версии под Mac у них косячат элементы системного меню. В обоих библиотеках было принято решение делать вид, что Mac OS X — это Линукс, а потом нужные элементы перемещать на нужное место. Вот, например, Настройки... удаляются из меню Правка... и перемещаются в основное системное меню. Аналогично нужно переместить "О программе..." из меню Справка, потому что в Mac OS X для этого пункта принято другое местоположение. В обоих библиотеках не обошлось без косяков с этим подходом. В обоих библиотеках при перестановке элементов либа распознаёт нужные ей элементы по их имени и идентификатору. Я считаю, это должно производиться только по идентификатору, чтобы англоязычные разработчики тоже видели косяк. Вот, например, wxWidgets распознаёт меню Справка по имени "&Help". Стоит переключить язык на русский, и, если не исправить исходный код, меню начинает косячить. В Qt аналогично. После того, как я поставил русификатор на Psi, у него сломалось меню. Пользоваться можно, но это ненормально, что есть такие проблемы. В wxWidgets, что самое забавное, когда я сделал, чтобы переведённое меню "&Help" распознавалось правильно, оно начало отображаться по–английски. Точнее, там было два меню, по–русски и по–английски, а осталось одно по–английски.
И я даже не знаю, как перевести Macintosh-specific элементы меню, потому что на программном уровне они отсутствуют. Вот у тоже хелпа локализованное название можно было взять из названия удалённого меню. Но нет, в wxMac захардкодили английскую версию.
Мне раньше нравились wx, потому что у них элементы управления настоящие, в отличие от Qt. Вот в Psi мне человек, допустим, посылает линк на файл, я этот линк, ес–но хочу перетащить на качалку. Во всех программах drag-n-drop ссылок и текста работает без проблем. Только не в Psi. Если я пытаюсь перетащить ссылку, вместо перетаскивания ссылки начинается выделение текста. Psi не даёт забыть, на каком ущербном движке он сделан.
Всё это время хорошей рекламой wx был VLC. Как выяснилось, у VLC для Mac OS X основной интерфейс был написан с нуля, с использованием родных библиотек, поэтому косяки wx там и не всплывали.
Сейчас даже не знаю, чем и пользоваться для Xplatform интерфейса. Я разочаровался во всём, что видел. На заметке Cocotron и FLTK.
И я даже не знаю, как перевести Macintosh-specific элементы меню, потому что на программном уровне они отсутствуют. Вот у тоже хелпа локализованное название можно было взять из названия удалённого меню. Но нет, в wxMac захардкодили английскую версию.
Мне раньше нравились wx, потому что у них элементы управления настоящие, в отличие от Qt. Вот в Psi мне человек, допустим, посылает линк на файл, я этот линк, ес–но хочу перетащить на качалку. Во всех программах drag-n-drop ссылок и текста работает без проблем. Только не в Psi. Если я пытаюсь перетащить ссылку, вместо перетаскивания ссылки начинается выделение текста. Psi не даёт забыть, на каком ущербном движке он сделан.
Всё это время хорошей рекламой wx был VLC. Как выяснилось, у VLC для Mac OS X основной интерфейс был написан с нуля, с использованием родных библиотек, поэтому косяки wx там и не всплывали.
Сейчас даже не знаю, чем и пользоваться для Xplatform интерфейса. Я разочаровался во всём, что видел. На заметке Cocotron и FLTK.
If you want to get to the top, you have to start at the bottom
-
AMD
- Сообщения: 478
- Статус: Maestro
- ОС: Linux Kubuntu 7.10
Re: Кроссплатформенность на практике
Дествительно все в пользу Java а если любишь рисовать формочки то установи себе NetBeans
Кроссплатформеней чем Java некуда
Да и куча технологий и возможностей и нетрудно в изучение
-
.Serj.
- Сообщения: 127
- ОС: Gentoo, Win7
Re: Кроссплатформенность на практике
В принципе, можно пользовать Python с PyQt или wxPython (или TkInter, если нужно что-нибудь простое написать). А потом перегонять в .exe'шники с помощью py2exe.
-
AWSVladimir
- Сообщения: 138
- ОС: пока Мандривка
Re: Кроссплатформенность на практике
-
Mr.Floppy
- Сообщения: 24
- ОС: Debian GNU/Linux Etch/Lenny
-
AWSVladimir
- Сообщения: 138
- ОС: пока Мандривка
Re: Кроссплатформенность на практике
Реву и припадаю к коленам!
Научите меня делать так же!!!
Хелп!
Ящик сока с меня (вместо пива).
Хочу, хочу, хочу....
-
Demonsh
- Сообщения: 22
- ОС: OpenSuse 11
Re: Кроссплатформенность на практике
Про опенсорс трудно не согласится, но тут прямая закономарность, новые продукты как правило разрабатывают 1-5 человек и делают это "по возможности". В отличии от коммерческих где явно есть цель и жестко по времени. Хороши даже не старые продукты опенсорса, а те над которыми работает достаточно большая команда с грамотным менджментом.
А вот по поводу явы, тут... в процессе работы приходится мне использовать различные ява приложения, но небыло ниодного(!) которое бы доставляло комфорт. Проблема по сути одна, тормоза и еще раз тормоза. .Net с явой сравнивать нет смысла, по сути не кроссплатформенная (а моно и рядом не стоит, писал я софт с моно, но такое количество багов было что пришлось в результате отказаться. Притом баги были в компонентах которые числились полностью портированными). Но если подумать идеология с явы и .Net похожа, и там фреймворк и там, код дефакто не компилируется при сборке и только в среде выполнения транслируется в двоичныый код. Но посмотрите на результат, скорость работы приложений на .Net (имею ввиду интерфейса) не уступает скомпилированным аналогам, а java? просто бесит, нажал кнопку и невооруженным глазом видно тормознутость реакции.
Фактически java имхо внесла правильную мысль в теорию разработки софта, но реализация на мой взгляд провальна и к сожалению никто не собирается это менять.
по теме: самым оптимальным способом разработки кросс-платформенных программ есть использование QT (или аналога) и компиляция под каждую платформу отдельно. вот только для комерции qt дороговато....
-
Denjs
- Сообщения: 1685
- ОС: SuSe 10.2
Re: Кроссплатформенность на практике
не "для коммерции", а "для Close-Source" или non-GPL лицензии.
-
akdengi
- Сообщения: 4244
Re: Кроссплатформенность на практике
Ну про кросс свои пять копеек вставлю - спокойно перевели проект с Visual Studio Net 2.0 на Mono 1 + Wine - хоть и не совсем то и костыли, но работает. Так как писали по уму (весь перевод и настройки не родными средствами, а в xml файлах и на Формах кроме элементов и сигналов с вызовом внешних процедур ничего нет, то для построения нативного приложения осталость только переделать эти самые формы. Так что C# рановато списывать.
Меня тут снова нет :P
-
VoidExp
- Сообщения: 208
- Статус: Lead guitar adept
- ОС: Ubuntu
Re: Кроссплатформенность на практике
Могу только посоветовать wxWidgets. Был опыт работы с QT и GTK2. Первый громоздкий, тормоза нередки, в силу своей всесторонности использования нередко можно запутаться, да и лицензия у него под бизнес проекты платная. Второй легкий, смотрится одинаково и в окошках и в пингвине, но написание программ под него требует долгих часов изучения документации, да и вообще внутреннее устройство его не слишком интуитивное. А вот тулкит wxWidgets понятен с первых минут, тормозов не встречал, весит 5-7 метров да и юзает нативные рендеры для отображения виджетов на поддерживаемых осях (Linux, Mac OS X, Windowz и прочие). Ща пишу на нем прогу с ГПИ, и должен сказать что большой мороки и сложности нету, так что переписывать можно (я юзаю С++). Плюс у него куча всяких биндингов типа wxPython и расширения для общего использования, например приятный класс wxString, разные сокетовые интерфейсы и т.д