Библиотека Qt

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

Кросс-платформенная библиотека Qt, разработанная финской компанией Trolltech, ныне принадлежит корпорации Nokia. Qt реализована на языке программирования C++ и пользуется популярностью у, прежде всего, C++-программистов поскольку использует "родной" для них интерфейс. Возможности C++ в Qt значительно расширенны с помощью макросов и MOC (Meta Object Compiler): добавлены сигналы/слоты, появилось возможность использовать в собственных классах свойства (propperty). Но Qt не ограничена только лишь языком C++. Для программистов Python, Ruby, Php и Perl также реализованы интерфейсы взаимодействия, которые, как правило, используются для построения графического интерфейса пользователя. Программисты Java могут обратить внимание на проект Jambi, но его будущее очень туманно.

Область применения Qt

Если вы ранее не были знакомы с Qt, то перед вами может возникнуть вопросы: зачем мне изучать еще одну библиотеку или для решения каких задач применять Qt?

Из того, что Qt является кросс-платформенной, следует что с ее помощью можно создавать desktop-приложения для Windows, Linux, Mac OS X (как консольные, так и с оконным графическим интерфейсом). Однако разработчики Qt на этом не остановились. В последние несколько лет наблюдается тенденция увеличения количества выпускаемых мобильных устройств. Было бы по меньшей мере странным не портировать Qt на мобильные платформы: Symbian, Maemo, MeeGo. Также известно об удачном опыте портрования Qt Lighthouse на платформу Android.

Лицензирование Qt

Qt имеет тройное лицензирование:

  1. Qt Commercial - коммерческая лицензия, после приобретения которой вы можете выпускать программный продукт под собственной лицензией.
  2. GNU GPL - если вы open-source разработчик это ваш выбор.
  3. GNU LGPL - позволяет вести разработку под собственной лицензией, однако вы не можете вносить изменения в код Qt.

К сильным сторонам Qt можно отнести:

  • Кроссплатформенность: Qt работает как в настольных операционных системах Windows, Linux, Mac OS и др., так и мобильных ­ Symbian, Maemo, MeeGo.
  • Быстроту: часто кросплатформенные приложения, написанные на платформах Java и .Net Framework, оказываются очень медлительным из-за дополнительного уровня абстракции. Программы Qt являются компилируемыми C++-приложениями, т. е. не работают также быстро как и приложения С++.