| Qt | |
| biblioteki programistyczne | |
Interfejs programu | |
| Producent | Qt Development Frameworks |
| System operacyjny | GNU/Linux, BSD, Solaris, Unix, Mac OS X, Haiku, MS Windows, Symbian, Windows CE, Embedded linux, Amiga OS |
| Pierwsze wydanie | 1995 |
| Aktualna wersja stabilna | 4.8.1 / 11 kwietnia 2012 |
| Licencja | LGPL (v. 2.1), GPL (v. 3.0), komercyjna |
| Strona domowa Qt | |
Qt - zestaw przenośnych bibliotek i narzędzi programistycznych dedykowanych dla języków C++ i Java. Ich podstawowym składnikiem są klasy służące do budowy graficznego interfejsu programów komputerowych, począwszy od wersji 4.0 Qt zawiera też narzędzia do tworzenia programów konsolowych i serwerów.
Producentem Qt jest norweska firma Qt Development Frameworks, a właścicielem - fińska Nokia (od stycznia 2008).
Spis treści |
Środowisko Qt jest dostępne dla platform: X11 (m.in. GNU/Linux, BSD, Solaris), Windows, Mac OS X, Haiku oraz dla urządzeń wbudowanych opartych na Linuksie (Qt Extended), Windows CE i Symbian. Qt jest podstawą dla m.in. uniksowego środowiska graficznego KDE oraz uniksowych wersji komunikatora internetowego Skype[1] i programu Google Earth.
Biblioteki Qt dostępne są w języku C++ i Java; mogą też być wykorzystywane w programach napisanych w innych językach, m.in. Ada (QtAda), C# (Qyoto/Kimono), Pascal, Perl (Perl Qt4), PHP (PHP-Qt), Ruby (QtRuby) i Python (PyQt). Charakteryzują się w pełni obiektową architekturą. Zawierają wiele technologii programowania graficznego interfejsu użytkownika, istniejących wcześniej jedynie w Tk: mechanizm sygnałów i slotów, automatyczne rozmieszczanie widżetów oraz zhierarchizowany system obsługi zdarzeń.
Biblioteki Qt, oprócz obsługi interfejsu użytkownika, zawierają także niezależne od platformy systemowej moduły obsługi procesów, plików, sieci, grafiki trójwymiarowej (OpenGL), baz danych (SQL), języka XML, lokalizacji, wielowątkowości, zaawansowanej obsługi napisów oraz wtyczek. Zawierają także własne, niezależne od STLa szablony klas pojemników.
W skład Qt wchodzi wiele specjalistycznych narzędzi programistycznych. Są to m.in.:
Makefile na podstawie prostego opisu zawartego w definicji projektu (*.pro),Pomysłodawcami i pierwszymi twórcami Qt byli Haavard Nord i Eirik Chambe-Eng. Projektowanie pierwszych klas biblioteki rozpoczęto w 1991 r. Rok później Chambe-Eng opracował koncepcję mechanizmu sygnałów i gniazd, który wkrótce stał się fundamentem biblioteki.
4 marca 1994 r. Nord i Chambe-Eng założyli firmę Quasar Technologies. W późniejszych latach zmieniała ona nazwy kolejno na Troll Tech, Trolltech, Qt Software i Qt Development Frameworks. Inspiracją dla nazwy Qt była nazwa biblioteki Xt (X Toolkit), w której literę X zastąpiono literą Q (zdaniem twórców Qt, litera Q wyglądała najładniej jako przedrostek nazw klas w edytorze Emacs)[2].
W 1995 firma otrzymała pierwszy kontrakt i zatrudniła pierwszego programistę. 20 maja 1995 na serwerze sunsite.unc.edu pojawiło się pierwsze oficjalne wydanie Qt – Qt 0.90. Mogło być ono używane do tworzenia aplikacji dla systemów Unix i Windows na dwóch licencjach: komercyjnej (Windows, Linux) i wolnej (Linux). Do końca 1996 sprzedano łącznie 18 licencji dla 8 różnych firm.
W 1997 twórcy KDE postanowili oprzeć swój produkt na bibliotece Qt. Dzięki temu szybko osiągnęła ona status jednej z najpopularniejszych bibliotek dla aplikacji okienkowych w C++ dla systemu Linux. Sukces ten stał się jednocześnie przyczyną obaw wielu zwolenników wolnego oprogramowania przed konsekwencjami rozpowszechnienia w środowisku systemu Linux programów opartych na własnościowej bibliotece nie podlegającej licencji GPL. Doprowadziło to do zainicjowania dwóch projektów alternatywnych dla Qt: Harmony i GNOME. Celem pierwszego z nich było stworzenie ekwiwalentu Qt podlegającego licencji GPL, celem drugiego – stworzenie realnej alternatywy dla KDE opartej wyłącznie na wolnym oprogramowaniu. Projekt Harmony został wstrzymany w 2000 r. wraz z udostępnieniem na licencji GPL środowiska Qt dla systemu Linux.
W 2000 Trolltech opublikował wersję Qt dla urządzeń wbudowanych – Qt/Embedded (przemianowaną później na Qtopia Core i Qt Extended).
W 2001, wraz z opublikowaniem Qt 3.0, rozszerzono zakres platform systemowych obsługiwanych przez Qt o Mac OS X.
W 2005, wraz z opublikowaniem Qt 4.0, po raz pierwszy udostępniono wersję Qt dla wszystkich obsługiwanych systemów operacyjnych (w tym Windows) na licencji GPL. Dopiero ta decyzja wygasiła w środowisku wolnego oprogramowania próby stworzenia rozwiązań alternatywnych do Qt pod względem polityki licencyjnej (jednym z ostatnich poważnych projektów tego typu był Q... Windows[3]).
W 2007 udostępniono wersję Qt dla języka Java (Qt Jambi).
W 2008 Trolltech został przejęty przez Nokię i zmienił nazwę na Qt Software, a od sierpnia 2009 na Qt Development Frameworks. W styczniu 2009 złagodzono politykę licencyjną (stosowana od wersji Qt 4.5 opcjonalna licencja LGPL praktycznie czyni z Qt bibliotekę darmową dla większości zastosowań komercyjnych). W tym samym roku całkowicie wstrzymano rozwój Qt Jambi[4] oraz zaprzestano rozwoju Qt Extended jako osobnej platformy, włączając część jej funkcji do głównej gałęzi Qt[5].
W 2010 Nokia zapowiedziała użycie Qt jako głównej platformy programistycznej w nadchodzącym Symbianie^4 oraz systemie MeeGo. Wydano testowe wersje API do urządzeń mobilnych - Qt Mobility (zastępujące Qt Extended).
Premiera pierwszej wersji Qt 4 odbyła się 28 czerwca 2005 r. W porównaniu z wersją Qt 3, zawiera ona sześć nowych technik:
QList, QLinkedList, QVector, QStack, QQueue, QMap, QMultiMap, QHash, QMultiHash i QSet).Od wersji 4.5 na wszystkich platformach dostępne są trzy rodzaje licencji[6]:
Wersje Qt 4.x są niekompatybilne z wersjami Qt 3.x - zarówno na poziomie kodów źródłowych, jak i kodów wykonywalnych. Migrację małych projektów z Qt 3 do Qt 4 zapewnia aplikacja qt3to4, jednak przeniesienie ogromnych aplikacji, jak np. KDE, może wymagać lat pracy. Wynika stąd pewne zamieszanie: typowy komputer z zainstalowanym systemem operacyjnym Linux lub BSD może zawierać "stare" biblioteki Qt 3 i programy wspomagające tworzenie aplikacji w Qt 3; może też jednocześnie zawierać środowisko Qt 4 i aplikacje dostosowane do tworzenia programów w Qt 4. W tym wypadku, ze względu na brak zgodności obu środowisk, należy bezwzględnie sprawdzać wersję każdego programu używanego do tworzenia kodu w Qt.
| Ten artykuł lub sekcja wymaga modyfikacji na podstawie najświeższych informacji. Niektóre treści są już na pewno lub najprawdopodobniej nieaktualne. Należy artykuł zweryfikować i adekwatnie go zmienić, a następnie usunąć niniejszy szablon z kodu tego hasła. Artykuł czeka na aktualizację od marca 2012 |
Oficjalną datą zakończenia wspierania Qt 3 przez producenta jest 1 lipca 2007 r. Dnia 11 stycznia 2008 r. wydano stabilną wersję KDE 4, opartą na Qt 4. Wraz z tą datą należy spodziewać się szybkiej migracji lub zaprzestania rozwoju aplikacji tworzonych w Qt 3 oraz pojawienia się zupełnie nowych programów opartych na Qt 4.
| ||||||||||||||||||||