Qt

Материал из Энциклопедия о программировании
Перейти к: навигация, поиск

Qt (КьюТэ) — популярный кросс-платформенный фреймворк, который используется для разработки прикладного программного обеспечения, которое может быть запущено на различных программных и аппаратных платформах, практически без изменений в базовой кодовой базе, при этом все еще являясь родным приложением с собственными возможностями и скоростью. Фреймворк для разработки графического интерфейса программного обеспечения на языке программирования C++. Есть также «привязки» ко многим другим языкам программирования: Python — PyQt, PySide; Ruby — QtRuby; Java — Qt Jambi; PHP — PHP-Qt и другие.

Для обеспечения работы с фреймворком разработчиками предоставляется также собственная IDE и модифицированный компилятор языка C++.

Разработка

В настоящее время Qt разрабатывается как публичной листинговой компанией Qt, так и под управлением Qt Project, с открытым исходным кодом, с участием отдельных разработчиков и фирм, работающих над продвижением Qt.

Лицензия

Qt доступен как с лицензиями GPL 2.0, GPL 3.0, так и с открытым исходным кодом, а также с лицензиями LGPL 3.0.

Популярность

Фреймворк Qt является очень популярным в реализации на C++. В плане создания именно оконных приложений он стоит на втором месте по популярности после стандартной графической библиотеки классов Windows Forms (WinForms) от Microsoft. Многие находят Qt лучшим чем Windows Forms для написания оконных приложений.

Классовая иерархия

В Qt есть строгая иерархия классов. Иерархия классов в Qt такая же, как иерархия классов в Java и C#. Все базовые классы унаследованы от класса QObject.

Компилятор Qt

В Qt используется свой т. н. метаобъектный компилятор языка C++.

Графические окна и формы

Qt очень много позаимствовал у оконных библиотек графического интерфейса AWT и Swing в Java. В графических окнах Qt также как и в Java есть различные лэйауты (layouts, расположения), то есть слои компоновки, которые помогают расположить графические элементы в окне или на форме.

Это незаконченная статья. Вы можете помочь, исправив и дополнив её.
Шаблон:Theme

Шаблон:Software Шаблон:Qt Шаблон:Frameworks