Uniwersytet Mikołaja Kopernika w Toruniu - Centralny punkt logowania
Strona główna

Programowanie urządzeń mobilnych

Informacje ogólne

Kod przedmiotu: 0800-PROGUMO
Kod Erasmus / ISCED: (brak danych) / (0613) Tworzenie i analiza oprogramowania i aplikacji Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Programowanie urządzeń mobilnych
Jednostka: Wydział Fizyki, Astronomii i Informatyki Stosowanej
Grupy: Informatyka Stosowana s2. Przedmioty do wyboru specjalistyczne (wszystkie)
Strona przedmiotu: http://fizyka.umk.pl/~jacek/dydaktyka/mobilne/xamarin/
Punkty ECTS i inne: 5.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: polski
Wymagania wstępne:

Programowanie obiektowe w języku C#



Rodzaj przedmiotu:

przedmiot fakultatywny

Całkowity nakład pracy studenta:

Godziny realizowane z udziałem nauczycieli (60h):

Wykład: 30h

Laboratorium: 30h


Czas poświęcony na pracę indywidualną studenta (60h):

Nauka do egzaminu: 30h

Przygotowanie do ćwiczeń: 30h


Łącznie 120h (4 ECTS)

Efekty uczenia się - wiedza:

W1: Student zna zagadnienia związane z programowaniem urządzeń mobilnych, w szczególności z użyciem technologii Xamarin i React Native (K_W05).

W2: Student zna język C# i AXML (K_W04).

W3: Student zna język JavaScript i JSX (K_W04).

W4: Student zna system Android (K_W06, K_W07).


Efekty uczenia się - umiejętności:

U1: Studenci potrafią przygotować programy na urządzenia mobilne z użyciem Xamarin (K_U01, K_U05, K_U08)

U2: Student potrafi przygotować programy na urządzenia mobilne z użyciem technologii React Native (K_U01, K_U02, K_U03, K_U06, K_U08, K_U11)

Efekty uczenia się - kompetencje społeczne:

K1: Student jest świadomy ograniczonego zakresu kursu i tym samym wiedzy, którą posiadł na kursie (K_K01)

K2: rozumie potrzebę zachowań profesjonalnych i przestrzegania zasad etyki (K_K02)


Metody dydaktyczne:

Wykład - omówienie zagadnień z prezentacją przykładowych projektów

Laboratorium - omówienie zagadnień z prezentacją przykładowych projektów

Metody dydaktyczne podające:

- opis
- opowiadanie
- pogadanka
- wykład informacyjny (konwencjonalny)
- wykład konwersatoryjny
- wykład problemowy

Skrócony opis:

Na wykładzie omawiane będą zagadnienia charakterystyczne dla projektów na urządzenia mobilne. Wykorzystana zostanie technologia Xamarin, która pozwala na tworzenie aplikacji na wiele platform.

Na laboratorium omawiane będą zagadnienia charakterystyczne dla projektów na urządzenia mobilne. Wykorzystana zostanie technologia React Native, która pozwala na tworzenie aplikacji na wiele platform.

Pełny opis:

Zagadnienia omówione na wykładzie (technologia Xamarin):

- Szablon projektu

- Prosta aplikacja z GUI (przycisk, etykieta, lista)

- Projektowanie interfejsu (zagnieżdżanie widoków, zmiana wyglądu kontrolek, SeekBar, Spinner, ShapeDrawable)

- Trwałe przechowywanie stanu aplikacji (ustawienia), Cykl życia aktywności

- Lokalizacja aplikacji poprzez zasoby

- Intencje

- Odczytywanie stanu urządzenia

- Czujniki

- Powiadomienia

- Usługi

- Style i tematy.

- Wątki

- Sterowanie wibracją

- Odczytywanie i dodawanie kontaktów

- Grafika 2D

- Detekcja dotyku i "wielodotyku" [txt]

- Odtwarzanie dźwięku

- Korzystanie z bazy danych SQLite

- Odczyt i zapis plików XML

- Łączenie urządzeń (TCP)

- MVVMCross

Spośród tych zagadnień wspólnie ze studentami wybierane jest ok. 3/4.

Zagadnienia omawiane na laboratorium (technologia React Native):

1. Podstawowe narzędzia do pracy z technologią React Native.

2. Instalacja oprogramowania i konfiguracja środowiska.

3. Struktura projektu, pliki źródłowe i pliki konfiguracyjne.

4. Tworzenie layoutu flexbox aplikacji mobilnej.

5. Praca z listami i plikami JSON.

6. Pobieranie zasobów z serwerów zdalnych (fetch, async, await).

7. Asynchroniczne zarządzanie stanem komponentów (state i setState).

8. Tworzenie komponentów prezentacyjnych i kontenerowych.

9. Tworzenie różnych typów nawigacji (stack, tabs, drawer) z obsługą historii, gestów i animacji przy użyciu modułu React Navigation.

10. Implementacja systemu logowania i personalizacji aplikacji przy wykorzystaniu platformy Google Firebase.

11. Wykorzystanie modułu React Native Sensors do obsługi sensorów urządzenia.

12. Zaawansowane zarządzanie stanem aplikacji przy pomocy biblioteki Redux.

13. Generowanie podpisanej aplikacji mobilnej.

Literatura:

Literatura do wykładu:

Oficjalna strona Google Android dla deweloperów

http://developer.android.com/index.html

Oficjalna strona Xamarin

https://visualstudio.microsoft.com/pl/xamarin/

Materiały ze strony wykładowcy:

http://fizyka.umk.pl/~jacek/dydaktyka/mobilne/xamarin/

Literatura do laboratorium:

Materiały za strony prowadzącego laboratorium:

http://www.is.umk.pl/~kdobosz/pum

Oficjalna dokumentacja React Native:

https://facebook.github.io/react-native

Dokumentacja projektu React Navigation:

https://reactnavigation.org

Dokumentacja modułu React Native Sensors:

https://react-native-sensors.github.io

Dokumentacja biblioteki Redux:

https://redux.js.org

Dokumentacja platformy Google Firebase:

https://firebase.google.com/

Specyfikacja ECMAScript (ECMA-262) - minimum 7 edycja (2016):

http://www.ecma-international.org/ecma-262/

Specyfikacja języka JSX:

https://jsx.github.io

Metody i kryteria oceniania:

Egzamin "z rękami na klawiaturze" weryfikuje efekty: W1-W3 i U1

Kolokwium weryfikuje efekty: W1-W3, U1

Wykład: na podstawie egzaminu

50-60% - ocena: 3

60-70% - ocena: 3+

70-80% - ocena: 4

80-90% - ocena: 4+

90-100% - ocena 5

Laboratorium: zaliczenie na ocenę na podstawie projektów zaliczeniowych

50-60% - ocena: 3

60-70% - ocena: 3+

70-80% - ocena: 4

80-90% - ocena: 4+

90-100% - ocena 5

Praktyki zawodowe:

Nie dotyczy

Zajęcia w cyklu "Semestr zimowy 2021/22" (zakończony)

Okres: 2021-10-01 - 2022-02-20
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Jacek Matulewski
Prowadzący grup: Krzysztof Dobosz, Jacek Matulewski
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Wykład - Egzamin

Zajęcia w cyklu "Semestr zimowy 2022/23" (zakończony)

Okres: 2022-10-01 - 2023-02-19
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Jacek Matulewski
Prowadzący grup: Piotr Ablewski, Jacek Matulewski
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Wykład - Egzamin

Zajęcia w cyklu "Semestr zimowy 2023/24" (zakończony)

Okres: 2023-10-01 - 2024-02-19
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 30 godzin więcej informacji
Wykład, 30 godzin więcej informacji
Koordynatorzy: Jacek Matulewski
Prowadzący grup: Piotr Ablewski, Jacek Matulewski
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Wykład - Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.
ul. Jurija Gagarina 11, 87-100 Toruń tel: +48 56 611-40-10 https://usosweb.umk.pl/ kontakt deklaracja dostępności USOSweb 7.0.2.0-1 (2024-03-12)