Расскажите как пишут программы под разные платформы?
Например Photoshop или Autodesk Maya? Пишут все в QT или две разные версии программы делают и все переписывают с нуля?
Какие есть современные подходы программирования для разных платформ? Вот у QT например есть поддержка OpenGL, но у Мака развивается OpenCL, a у Масдая вообще ДеректИКС ?
Крос программирование
Модератор: Модераторы разделов
-
Ink-85
- Сообщения: 222
- Статус: полный привет
- ОС: Mac OS, Ubuntu 8.04
-
flank'er
- Сообщения: 496
- Статус: слаковщик
- ОС: Slackware64
Re: Крос программирование
я собирал linux программы для виндус, пользовался соответственно gcc для виндус MinGW
для сборки конечной программы в чужой системе должны присутствовать используемые библиотеки
если directx нет в linux значит прейдется движок переписывать на opengl, что в принципе нереально
для сборки конечной программы в чужой системе должны присутствовать используемые библиотеки
если directx нет в linux значит прейдется движок переписывать на opengl, что в принципе нереально
-
NickLion
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Крос программирование
Обычно часть кода - платформозависимая - выносится в отдельную библиотеку (статическую или динамическую - это уже не столь важно). Эта либка имеет единый интерфейс для всех платформ, а реализация различается. Не знаю, как Autodesk, а Adobe использует свои разработанные библиотеки. Можно пользоваться уже готовыми - Qt, GTK+ - для интерфейса, Qt - не только интерфейс.
Используя готовые кроссплатформенные библиотеки можно писать один код под все платформы, под которые написаны эти либы.
Что касается OpenGL - при чём тут то, что MS разрабатывает свою библиотеку Direct3D? OpenGL от этого под Windows не исчезает. Как было, так и есть, в чём проблема?..
Используя готовые кроссплатформенные библиотеки можно писать один код под все платформы, под которые написаны эти либы.
Что касается OpenGL - при чём тут то, что MS разрабатывает свою библиотеку Direct3D? OpenGL от этого под Windows не исчезает. Как было, так и есть, в чём проблема?..
-
Crazy
- Сообщения: 862
- Статус: Адепт Дзен.
- ОС: Mint, Win7.
Re: Крос программирование
Интерфейс отделяют от реализации, а при компиляции выбирается реализация под конкретную платформу.
Desipere in loco
-
Ink-85
- Сообщения: 222
- Статус: полный привет
- ОС: Mac OS, Ubuntu 8.04
Re: Крос программирование
Идея состоит в создании современной системы архитектурного дизайна , с параметрическими элементами с возможность производить чертежи разной сложности!!! С хорошей отрисовкой 3D , все проектирование ведется в 3d режиме. Программу хочу писать под Мак !!!! и под Линукс !!!
Вот и появился такой вопрос, какой способ программирования выбрать чтобы с наименьшими затратами написать достойный продукт на все платформы?
Сейчас изучаю КуТи и С++ стоит ли делать упор именно на это или может в сторону Обджектив-Си глянуть? Как у него с кросс программированием?
Вот и появился такой вопрос, какой способ программирования выбрать чтобы с наименьшими затратами написать достойный продукт на все платформы?
Сейчас изучаю КуТи и С++ стоит ли делать упор именно на это или может в сторону Обджектив-Си глянуть? Как у него с кросс программированием?
-
NickLion
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: Крос программирование
Ink-85 писал(а): ↑07.02.2010 13:50Идея состоит в создании современной системы архитектурного дизайна , с параметрическими элементами с возможность производить чертежи разной сложности!!! С хорошей отрисовкой 3D , все проектирование ведется в 3d режиме. Программу хочу писать под Мак !!!! и под Линукс !!!
Вот и появился такой вопрос, какой способ программирования выбрать чтобы с наименьшими затратами написать достойный продукт на все платформы?
Сейчас изучаю КуТи и С++ стоит ли делать упор именно на это или может в сторону Обджектив-Си глянуть? Как у него с кросс программированием?
С использованием Qt Вы вряд ли столкнетесь с проблемами. Т.е. просто откомпилируете приложение под Windows, Linux, Mac. А код будет один.
Насчёт objective-c не подскажу.
-
Ink-85
- Сообщения: 222
- Статус: полный привет
- ОС: Mac OS, Ubuntu 8.04
Re: Крос программирование
спасибо
-
diesel
- Бывший модератор
- Сообщения: 5989
- ОС: OS X, openSuSE, ROSA, Debian
Re: Крос программирование
Стоит отделить "интерфейсную часть" от логики/математики тогда вы сможете для каждой из платформ, при желании, легко сделать свою GUI-обертку. QT под OS X с виду выглядит рабочим, но есть сомнения.
-
Iskan Der
- Сообщения: 270
Re: Крос программирование
Qt вроде изначально делался в том числе и под мак, так что должен работать нормально, по идее.
Objective-C под маком подразумевает использование Cocoa, что, как я полагаю, с точки зрения портируемости совсем не гуд. Ближайшим аналогом Cocoa для других платформ является GNUStep, в котором многие вещи из Cocoa еще не реализованы (можно здесь посмотреть сравнение).
В общем, имеет смысл остановиться на Qt/C++, имхо. Можно еще в сторону Java посмотреть, кстати говоря.