Programowanie wieloplatformowe
Literatura
- M. Summerfield, Advanced Qt Programming: Creating Great Software with C++ and Qt 4, Prentice Hall, USA, 2010.
- J. Blanchette, M. Summerfield, C++ GUI Programming with Qt 4 (2nd Edition), Prentice Hall, USA, 2008.
- A. Ezust, P. Ezust, Introduction to Design Patterns in C++ with Qt (2nd Edition). Prentice Hall, 2012.
- R. Rischpater, Application Development with Qt Creator. Packt Publishing, 2013.
- Oficjalna strona Qt http://qt-project.org/
- Forum poświęcone Qt http://www.devqt.pl
- Qt Centre http://www.qtcentre.org
- Qt Video tutorial http://www.youtube.com/watch?v=HiOOWDb4YjE
- Oryginalna dokumentacja Qt http://qt-project.org/doc/qt-5.0/qtdoc/index.html
- Kurs Qt po polsku http://blog.matthew.org.pl/kategoria/programowanie/qt/kurs-qt/
Materiały dydaktyczne (wykład):
- Sloty i sygnały
- Widgety i Layout
- Kontenery
- Rysowanie
- Qt Quick
- Model MVC w Qt
- Wykorzystanie sieci w Qt
Materiały dydaktyczne (laboratorium):
- Sloty i sygnały – Ćwiczenia
- Sloty i sygnały – Kod
- Kalkulator – początek
- Widgety i Layout – Ćwiczenia
- Kontenery – Ćwiczenia
- Kontenery – Kod
- Kontenery – Zadanie dodatkowe
- Edytor tekstowy
- Edytor tekstowy – Ikony
- Dodatkowe pomocne materiały przy tworzeniu edytora tekstowego:
- Zaawansowany edytor tekstowy
- Przykład: Application z SDK
- Rysowanie – Ćwiczenia
- Rysowanie – Kod
- Fraktale – Ćwiczenia
- Przetwarzanie XML – Ćwiczenia
- Wykorzystanie klasy QTimer – Ćwiczenia
- Przetwarzanie Json – Ćwiczenia
- Bezpieczeństwo aplikacji mobilnych – Ćwiczenia
- Bezpieczeństwo aplikacji mobilnych – Materiały
- QtQuick – Ćwiczenia
Wymagania projektowe:
- Przykladowy projekt
- Projekt musi zawierać minimum 5 konkretnych funkcjonalności.
- Do projektu należy dołączyć dokumentację zawierająca diagram przypadków użycia, listę funkcjonalności w punkach wraz z jej opisem, diagram klas z opisem.
- Projekt musi implementować przynajmniej jeden (dowolny) wzorzec projektowy.
- Projekt musi być zgodny z zasadami projektowania obiektowego: abstrakcją, hermetyzacją, dziedziczeniem i polimorfizmem.
- Projekt powinien wykorzystywać możliwe największą liczbę komponentów Qt, mechanizm slotów i sygnałów oraz stosowne layouty.
- Oceniana będzie również odporność na błędy, optymalizacja kodu, złożoność zaproponowanych funkcjonalności oraz strona wizualna.