Войти
UnixDevСтатьи

Введение в Qt4 (2 стр)

Автор:

4. Использование.


[todo] more detail
Использование данной библиотеки в общем возможно для замены таких API, как glut/glaux + различные GUI поверх них. После появления вайджета для Direct3D - и DxUI.


 


 

Также Qt4 может использоваться как замена STL (а может и как дополнение с STL-type итераторами).

Использование базовых классов Qt для наследования позволит перенести всю мощь этой библиотеки в классы пользователя.

4.1. Примеры


Автор постарался акцентировать свой внимание на документации библиотеки отнюдь не зря - имеющие примеры покрывают практически весь возможный диапазон её использования.
Ну а традиционный helloworld выглядит так
#include <QCoreApplication>
int main(int argc, char *argv[]) {
QCoreApplication app(argc, argv);
return 0;
}
а его GUI вариант
#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[]) {
QApplication app(argc, argv);

QPushButton hello("Hello world!");
hello.resize(100, 30);

hello.show();
return app.exec();
}

4. Выводы

Данная библиотека является достойным вспомогательным API, дающим возможность автору приложения более сконцентрироваться на архитектурных/алгоритмических изысканиях вместо первоначального создания своего framework. Возможность коммерческого использовния данной библиотеки гарантирует, а также опыт работы с её объектной моделью могут быть в дальнейшем использованы в различных проектах.

5.Приложения

5.1. Недостатки струтуры библиотеки, на взгляд автора:


- отсутсвие родного класса для точек, задаваемых 3мя координатами, равно как и всей прочей 3D математики(впрочем, подавляющее большинство их всё равно переписывает, а наличие мощных базовых классов и открытые исходные кода сильно упростят эту задачу).
- класс загрузки изображений QImage требует наличия графического контекста, чтое делает невозможным его использование с консольными/использующими другой GUI(glut/DxUI) приложениями.
- отсутвие поддержки fp16 (OpenEXR/NV расширения).
- отсутсвие автоматической загрузки OpenGL расширений (решатеся через использовнаие glew).

5.2. Список продуктов, используемых автором, базируемых на Qt


(как правило, версии 3.х.х)
- KDE(Linux Desktop);
- Google earth;
- Alias Maya installer;
- doxygen;
- OpenSG scene viewer;

5.3. Коммерческое использование


[todo] more detail

5.4. О курицах и яйцах.


- Проект дестопа под Linux KDE стартовал на базе библиотеки Qt (ещё с версии 1) сразу под GNU GPL. Qt2 была переведена на GNU GPL специально для KDE(версии для Windows/Mac оставались только коммерческими). Qt4 разработа во главе с новым технически директором TrollTech, бывшим лидером проекта KDE
- утилита документирования исходных кодов doxygen была написана из-за того, что аналогиная по функциональности утилита от TrollTech не была публино доступна. В Qt4 же используется уже только doxygen.

Поддержка игровых приставок(консолей) напрямую не декларируется Trolltech, однако Qt4 компилируется на Power 32/64(PS3/XBox360/GameCube) архитектуре (включая многоядерные Power5), а платформа для мобильных компьютеров QTopia(qt базируемая) используется в основном на ARM процессорах(GameBoy), а также MIPS(PSP).

5.5. Ссылки.


Qt - http://www.trolltech.com
Doxygen - http://www.doxygen.org
KDE http://www.kde.org
Google earth http://earth.google.com
OpenEXR http://www.openexr.org


PS. данная статья была полностью написана в Qt базируемом KWord(KOffice/KDE).
PSS. редактирование данной статьи было сделано благодаря новым фичам - http://www.gamedev.ru/community

Страницы: 1 2

30 октября 2005 (Обновление: 11 янв. 2006)