| Qt dla platformy S60 |
|
|
|
Kiedy w maju tego roku norweska spółka Trolltech (trolltech.com) zajmująca się produkcją i utrzymaniem zestawu bibliotek do tworzenia przenośnego oprogramowania na platformy biurkowe i wbudowane (w tym telefony) o nazwie Qt została wykupiona przez fińskiego giganta branży telekomunikacyjnej, od razu pojawiły się pytania o wykorzystanie zakupionej technologii w urządzeniach produkowanych i rozprowadzanych przez Nokię. Początkowo przedstawiciele obu firm milczeli w tej sprawie, jednak teraz do wiadomości publicznej podane zostały nowe fakty.
Czym jest Qt? To pakiet bibliotek programistycznych, które pozwalają pisać przenośne programy. Ich przenośność polega na tym, że ten sam kod źródłowy możemy zbudować dla platform Windows, Linux/Unix, MacOSX, ale także na mniejsze urządzenia pracujące pod kontrolą Embedded Linux lub Windows CE. Niedługo do tego grona dołączy również platforma S60. Dzięki temu możemy się cieszyć tymi samymi aplikacjami niezależnie od tego, na jakim urządzeniu pracujemy i czy siedzimy za biurkiem w domu, czy jedziemy autobusem. Mottem Qt jest „Code less, create more, deploy everywhere”, czyli postawienie na aspekt twórczy a nie wyrobniczy przy jednoczesnym założeniu udostępnienia wyników pracy jak najszerszemu gronu odbiorców. Qt jest z powodzeniem stosowane w wielu branżach przemysłu, handlu i w życiu codziennym, począwszy od eksploracji kosmosu, na automatach do kawy i inkubatorach drobiu kończąc. Sporo znanych instytucji wykorzystuje Qt w swoich produktach i działaniach. Do klientów Qt Software należą firmy takie jak Lockheed Martin, LucasFilm Ltd., Walt Disney Animation Studios, Volvo, AMD, Skype, Google (GoogleEarth) czy Adobe (Adobe Elements). Qt rozprowadzane jest na podwójnej licencji – komercyjnej oraz open source. Stąd oprócz klientów komercyjnych istnieją miliony użytkowników darmowych, skupianych w dużej mierze przez największy projekt wykorzystujący tę technologię – K Desktop Environment, będący najpopularniejszym środowiskiem okienkowym dla systemów uniksopodobnych, który obecnie przymierza się do szturmu również na platformę Windows z tysiącami dostępnych aplikacji, wykorzystujących biblioteki KDE. Główna funkcjonalność Qt skupia się wokół interfejsu użytkownika. Programista otrzymuje potężne narzędzia do wydajnego tworzenia ładnie wyglądających i wydajnie działających okienek, których wygląd dodatkowo można dostosować do potrzeb użytkownika za pomocą mechanizmu podobnego do dekorowania stron WWW – mowa tutaj o silniku kaskadowych stylów (CSS). Domyślnie aplikacje stworzone przy wykorzystaniu Qt wyglądają identycznie jak inne programy na danej platformie przez co bardzo dobrze się z nimi integrują. Współczesne urządzenia robią się coraz bardziej kolorowe, animowane i otwarte na świat. Powoli zdobywają taką samą popularność, jak uwielbiane przez wielu gry w pokera. Żeby sprostać tym oczekiwaniom Qt posiada wsparcie dla kilku bardzo istotnych technologii. Pierwsza z nich to akceleracja sprzętowa grafiki wykorzystująca popularny system OpenGL lub jego odmianę dla urządzeń wbudowanych – OpenGL ES. W połączeniu z drugą technologią o nazwie Graphics View, która pozwala na operacje na dowolnych obiektach graficznych – ich animacji, kompozycji, transformacjach – można w prosty sposób tworzyć różne efekty podobne do tych, jakie znamy np. z urządzeń produkowanych przez Apple - iPhone czy iPod. Bogaty zestaw operacji graficznych z zaawansowanymi technikami jak wygładzanie tekstu i obrazu oraz podwójne buforowanie operacji graficznych sprawiają, że zapewnienie użytkownikowi niezapomnianych wrażeń wizualnych staje się bardzo proste. Jednym z modułów Qt jest architektura do obsługi multimediów, umożliwiająca nie tylko tworzenie własnych aplikacji przeznaczonych do odtwarzania filmów czy muzyki, ale także np. pokazanie filmu jako pojedynczego elementu bardziej skomplikowanego programu. Niemniej istotnym komponentem, który jest dostarczany z Qt jest WebKit – przeglądarka internetowa wywodząca się z KDE, a obecnie rozwijana głównie przez Apple. Możemy nie tylko wyświetlać strony internetowe, ale także manipulować nimi, osadzać w ramach nich dowolne obiekty poprzez mechanizm pluginów a także osiągnąć głęboki poziom integracji strony internetowej z pozostałymi elementami aplikacji. Trzeba pamiętać, że obsługa grafiki to tylko wycinek (chociaż bardzo istotny) możliwości całego pakietu. Oprócz tego Qt dostarcza szerokiego zakresu różnorodnej funkcjonalności – obsługę sieci IP, baz danych SQL (również na urządzeniach wbudowanych), obsługę XML (także XQuery, XPath oraz XSLT), wielowątkowość i przetwarzanie równoległe, komunikację międzyprocesową, architekturę separacji warstw danych i prezentacji, obsługę zbiorów danych, silnik skryptowy języka JavaScript, wielojęzyczność oraz wiele pomniejszych funkcji – wszystko to w sposób obiektowy i w pełni przenośny pomiędzy platformami. Programy w Qt można tworzyć w językach C++ lub Java. Istnieją także wiązania do innych języków, pozwalające korzystać z funkcjonalności Qt wykorzystując takie języki programowania jak Python czy Ruby. |

Qt dla platformy S60
W
październiku 