|
|
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Размышляю на тему кроссплатформенности в написании GUI приложений, чтоб работало и в Win и в Linux. На мой вгляд существует лишь два достойных варианта - C++/Qt и java/AWT/Swing. Но какой путь лучше? java , c одной стороны, хорошо, это путь стандартный, но она , как известно, по производительности проигрывает c++. Однако ее не сбрасываю со счетов, поскольку , во-первых, на хороших машинах мне кажется это уже непроблема, так на P4 512M время отклика GUI интерфейса вполне нормальное ( самое главное запуститься :), а во-вторых по ней очень много документации, и литература в книжных магазинах есть ( по QT книжек ниразу невстречал ). С другой стороны, QT интересный вариант, на нем весь KDE построен, и что привлекает , так для пользования из под Linux нет необходимости в какой-либо доп. установке навроде JDK , запускай и все, однако, насколько я понял, чтобы это все работало в Win, нужно инсталлить платные ( в отличии от java ) qt-либы ... И еще вопрос, насколько хорош qt-интерфейс в виндах ( в плане глюкавости )? Видел один единств. продукт - tora под виндами ( это SQL Developer под oracle ), он на qt написан, вроде ниче так работает, хотя кое где бывают какие то подвисоны , на мой взгляд под Linux-ом она получше пашет. Вообщем, буду рад любым отзывам в пользу как того так и другого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 12:44 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
А еще мона BCB: делаем CLX приложение, под Linux все отлично компилит Kylix ________________________________________________________ Глюк - это высокоорганизованная система не поддающихся определению частиц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 12:49 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Если я правильно понял, это делать kylix приложения на borland C Builder? А в Linux-е это под какими либами работает, gtk? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 12:57 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
еще есть wxWidgets для C++ и SWT для Java ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 13:11 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Steppenwulfеще есть wxWidgets для C++ и SWT для Java wxWidgets рулит, у него и лицензия хорошая в плане написания коммерческого ПО и неплохие API ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 13:25 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
несколько уточнений про Kylix тут прочитал среда программирования для Kylix основана на программе wine и не является самостоятельным Linux-приложением. Из этого следует, что все разрабатываемые приложения должны обращаться к библиотеке libwine Т.е. если наше приложение будет работать в режиме "полуэмуляции", не сказал бы что это хорошо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 14:01 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Ещё Mono есть. WINE is Not Emulator :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 14:07 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Очень рекомендую посмотрть внимательно на wxWindows - надёжная библиотека с уже устоявшимся и разумным интерфейсом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2005, 22:12 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
понятно а вот еще такой вопрос, по переносимости, бывает необходимо в приложении пользоваться потоками, или допустим программа у нас ведет какой-то обмен по tcp, реализация под Linux и Win вещей типа этого ведь разная. Интересно, как оформляется кроссплатформенное приложение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 06:42 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
2: sanek842 Смотру тут, это обзор-сравнение кросс-платформных GUI: http://www.linuxfocus.org/English/October2004/article350.shtml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 07:01 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
sanek842понятно а вот еще такой вопрос, по переносимости, бывает необходимо в приложении пользоваться потоками, или допустим программа у нас ведет какой-то обмен по tcp, реализация под Linux и Win вещей типа этого ведь разная. Интересно, как оформляется кроссплатформенное приложение? Есть уйма кроссплатформенных библиотек. Поищи и обрящеш. Однако порекомендую boost (www.boost.org) - она целиком кроссплатформенная. Там есть очень много чего: многопоточность, работа с файловой системой, архивация, regular expressions, юнит тестовые прибабахи... Лицензия - самая гуманная. Любители STL - обратите на этот проект внимение (если ещё не видели) - очень элегантно написамо, и в нём принимают участие люди заседающие в коммитете по стандартизации, так что кое какие вещи могут перекочевать (и перекачёвывают) в стандарт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 08:15 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
to FishingIsGood а как там обстоит дело с MS Office/OpenOffice? бывает нужно оформить отчет ввиде xls/doc файла ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 08:29 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
sanek842to FishingIsGood а как там обстоит дело с MS Office/OpenOffice? бывает нужно оформить отчет ввиде xls/doc файла Вопрос не понял. Если ты интересуешся boost'овской документацией, то она имеется, но в HTML. Или уточни. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 08:32 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
ну да, допустим пусть будет boost могу ли я используя данные библиотеки сформировать excel файл и передать его в сам Excel. К примеру приняли из таблиц БД отчет, нажимаем кнопку и он в Excel-е , ну или Open Office. Конечно можно выкрутиться и через csv файл, но вот в java к примеру есть хороший пакет один POI, он позволяет читать/писать в формате xls. А как это будет все на С++ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 08:40 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Наверняка есть такие примочки, но я на windows не работал уже давно, и как выглядит excel формат представляю очень смутно. Как один из вариантов я бы рассмотрел генерацию XML (для этого есть Apache XML C++), а там уж по усмотрению. OpenOffice например для таблиц использует XML формат, ещё легче это представить в окошке браузера... Тут больше от задачи зависит. Я почти уверен, что пакеты для excel на C++ тоже есть, только мне они не известны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 08:50 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
А если правильно оформленный .HTML файл просто взять и переименовать в .xls, то Excel его проглотит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 08:56 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
sanek842ну да, допустим пусть будет boost могу ли я используя данные библиотеки сформировать excel файл и передать его в сам Excel. К примеру приняли из таблиц БД отчет, нажимаем кнопку и он в Excel-е , ну или Open Office. Конечно можно выкрутиться и через csv файл, но вот в java к примеру есть хороший пакет один POI, он позволяет читать/писать в формате xls. А как это будет все на С++ ? Ессли хочешь кросс-платформно работать в режиме оффиса, то уже сам и сказал, что это OpenOffice. А насчет формирования XLS-файла, то в этом форуме я уже как-то раздавал сорцы для формирования XLS-файла из задачи (C++) /системно не привязаны/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 09:08 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
nik_xЕссли хочешь кросс-платформно работать в режиме оффиса, то уже сам и сказал, что это OpenOffice. А насчет формирования XLS-файла, то в этом форуме я уже как-то раздавал сорцы для формирования XLS-файла из задачи (C++) /системно не привязаны/ Я так понял вы разобрались с этим http://sc.openoffice.org/excelfileformat.pdf и написали собственные классы. Да? Было бы хорошо , если б нашлись готовые кроссплатформенные либы с примерами на С++. А то самому такую работу проделывать... Мне то пока это ненужно, но вдруг нужно будет завтра, вот я и пытаюсь выяснить. Всетаки нельзя сбрасывать со счетов то что большинство пока что под win сидит, а там эти форматы на первом месте. Ну вцелом картина проясняется, еще хотелось бы уточнить по области программирования tcp. Среди Boost Libraries на их сайте что то про это не нашел ничего. А тут как? Так под win написание клиента начинается с вызова WSAStartup ну и поехало ... Подозреваю под это дело должны быть тоже какие-то кроссплатформенные либы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 10:08 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
Там есть ещё подпроект boost-sandbox. Это что то типа библиотек, которые пока формально не прошли в основной релиз boost. Там есть socket библиотека. sandbox можно скачать через cvs (:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost-sandbox). На самом деле есть очень много кроссплатформенных сокет либов (даже я сам лет 5 назад одну такую писал - может ещё лежит где на интернете). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 10:22 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
FishingIsGoodТам есть ещё подпроект boost-sandbox. Это что то типа библиотек, которые пока формально не прошли в основной релиз boost. Там есть socket библиотека. sandbox можно скачать через cvs (:pserver:anonymous@cvs.sourceforge.net:/cvsroot/boost-sandbox). На самом деле есть очень много кроссплатформенных сокет либов (даже я сам лет 5 назад одну такую писал - может ещё лежит где на интернете). в том же wxWidgets сокеты реализованы и многое другое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 11:44 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
да, действ., похоже хорошая штука этот wxWidgets to FishingIsGood а можно уточнить, вы говорили про библиотеку wxWindows, я правильно понял что это та, которая идет в составе пакета wxWidgets? И еще вопрос, про среду программирования, как лучше, разрабатывать в KDevelop, а на Win лишь проверять, или прикрутить этот wxWidgets к MSVC++? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 12:34 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
среда программирования для Kylix основана на программе wine и не является самостоятельным Linux-приложением. Из этого следует, что все разрабатываемые приложения должны обращаться к библиотеке libwine Найдите того, кто это написал и стукните ему в морду, поскольку большего он не заслужил. Kylix строит native-приложения, а привязана к WINE _только_ среда разработки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 13:15 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
no-dashi среда программирования для Kylix основана на программе wine и не является самостоятельным Linux-приложением. Из этого следует, что все разрабатываемые приложения должны обращаться к библиотеке libwine Найдите того, кто это написал и стукните ему в морду, поскольку большего он не заслужил. Kylix строит native-приложения, а привязана к WINE _только_ среда разработки. а что его искать, тут он :) http://www.linuxfocus.org/Russian/October2004/article350.shtml ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 13:27 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
sanek842да, действ., похоже хорошая штука этот wxWidgets to FishingIsGood а можно уточнить, вы говорили про библиотеку wxWindows, я правильно понял что это та, которая идет в составе пакета wxWidgets? это одно и тоже sanek842И еще вопрос, про среду программирования, как лучше, разрабатывать в KDevelop, а на Win лишь проверять, или прикрутить этот wxWidgets к MSVC++? я, к примеру, разрабатывал в MSVS7.1 (дебагер удобный), потом проверял в юниксе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 13:45 |
|
||
|
кроссплатформенное программирование
|
|||
|---|---|---|---|
|
#18+
sanek842 ... Я так понял вы разобрались с этим http://sc.openoffice.org/excelfileformat.pdf и написали собственные классы. Да? Нет, написал свои классы. Ни к чему не привинчено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2005, 14:08 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=32898736&tid=2033459]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
145ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
87ms |
get tp. blocked users: |
1ms |
| others: | 220ms |
| total: | 490ms |

| 0 / 0 |
