Wprowadzenie do systemów mobilnych

Wprowadzenie do zagadnień transmisji bezprzewodowej. Protokoły komunikacji i ich wykorzystanie w systemach mobilnych. Sieci MANET. Architektury systemów mobilnych. Technologie sieci bezprzewodowych (2G, 3G, 4G). Wybrane zastosowania systemów mobilnych.

Języki programowania urządzeń mobilnych

Technologie obiektowe. Omówienie języków programowania urządzeń mobilnych ze szczególnym uwzględnieniem Objective-C/Swift oraz Java Dalvik. Środowiska programistyczne.

Programowanie w systemie Android

Architektura systemu. Bezpieczeństwo i uprawnienia. Android SDK. Tworzenie aplikacji, aktywności i intencje. Elementy interfejsu użytkownika. Zarządzanie zasobami. Bazy danych w systemie Android. Obsługa operacji sieciowych. Obsługa multimediów i telefonii. Lokalizacja. Testowanie aplikacji.

Inżynieria oprogramowania w kontekście systemów mobilnych

Omówienie praktyk inżynierskich i narzędzi stosowanych podczas tworzenia aplikacji mobilnych: Maven, GitHub, testowanie aplikacji, profilowanie programów. Typowe wzorce stosowane przy tworzeniu aplikacji mobilnych.

Zagadnienia sieciowe w systemach mobilnych

Modele odniesienia OSI/ISO, TCP/IP. Technologia Ethernet. Protokół IP (IPv4/IPv6). Protokoły ARP, RARP, DHCP, ICMP, DNS. Protokoły TCP, UDP. Routing statyczny i dynamiczny. Urządzenia - przełącznica sieciowa, router, punkt dostępowy.

Systemy rozproszone

Pojęcia podstawowe. Wybrane architektury. Budowa aplikacji sieciowych uwzględniających urządzenia mobilne. Mechanizmy komunikacji w takich systemach. Warstwy pośredniczące obiektowe. Zarządzanie zasobami.  Typowe problemy systemów rozproszonych. Usługa internetowa (Web service).

Grafika na urządzeniach mobilnych

Wprowadzenie do grafiki komputerowej na urządzeniach mobilnych. Grafika 2D i 3D. Podstawowe pojęcia na temat środowiska Unity3D. Wieloplatformowość. Budowa i uruchamianie aplikacji. Zasoby, sceny, obiekty.

Programowanie w systemie iOS

Wprowadzenie do platformy. SDK. Komponenty aplikacji. Tworzenie aplikacji (Objective-C/Swift). Projektowanie interfejsu użytkownika. Obsługa gestów i kontrolek. Wprowadzenie do Core Data. Obsługa sieci.

Programowanie w systemie Windows Mobile

Wprowadzenie do Windows Mobile (Phone). Omówienie środowiska programistycznego. Tworzenie aplikacji. Projektowanie i programowanie interfejsu użytkownika. Obsługa wielu języków. Składowanie danych. Multimedia. Obsługa powiadomień. Zagadnienia bezpieczeństwa.

Programowanie webowe dla urządzeń mobilnych

Tworzenie interaktywnych stron mobilnych. HTML5. Zastosowanie Java Script. Programowanie aplikacji AIR dla urządzeń mobilnych. Środowiska programistyczne.

Projekt

Budowa aplikacji mobilnej dla wybranej platformy. Przygotowanie projektu technicznego. Implementacja. Testy jednostkowe i akceptacyjne.

Go to top