Qt SDK 2009.02 = Qt 4.5.1 + Qt Creator 1.1

Wczoraj nad ranem wydano nową wersję zestawu dla programujących w Qt. Do Qt SDK, bo o nim mowa, trafiły nowe wersje bibliotek oraz zintegrowanego środowiska programistycznego. O ile w pierwszym przypadku możemy mówić raczej o drobnych usprawnieniach i poprawkach, o tyle w Qt Creatorze mamy już bardziej znaczące zmiany.

Co więc poprawiono w bibliotekach? Przede wszystkim wszelkiego rodzaju wykryte błędy, ale nie tylko. Linia 4.5 już w swoich założeniach miała cechować się zwiększonym naciskiem na wydajność, a efekt finalny tylko to potwierdził. Trend ten nie zmienił się także w przypadku tego tzw. bug-fix release’u (wydania mającego za zadanie być zasadniczo wolnym od uprzednio znalezionych błędów). Optymalizacji poddano wiele obszarów Graphics View Framework (w skrócie: moduł pozwalający na zarządzanie i interakcję z graficznymi obiektami 2D na wirtualnej scenie oraz ich wizualizację). Inna drobnostka to usprawnienie demonstracji z arkuszem kalkulacyjnym o możliwość wydruku (poprzedzonego jego podglądem). Po szczegóły zapraszam na stronę Changes 4.5.1.

Nowości w Qt Creatorze są dużo bardziej namacalne, przynajmniej dla niektórych. O części wspominaliśmy już przy okazji wydania QtCreator 1.1 RC1. Miłośnicy Eclipse’a czy NetBeansa z przyjemnością wykorzystają przenoszenie się między deklaracjami a definicjami lub konkretnymi użyciami zmiennych, funkcji i metod z pomocą stosownych kliknięć w nie i klawisza Ctrl. Zwolennicy Vima ucieszą się, że zaznaczenie przenosi się przy wchodzeniu i wychodzeniu z trybu FakeVim. Konserwatyści dostrzegą zwiększoną czułość zapamiętywanych przez edytor czynności, co ułatwi im wycofywać błędy. Posiadacze 1.7 megapikselowych ekranów i większych bez wahania podzielą sobie ekran dużo swobodniej niż mogli to zrobić w poprzedniej wersji. Natomiast niemal każdy lubujący się w wyklikiwaniu oprogramowania wypróbuje edytor sygnałów i slotów, który wreszcie tu zagościł. Żądnych dokładniejszych informacji o zmianach odsyłam do Changes Qt Creator 1.1.

Qt SDK 2009.02 jest do pobrania spod adresu:
http://www.qtsoftware.com/downloads.

To nie koniec dobrych wieści. Niemalże w cieniu pojawiły się nowe wydania dwóch tzw. rozwiązań (Qt Solutions), będących dodatkami do standardowych bibliotek Qt, które dzięki wprowadzeniu przez Nokię licencjonowania na zasadach LGPL stały się dostępne także dla klientów niekomercyjnych. Zaktualizowane rozwiązania to: Qt State Machine Framework (moduł do budowania hierarchicznych automatów skończonych) i Qt Animation Framework (moduł do tworzenia animacji), które pojawiły się w wersjach odpowiednio 1.1 i 2.3. Szczegóły w języku angielskim znajdziecie w linkach pod numerami wersji.

Trolle jak zwykle nie próżnują…

żadnych reklam, sama wiedza.

Zarejestruj się na BEZPŁATNY NEWSLETTER i raz w tygodniu otrzymuj najważniejsze wiadmości
ze świata IT, nowych technologii i kryptowalut.

Bez reklam.

  1. Awatar przemoc
    przemoc

    Przy okazji pozwolę sobie zachęcić do wypróbowania mojego ciemnego zestawu kolorów: Qt Creator Dark theme, bo jak wiadomo ciemniejsza kolorystyka lepiej się nadaje do dłuższej pracy…

    Dodam też, że niestety w obecnym wydaniu (jak to się często zdarza) nie uniknięto błędów, w tym jednego, którego gdybym wcześniej odpowiednio zgłosił, nie trafiłby do nowej wersji Qt Creatora. Mowa o mechanizmie dzielenia okna edytora, z którym chwila (krótsza lub dłuższa, zależnie od "umiejętności") eksperymentowania skutkuje nieprzyjemnym zakończeniem aplikacji. Wczoraj od momentu zgłoszenia na kanale IRC nie minął kwadrans, a poinformowano mnie o naprawieniu błędu (commit). Miłe.

    1. Awatar XpT
      XpT

      Nie wiem czy wiadomo, co kto lubi. 🙂

      1. Awatar przemoc
        przemoc

        To nie chodzi o to co kto lubi tylko kiedy wzrok się bardziej męczy.

        De gustibus et coloribus non est disputandum. Drugi człon jest zwyczajowo pomijany. Jestem więc też w pełni świadom tego, że nie każdemu moja propozycja ustawień musi odpowiadać, ale przecież nikogo do nich nie zmuszam.

        1. Awatar !
          !

          W pełni z tym się zgadzam, ciemne tło znakomicie oszczędza wzrok. Energii nie oszczędza w przypadku LCD ale wzrok zdecydowanie tak. Szkoda tylko że kolejne środowisko muszę sobie w ten sposób konfigurować. Z eclipse poszło najłatwiej, netbeans też się da za sprawą wywołania z parametrem GTKLookAndFeel, a ten QtCreator ciągle biedny jakiś. Wszystko od nowa trzeba ustawiać, choćby klienta svn. Nokio nie idź tą drogą, reanimuj wtyczkę do eclipse…

        2. Awatar je
          je

          Jeśli tło za monitorem jest jasne, np. sa swietlowki u mnie w firmie, to czarna zawartosc monitora meczy jednak wzrok. Z podobnego powodu np. norma TCO 2003 zabrania stosowania czarnej obudowy monitora (te nie maja tej normy).

        3. Awatar i
          i

          wygląda na żywą
          http://www.qtsoftware.com/developer/eclipse-integ…

        4. Awatar !
          !

          Żywą ale co to za życie? Prawie zawsze jest tak że gdy plugin jest instalowany przez wgranie go do katalogów (a nie update site), są z nim problemy. I tu nie inaczej się dzieje. Co chwila buuuuum! I zaćmienie kaputt 🙂

        5. Awatar i
          i

          http://www.ibm.com/developerworks/rational/librar…

  2. Awatar AdamK
    AdamK

    Skąd wiadomo?

  3. Awatar Tomasz Chiliński
    Tomasz Chiliński

    Świetny news!

  4. Awatar Rzeznik
    Rzeznik

    Czy tylko ja uważam że QtCreator jest bardzo niedopracowanycm IDE?

    1. Awatar je
      je

      Tak, tylko ty.

      1. Awatar Rzeznik
        Rzeznik

        Kolejny fanatyk FLOSS, który minusuje wszystkie wypowiedzi nielicujące z jego ograniczonym światopoglądem.

        1. Awatar bies
          bies

          Co to za moda, że jeśli ktoś się z kimś nie zgadza to od razu ,,fanatyk''. Albo często ,,GNU/fanatyk'', ,,FLOSS fanatyk'' itp. Ktoś się z Tobą niezgodził. Pogódź się z tym — na tym polega dyskusja. Obrażanie innych tylko dlatego, że mają inne zdanie jest kiepskim pomysłem jeśli chcesz, żeby Cię traktować poważnie.

        2. Awatar sprae
          sprae

          To nie moda, to frustracja.

    2. Awatar wiktorw
      wiktorw

      A możesz napisać do czego porównujesz to środowisko?

      W gronie otwartych IDE to jest całkiem dobre, pomimo niskiego numeru wydania (IMHO).

      1. Awatar Rzeznik
        Rzeznik

        Zgadzam się, QtCreator mimo "młodego wieku" jest bardzo obiecującym narzędziem. Zaczynam go poznawać dopiero od kilku dni i może jeszcze nie do końca rozumiem zasady jego działania. Na przykład gdy otwieram projekt, nic się nie dzieje okno edytora nadal jest puste, myślę że środowisko powinno załadować pliki źródłowe powiązane z projektem. Tutaj niestety trzeba to robić ręcznie i po kolei otwierać samemu.
        Powiązany z tym jest kolejny uciążliwy problem. QtCreator nie zapamiętuje ostatnio otwieranego katalogu, przez co gdy mamy pliki zapisane gdzieś głębiej w drzewie folderów, otwieranie projektów staje się dość uciążliwe.
        Podobnych drobnych (a uciążliwych) błędów mógłby jeszcze wymienić jeszcze kilka.

        BTW. Czy jest jakieś dobre polskie forum gdzie można porozmawiać o programowaniu z wykorzystaniem Qt?

        1. Awatar wiktor
          wiktor

          Zgłoś na bugtracka Trolltecha, to naprawdę działa 🙂

        2. Awatar Grimlock
          Grimlock

          QtCreator idealnie ładuje projekt. Twój problem wynika pewnie z tego ze przyzwyczajony jesteś do środowisk bardziej auto-magicznych. Widzę też ze nie bardzo wiesz jak pisze się aplikacje z wykorzystanie m Qt. QtCreator załaduje wszystkie pliki które są umieszczone w pliku .pro, tak samo tylko te pliki będą przepuszczane przez moc. QtCenter ale nie po polsku. Co do pustego okna edytora, skąd środowisko ma wiedzieć którą klasę chcesz akurat edytować.

    3. Awatar wiktor
      wiktor

      Tak, tylko Ty. Patrząc na czas rozwoju, jest super. 😀

    4. Awatar wini
      wini

      Rzeznik – ja rozumiem twoje rozgoryczenie, no bo jak ja się dowiedziałem, że nokia nie chce zrobić gtkCreatora to całą noc ryczałem – a tak właściwie to jeszcze ryczę i niewiem czy kiedykolwiek się uspokoję.

  5. Awatar wiktorw
    wiktorw

    Świetne wieści! Już od wersji 1.0 Qt Creatora doszedłem do wniosku, że jest to lepsze narzędzie do uczenia podstaw programowania niż Dev-C++. Nowe i ulepszone funkcje w wersji 1.1 tego środowiska są tym bardziej miłe. 🙂

    1. Awatar bies
      bies

      Cały czas męczyliście Dev-Cpp na PŁ? Przecież to już za moich czasów było kiepskie? Znacznie lepiej Code::Blocks. Qt Creator też pewnie będzie lepszy (cokolwiek będzie lepsze 😉 ).

      1. Awatar Królik
        Królik

        Eclipse CDT też. Ponoć od wersji 3 jest całkiem znośne i nawet refactoring i podpowiadaczki sensownie działają. Choć to nadal nie te same możliwości co w Javie, niestety.

        1. Awatar trasz
          trasz

          Pytanie tylko, po co sie meczyc z badziewiem, zamiast po prostu uzyc Visual C – w tym przypadku wersji Express.

        2. Awatar !
          !

          To jest częściowo związane z brakiem standardowej dokumentacji w C++, niestety. Są dobre strony ale wtyczka by chciała czegoś więcej, takiego jak doc w javie.

        3. Awatar bies
          bies

          Jest doxygen. Większość kodu (łącznie z np. libstdc++) jeśli używa jakiejś dokumentacji w kodzie używa jakiegoś podzbioru tagów doxygena. Z resztą sam javadoc pewnie też w jakimś stopniu by wystarczył.

        4. Awatar !
          !

          Tak, chodzi o dokumentację dla biblioteki standardowej, słów kluczowych języka, szablonów itd. Jak uruchomić taką dokumentację?

        5. Awatar bies
          bies

          Uruchomić? Jak chcesz zobaczyć jak wygląda wynik z libstdc++ to proszę:

          http://gcc.gnu.org/onlinedocs/libstdc++/latest-do…

        6. Awatar wiktorw
          wiktorw

          trasz: Pytanie tylko, po co sie meczyc z badziewiem, zamiast po prostu uzyc Visual C – w tym przypadku wersji Express.

          Przestań, nie jestem w nastroju. Taki Dev-C++ czy Qt Creator przynajmniej obsługują GCC. To po to daliśmy spokój Visual C++ 6.0 żeby teraz wracać do wersji Express? Może jeszcze rozszerzenia języka C++ o dodatki zarządzane zaproponujesz? 😛

      2. Awatar wiktorw
        wiktorw

        Jakoś biblioteka Qt wygląda słuszniej. Pod wieloma względami (intuicyjne nazwy klas, metod, przenośność, bogata funkcjonalność).

        WxWidgets, mimo że przenośne, za bardzo mi MFC przypominają (z tego co pamiętam używają np. makr preprocesora w celu łączenia zdarzeń z metodami, mają podobną hierarchię dziedziczenia do MFC z koniecznością odpowiedniego wywoływania konstruktorów) i
        przede wszystkim są do robienia GUI, a co z dodatkową funkcjonalnością? Przykłady: obsługa sieci, XML, Unicode, pojemniki danych? Przymierzałem się do wxWidgets jak jeszcze miało toto nazwę wxWindows i naprawdę, jakoś mi się ten model programowy nie spodobał.

        Zresztą, dla mnie chyba najważniejszą klasą w Qt jest QString! Nareszcie normalna klasa w C++ obsługująca znaki Unicode, z dobrym interfejsem publicznym, z wygodną składnią podobną do Javy/C# przy typowych operacjach. Ciężko powiedzieć czy to gust czy pragmatyzm?

    2. Awatar wiktor
      wiktor

      Wybacz, ale od Dev-C++ to nie znam gorszego narzędzia. :>

      1. Awatar Linuksiarz
        Linuksiarz

        To chyba nie znasz Visala Studio od MS 🙂

        1. Awatar Moro
          Moro

          Nie przesadzaj Visual Studio to jedna z niewielu rzeczy od MS, która została w miarę dobrze zrobiona. Co prawda rozwój VS wydaje mi się dość powolny co nie zmienia faktu, że jest to dobre i szybko działające narzędzie czego nie można powiedzieć o eclipse. Qt integruje się także z VS choć nie wiem jak dobrze to działa.

        2. Awatar michallo
          michallo

          Integruje się świetnie 🙂 Swego czasu korzystałem bo z kdevelopa albo samego qtdesignera nie chciało mi się a qt creatora nie było. Tylko czasami świrowalo i nie podpowiadało nazw obiektów wygenerowanych z ui.

  6. Awatar sprae
    sprae

    Środowisko jest fajne, napisałem kilka prostych aplikacji do testów. Jednak zabrakło mi czegoś. O ile zbudowanie okna jest proste, fajne i miłe, takie też jest odwoływanie się do widgetów, to brakowało mi tam modelu. Chciałbym tam jeszcze wizard, którym zaprojektuje sobie jakąś prostą strukturę danych i będę się do niej odwoływał tak samo jak do pola "ui". Fajnie by było gdyby owa struktura posiadała sygnały reagujące na zmiany pól, validatory i inne wynalazki. Takich modeli mogłoby być kilka typów – struktura, lista itp.
    Jeśli ktoś zatem jest wspaniałym koderem Qt i brakuje mu pomysłu, zapraszam do zrealizowania mojego.
    Za wzór może mu posłużyć np. Pythonowe Kiwi. Sam mam takie modele w moich PyProgramach i wielce sobie je chwalę.

    1. Awatar sprae
      sprae

      Zapomniałem dodać, że do takiej struktury pasowałaby prosta [de]serializacja (xml, json, key-value, csv).

    2. Awatar Bolo
      Bolo

      nie rozumiem o jaki model Ci chodzi (nie znam pythona ani kiwi), jednak kontrolki mają setModel/setView itp. Standardowo możesz użyć wbudowane modele ale jest też klasa qabstractmodel na podstawie, której możesz stworzyć sobie własną strukturę danych. Mapowanie bazy danych na kontrolki jest dziecinnie proste.

      1. Awatar sprae
        sprae

        Dziękuję!
        To jeszcze tylko wizard do tego w tym Creatorze i będziemy w domu 😉

  7. Awatar macias
    macias

    Jest tylko w tym jedna zasadnicza lyzka dziegciu — wszystko to opiera sie na Qt, ktory skazony jest bledem projektowym. Otoz w Qt zamiast dodawac klocki do siebie jak normalnie sie robi, najpierw trzeba im poograniczac funkcjonalnosc, w ten sposob otrzymujemy klocki bazowe, a dopiero te laczyc ze soba. Na sieci mozna znalezc pakiety "rozszerzajace" do Qt, ktore zawieraja okrojenia modulow z tej biblioteki.

    Zglosilem to jakis czas temu oczywiscie jako blad, developerzy, jak juz ich przycisnalem do muru, przyznali mi racje, ze tak sie nie robi, ale to zaszlosc historyczna, no i nie beda tego poprawiac.

    A moim zdaniem powinni i gra warta bylaby swieczki — mozna byloby podzielic klasy, wyprowadzic faktycznie bazowe, a te stare, z nadmiarowa funkcjonalnoscia kiedy oznaczyc jako obsolete. I z glowy.

    1. Awatar Moro
      Moro

      Zaciekawiłeś mnie tym, podaj jakiś przykład bo nie bardzo rozumiem o co dokładnie chodzi.

    2. Awatar darekj
      darekj

      Zgodziłbym się z tym w 100% jakbyśmy byli jakieś może 6 lat wstecz z komputerami. Nie oszukujmy się komu by się chciało bawić w takie "klocki" teraz gdy komputery z dwoma rdzeniami są na porządku dziennym, a nie jeden telefon komórkowy jest szybszy niż komputer sprzed tych 6 lat.. Pamięć tania, procki wydajne, pamięć flash i stała również..

      Szczerze też nie widzę tutaj widocznego powodu dla którego taki właśnie podział klas miałby w jakiś sposób ułatwić życie dla developera.

      1. Awatar Moro
        Moro

        Tylko, że Qt właśnie chodzi na komórkach gdzie procki są dość ograniczone, więc takie rozważanie jak najbardziej ma sens.

    3. Awatar nomo
      nomo

      > Zglosilem to jakis czas temu oczywiscie jako blad, developerzy, jak juz ich
      > przycisnalem do muru, przyznali mi racje, ze tak sie nie robi, ale to
      > zaszlosc historyczna, no i nie beda tego poprawiac.

      Może masz jakiś link do tej dyskusji?

      1. Awatar macias
        macias

        Nie, BTS ex.Trolltecha, bo to bylo w tych czasach, nie jest publiczny. Dyskusja odbywa sie mailowo.

    4. Awatar Grimlock
      Grimlock

      Jakoś Adobe, Google,VW, Volvo, Xerox… i wielu komercyjnym klientom Qt to nie przeszkadza.

  8. Awatar dot.wrum
    dot.wrum

    QTcreator sie coraz bardziej rozkreca. Bardzo fajne IDE. Mialem sie wziasc za te QT wlasnie, albo zbytnio tutkow nie znalazlem. Tyle pomyslow na aplikacje sie marnuje 🙁
    A co do QT to mam kilka pytan(wiem ze to nie do konca miejsce na takie pytania ale moze ktos zdola odpowiedziec):
    1. te ostatnie wersje qt sa na licencji lgpl, czyli ze mozna aplikacje zamknac. Trzeba dodac te biblioteki dynamicznie. Czyli, że chodzi o to, że musze to rozprowadzac w formie plik wykonywalny + oddzielny lib tak??
    2. czy ktos zna jakies pozadne tutoriale do tego qt?? znalazlem do samego qtcreatora ale tam jest wytlumaczone troche co innego.
    3. czy qt ma w sobie jakies biblioteki do obslugi dzwieku??

    1. Awatar zk
      zk

      Ad 1. Z grubsza tak.
      Ad 2. Qt zawiera nieprawdopodobnie bogatą dokumentację klas/funkcji/technik programowania specyficznych dla Qt. Pod tym względem nie ma chyba niczego na LGPL, co mogłoby się z Qt równać. PLUS – to ważne – ponad 100 programów przykładowych (większość starannie opisana w dokumentacji) PLUS programy demonstracyjne PLUS tutorial Qt PLUS kod źródłowy Qt. To wszystko masz za friko w Qt SDK. PLUS życzliwi ludzie w Sieci.

      Jeśli juz jakiś tutorial, to polecam wygooglować "The Independent Qt Tutorial" (digitalfanatics.org). Troche leciwe i Qt3 a nie Qt4, ale facet doskonale wiedział, o czym pisze, a na tym poziomie różnica między qt3 a qt4 niewielka.

      Możesz też wypożyczyć (w ostateczności kupić) książkę (Helion, w tytule cos o aplikacjach graficznych, książka "inżynierska" dla klikaczy, ale na poczatek może wystarczy).

      Ad 3. Qt ma wszystko :-). Stosowna biblioteka nazywa się Phonon.

    2. Awatar revcorey
      revcorey

      jest książka z helionu ale podzielona na dwie części jedna do wxwidgets a druga do qt4 to się chyba nazywa programy graficzne w c++ czy jakoś tak za około 40 zł. Jest też angielska książka wydana przez dwóch twórców qt4 ale w polsce jej nie widziałem

    3. Awatar wikzbor
      wikzbor

      Kurs Qt jest w dragoni – 13,14,15 numer:
      Dragonia-kurs Qt4
      Wykłady Qt4
      MOUX – kurs Qt

      1. Awatar omni
        omni

        Dwa pierwsze znam, ale za MOUX-a wielkie dzięki.
        Może zna ktoś jeszcze coś ciekawego, po polsku o Qt?

        1. Awatar konrad95
          konrad95

          http://adrian5632.blogspot.com/ – blog twórcy ubudsl – zapowiadało się fajnie, ale z czasem blog ucichł ;/

  9. Awatar pmlody
    pmlody

    No fajnie mamy procki 2rdzeniowe ale pamietaj ze wiekszosc aplikakcji ma jeszcze byc kompatybilna w dol… w firmie gdzie pracuje na porzadku dziennym sa pocketpc z windows mobile 2003 se… i nie ma zmiluj, wyrzucenie zgodnosci z tym systemem jest nieakceptowalne…

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *