Rozkład materiału - INF.04

Tematy lekcji dla kwalifikacji INF.04 Projektowanie, programowanie i testowanie aplikacji z powiązaniem do efektów kształcenia podstawy programowej.

Podstawa prawna: Dz.U. 2019 poz. 991 (formuła 2019)

Godziny: 810 godz. (BHP 15 · Podstawy informatyki 30 · Projektowanie oprogramowania 75 · Programowanie obiektowe 150 · Aplikacje desktopowe 120 · Aplikacje mobilne 150 · Zaawansowane webowe 150 · Testowanie i dokumentowanie 60 · Język obcy 60)

Egzamin: Część pisemna: 40 zadań zamkniętych, 60 minut, próg zaliczenia 50%. Część praktyczna: model „dk" (dokumentacja przy komputerze), 180 minut, próg zaliczenia 75%.

Liczby godzin jednostek pochodzą z minimalnej liczby godzin w podstawie programowej; podział na działy i tematy lekcji to propozycja dydaktyczna do adaptacji. Jednostka INF.04.2 (Podstawy informatyki) nie jest powtarzana, jeśli była realizowana wcześniej (np. w INF.03). Jednostki INF.04.10 (kompetencje personalne i społeczne) oraz INF.04.11 (organizacja pracy małych zespołów) nie mają osobnej puli godzin i są realizowane przekrojowo przy warsztatach i projektach. System kontroli wersji Git jest w INF.04 elementem podstawy (kryterium INF.04.3.5), więc nie występuje jako temat ponad PP. W jednostce INF.04.7 podstawy języka JavaScript i biblioteki React są przenoszone z INF.03 - tu realizowane są treści zaawansowane i integracja frameworków (ASP.NET Core, Django, Angular, React.js, Node.js), a jQuery ujęto jako technologię zastaną. W jednostce INF.04.4 dodano porównanie języków programowania obiektowego oraz orientacyjne wprowadzenie do języka Java (oznaczone jako ponad PP) - podstawa nie wymienia Javy w tej jednostce, lecz wymaga jej w aplikacjach desktopowych (INF.04.5) i mobilnych (INF.04.6), więc uczeń powinien mieć o niej pojęcie wcześniej.

Materiały dla nauczycieli - analiza podstawy i propozycja rozkładu

To otwarte materiały dla nauczycieli: analiza podstawy programowej i gotowa propozycja rozkładu materiału (podział na działy, tematy i godziny). Minimalne godziny jednostek pochodzą wprost z podstawy i są wiążące; podział na tematy lekcji to nasza propozycja oparta na efektach kształcenia - każdy temat wskazuje powiązany efekt w kolumnie Efekty (np. INF.04.7.3). INF.04.2 (podstawy informatyki) nie jest powtarzana, jeśli była realizowana wcześniej (np. w INF.03).

Jak czytać rozkład - poziomy wymagań

Rozkład rozróżnia poziom wymagań, żeby było jasne, co jest obowiązkowe, a co naszą propozycją:

  • Kod efektu w kolumnie Efekty (np. INF.04.7.3) - minimum z podstawy programowej, twardy wymóg.
  • ponad PP - świadome rozszerzenie poza literę podstawy, uzasadnione zawodowo (np. wprowadzenie do Javy) - wartościowe, ale nieobowiązkowe.
  • Nazwy konkretnych technologii i narzędzi w tytułach (np. Kotlin, React, WPF, Retrofit; albo aktualne wersje: WCAG 2.1/2.2 zamiast 2.0 z PP, .NET MAUI zamiast wygaszonego Xamarina) - proponowana współczesna realizacja efektu, nie litera podstawy; podstawa podaje je przykładowo („np.") lub dopuszcza odpowiednik, więc można wybrać inne.
Jednostka INF.04.7 - aplikacje zaawansowane webowe (150 godz.) i dobór technologii

Kryterium INF.04.7.2 wprost wymienia frameworki ASP.NET Core, Django, Angular, React.js, Node.js oraz bibliotekę jQuery „lub jej odpowiednik". Rozkład realizuje je nie jako osobne kursy „od podstaw", lecz integracyjnie - jako spójny ekosystem do budowy aplikacji pełnostosowych:

  • Podstawy języka JavaScript i Reacta są w INF.03; w INF.04 wchodzimy od razu na poziom zaawansowany: hooki, routing, zarządzanie stanem, konsumpcja REST API, uwierzytelnianie.
  • Backend pokrywają trzy stosy: Node.js/Express, Django (Python, ORM, DRF) i ASP.NET Core (C#, EF, Identity) - uczeń uczy się dobierać stos do wymagań.
  • Frontend SPA: React (zaawansowany) i Angular (TypeScript, serwisy, formularze reaktywne) - z naciskiem na łączenie z dowolnym backendem REST.
  • jQuery jako technologia zastana (legacy) - jak w INF.03; kryterium wymienia go z nazwy, więc jest pokryty bez osobnych godzin nauki.
  • Dział E (52 godz.) to łączenie wszystkiego: SPA + API + baza, logowanie i kontrola dostępu end-to-end, realne funkcjonalności (e-sklep, portal, serwis rezerwacyjny) i zespołowy projekt pełnostosowy.
Wzorce projektowe i architektoniczne - spójny wątek

Podstawa wymienia tylko trzy wzorce projektowe (INF.04.3.8: Metoda szablonowa, Fasada, Kompozyt), ale w praktyce uczeń styka się z nimi szerzej, dlatego rozkład prowadzi jeden spójny wątek zamiast oderwanych pojęć:

  • Przegląd wzorców GoF (INF.04.3, Dział E) - kategorie kreacyjne, strukturalne i czynnościowe z przykładami (Singleton, Fabryka, Obserwator, Strategia, Adapter, Dekorator); trzy wzorce z PP omawiane jako warsztat doboru.
  • Wzorce architektoniczne (INF.04.3, Dział D) - kluczowa obserwacja: MVC, MVT/MTV i MVVM to ta sama idea (rozdzielenie danych, logiki i prezentacji), tylko różnie nazwana: MVC w ASP.NET Core, MVT/MTV w Django, MVVM w WPF i Angularze.
  • Wątek wraca w jednostkach praktycznych jako konkretne realizacje wspólnego wzorca: MVC/MTV przy Django i ASP.NET (INF.04.7), MVVM przy WPF (INF.04.5).
Języki programowania obiektowego i język Java w INF.04.4

Podstawa w jednostce programowania obiektowego nazywa wprost tylko C++, C# i Python (kryterium INF.04.4.4 dopuszcza też „inny język"), natomiast Java pojawia się dopiero w aplikacjach desktopowych (INF.04.5) i mobilnych (INF.04.6) - gdzie uczeń ma jej używać (Android), nie poznawszy podstaw. Dlatego do działu A dodano:

  • porównanie języków obiektowych (C++, C#, Java, Python) - w ramach kryterium INF.04.4.1;
  • wprowadzenie do Javy w dwóch tematach (8 godz.): JVM, składnia i struktury sterujące oraz Java obiektowo (klasy, dziedziczenie, różnice względem C#/C++) - oba oznaczone ponad PP, bo jednostka INF.04.4 nie wymienia Javy z nazwy. Cel: uczeń wchodzi w mobilki i desktop z realnym fundamentem Javy.
Jednostka INF.04.6 - aplikacje mobilne ukierunkowane na Android

Podstawa wymaga aplikacji w jednym z systemów (INF.04.6.2: „iOS lub Android"), więc rozkład wybiera ścieżkę Android (najszerszy rynek pracy, darmowe narzędzia):

  • Język: Kotlin i Java - Java jest wprost w PP, Kotlin to jej współczesny odpowiednik na JVM; obie bazują na fundamencie obiektowym z INF.04.4.
  • Stos Android: Android Studio + SDK, komponenty (Activity, Fragment, Intent), layouty XML, listy (RecyclerView), dane lokalne (SQLite/Room), sieć (REST/JSON, Retrofit), lokalizacja i powiadomienia, publikacja w Google Play (APK/AAB).
  • Kryterium XAML (INF.04.6.2) pokrywa wariant wieloplatformowy .NET MAUI (C# + XAML) jako alternatywa; Xamarin tylko jako kontekst historyczny (wygaszony przez Microsoft w 2024).
System kontroli wersji Git - w podstawie INF.04

W INF.04 Git jest wprost w kryterium INF.04.3.5 („korzysta z systemu kontroli wersji, np. Git"), więc - inaczej niż w INF.03 - nie jest tematem ponad PP; realizujemy go w jednostce projektowania oprogramowania jako warsztat pracy zespołowej z repozytorium.

INF.04.10 / INF.04.11 - realizacja przekrojowa

INF.04.10 (kompetencje personalne i społeczne) oraz INF.04.11 (organizacja pracy małych zespołów) nie mają osobnej puli godzin - realizowane są w ramach tematów jednostek rdzeniowych, w szczególności:

  • INF.04.10 - etyka zawodowa, planowanie i odpowiedzialność za zadanie, kreatywność, radzenie sobie ze stresem, komunikacja interpersonalna, praca w zespole - przy wszystkich warsztatach i projektach (INF.04.3-8).
  • INF.04.11 - planowanie i kierowanie pracą zespołu, dobór osób do zadań, harmonogram i ocena jakości - przy projektach zespołowych (aplikacja obiektowa, desktopowa, mobilna oraz pełnostosowa aplikacja webowa w INF.04.7).
Lp.Temat lekcjiGodz.Efekty
INF.04.1 - Bezpieczeństwo i higiena pracy
A. Zagrożenia i ochrona na stanowisku programisty
1Wprowadzenie do BHP. Czynniki szkodliwe, fizyczne i psychofizyczne; choroba zawodowa i wypadek przy pracy2INF.04.1.1
2Skutki czynników niebezpiecznych i uciążliwych; profilaktyka zdrowotna1INF.04.1.1
3Środki ochrony indywidualnej i zbiorowej w pracy biurowej2INF.04.1.2
4Ergonomia stanowiska komputerowego: oświetlenie, temperatura, mikroklimat2INF.04.1.2
B. Pierwsza pomoc przedmedyczna
5Ocena sytuacji, zabezpieczenie miejsca, wzywanie służb, pozycja bezpieczna2INF.04.1.3
6Resuscytacja krążeniowo-oddechowa (RKO) na fantomie wg wytycznych PRR/ERC3INF.04.1.3
7Pierwsza pomoc w stanach urazowych (krwotok, złamanie, oparzenie, amputacja)2INF.04.1.3
8Pierwsza pomoc w stanach nieurazowych (omdlenie, zawał, udar)1INF.04.1.3
INF.04.2 - Podstawy informatyki
A. Sprzęt i architektura systemu komputerowego
9Parametry urządzeń techniki komputerowej; dobór do wymagań stanowiska2INF.04.2.1
10Jednostki pojemności pamięci, przeliczanie1INF.04.2.1
11Architektura systemu komputerowego: procesor, pamięć operacyjna, magistrale3INF.04.2.2
B. Systemy informatyczne i dostępność cyfrowa
12Systemy informatyczne i ich funkcjonalność (PESEL, e-dziennik, bankowość elektroniczna)2INF.04.2.3
13Przechowywanie informacji (serwer, chmura, nośniki); systemy w biznesie (e-commerce, e-faktura)2INF.04.2.3
14Dostępność cyfrowa wg wytycznych WCAG 2.1/2.2 (podstawa wskazuje WCAG 2.0) dla osób z niepełnosprawnościami2INF.04.2.4
C. Sieci komputerowe
15Topologie sieci, model TCP/IP i protokoły komunikacji2INF.04.2.5
16Sieci przewodowe i bezprzewodowe; przepustowość; transmisja synchroniczna i asynchroniczna2INF.04.2.5
17Bezpieczeństwo w sieci, komunikatory, netykieta2INF.04.2.5
D. Systemy liczbowe
18Pozycyjne systemy liczbowe: dwójkowy, ósemkowy, szesnastkowy, dziesiętny; konwersje3INF.04.2.6
19Kod uzupełnieniowy do dwóch; działania logiczne i arytmetyczne na liczbach binarnych3INF.04.2.6
E. Cyberbezpieczeństwo, normy i prawo
20Szkodliwe oprogramowanie, ataki hakerskie i środki zabezpieczeń2INF.04.2.7
21Ochrona danych osobowych, prywatność i tożsamość cyfrowa; bezpieczne transakcje2INF.04.2.7
22Normalizacja: normy i procedury oceny zgodności2INF.04.2.8
INF.04.3 - Projektowanie oprogramowania
A. Typy danych
23Proste typy danych: liczbowe stało- i zmiennoprzecinkowe, logiczny, znakowy, łańcuchowy4INF.04.3.1
24Złożone typy danych: tablice jedno- i dwuwymiarowe, dynamiczne, asocjacyjne4INF.04.3.2
25Rekordy (struktura, unia), typ plikowy i wskaźnikowy2INF.04.3.2
26Kolekcje: listy, kolejki, stosy, wektory, iteratory; projektowanie zestawów danych2INF.04.3.2
B. Algorytmika
27Metody zapisu algorytmów: schematy blokowe, lista kroków, pseudokod, drzewa decyzyjne2INF.04.3.3
28Algorytmy iteracyjne, tekstowe, szyfrowania i tablicowe2INF.04.3.3
29Algorytmy rekurencyjne; problemy i metody (heurystyczne, problem komiwojażera)2INF.04.3.3
30Złożoność obliczeniowa algorytmów2INF.04.3.3
31Algorytmy sortowania: bąbelkowe, przez wstawianie, szybkie, dziel i zwyciężaj2INF.04.3.4
32Algorytmy wyszukiwania dla tablic, list, kolejek i stosów2INF.04.3.4
C. Zarządzanie projektem programistycznym
33Narzędzia zarządzania projektem (Jira, Trello); diagram Gantta4INF.04.3.5
34System kontroli wersji Git - repozytorium, gałęzie, praca zespołowa (warsztat)4INF.04.3.5
35Cykl życia projektu informatycznego, cel i fazy realizacji2INF.04.3.7
36Metodyki zarządzania: kaskadowa, przyrostowa, prototypowa, zwinne (Agile: Scrum/Kanban/Lean)4INF.04.3.7
D. Projektowanie aplikacji i architektura
37Analiza wymagań klienta i przełożenie ich na specyfikację techniczną4INF.04.3.6
38Projektowanie interfejsu użytkownika i wyglądu aplikacji; dostosowanie do platform4INF.04.3.6
39Architektura aplikacji: klient-serwer, podział na warstwy, paradygmaty (strukturalny, obiektowy)2INF.04.3.6
40Wzorce architektoniczne: MVC, MVT/MTV i MVVM - wspólna idea (rozdzielenie danych, logiki i prezentacji), różne nazwy (ASP.NET, Django, WPF/Angular)4INF.04.3.6
41Projektowanie struktur danych i funkcjonalności aplikacji2INF.04.3.6
42Planowanie systemu zabezpieczeń aplikacji2INF.04.3.6
43Projekt aplikacji - warsztat zespołowy (analiza, harmonogram, organizacja prac)4INF.04.3.6INF.04.3.7
E. Wzorce projektowe i prawo autorskie
44Przegląd wzorców projektowych GoF: kategorie kreacyjne, strukturalne i czynnościowe; przykłady (Singleton, Fabryka, Obserwator, Strategia, Adapter, Dekorator)4INF.04.3.8
45Wzorce z podstawy w praktyce obiektowej: Metoda szablonowa, Fasada, Kompozyt4INF.04.3.8
46Dobór wzorca projektowego do zadania programistycznego (warsztat)3INF.04.3.8
47Prawo autorskie w programowaniu: prawa osobiste i majątkowe, własność intelektualna, licencje4INF.04.3.9
INF.04.4 - Programowanie obiektowe
A. Środowisko, języki i podstawy programowania
48Kompilatory i interpretery; etapy kompilacji i interpretacji kodu2INF.04.4.1
49Przegląd i porównanie języków programowania obiektowego: C++, C#, Java, Python (model wykonania, składnia, typowe zastosowania)2INF.04.4.1
50Język Java - maszyna wirtualna JVM, składnia, typy danych i struktury sterujące (wprowadzenie pod aplikacje mobilne i desktopowe)4ponad PP
51Java obiektowo - klasy, obiekty, dziedziczenie i pakiety; różnice względem C# i C++ (warsztat)4ponad PP
52Środowisko programistyczne, debugger, biblioteki; kompilacja i uruchamianie programów4INF.04.4.1
53Analiza błędów w kodzie za pomocą debuggera (warsztat)2INF.04.4.1
54Podział programu na funkcje i metody; rekurencja4INF.04.4.2
55Implementacja algorytmów w programie4INF.04.4.2
B. Typy, wyrażenia i instrukcje
56Proste i złożone typy danych; deklarowanie własnych typów i zmiennych4INF.04.4.3
57Operacje na zmiennych: wejścia/wyjścia, arytmetyczne, logiczne; typy złożone4INF.04.4.3
58Operatory: arytmetyczne, przypisania, porównania, logiczne, bitowe, łańcuchowe4INF.04.4.4
59Priorytety operatorów i budowanie wyrażeń2INF.04.4.4
60Instrukcje warunkowe i instrukcja wyboru4INF.04.4.4
61Instrukcje pętli4INF.04.4.4
62Biblioteki języka (C++/C#/Python): standardowa, matematyczna, algorytmy2INF.04.4.4
C. Programowanie obiektowe
63Podejście obiektowe; pojęcia: klasa, obiekt, metoda, pole4INF.04.4.5
64Dziedziczenie, hermetyzacja, polimorfizm - wprowadzenie4INF.04.4.5
65Podział zagadnienia na klasy; powoływanie obiektów4INF.04.4.5
66Definiowanie pól klasy i kwalifikatorów dostępu4INF.04.4.6
67Metody klasy; konstruktory (w tym kopiujący) i destruktor6INF.04.4.6
68Implementacja funkcjonalności klasy; odwołania obiektu do składowych6INF.04.4.6
69Składniki statyczne klasy i metody do ich obsługi4INF.04.4.6
70Klasy dziedziczone i zaprzyjaźnione; funkcje zaprzyjaźnione4INF.04.4.6
71Hierarchia dziedziczenia; klasy bazowe i pochodne6INF.04.4.7
72Metody wirtualne i klasy abstrakcyjne6INF.04.4.7
73Warsztat OOP: projekt z hermetyzacją, dziedziczeniem i polimorfizmem6INF.04.4.5INF.04.4.7
D. Szablony i obsługa wyjątków
74Szablony (wzorce) klas dla prostych typów liczbowych4INF.04.4.8
75Obsługa wyjątków: szkielet try/catch, instrukcja throw6INF.04.4.9
76Lista możliwych błędów wykonania i definiowanie ich obsługi4INF.04.4.9
77Warsztat: aplikacja konsolowa OOP z obsługą wyjątków6INF.04.4.9
E. Projekt zaliczeniowy - aplikacja obiektowa
78Projekt aplikacji obiektowej - analiza i model klas6INF.04.4.5INF.04.4.6
79Projekt - implementacja warstwy logiki i hierarchii klas8INF.04.4.6INF.04.4.7
80Projekt - obsługa danych i wyjątków8INF.04.4.3INF.04.4.9
81Projekt - refaktoryzacja, testy i prezentacja4INF.04.4.2INF.04.4.9
INF.04.5 - Programowanie aplikacji desktopowych
A. Środowisko i framework desktopowy
82Środowisko IDE/RAD dla aplikacji desktopowych (Visual Studio)4INF.04.5.1
83Narzędzia wykorzystywane w procesie tworzenia aplikacji desktopowych2INF.04.5.1
84Pojęcie frameworka; frameworki desktopowe (WPF, Qt)4INF.04.5.2
85Język opisu interfejsu XAML - podstawy4INF.04.5.3
86Pierwsza aplikacja okienkowa z użyciem frameworka6INF.04.5.2INF.04.5.3
B. Interfejs użytkownika i kontrolki
87Elementy interfejsu: okna, dialogi modalne i niemodalne, kontrolki4INF.04.5.3
88Projektowanie okien aplikacji w XAML6INF.04.5.3
89Kontrolki i ich właściwości6INF.04.5.3
90System menu aplikacji i paski narzędzi4INF.04.5.3
91Okna dialogowe aplikacji4INF.04.5.3
92Układ (layout), wiązanie danych (data binding) i wzorzec MVVM w WPF4INF.04.5.3
C. Logika aplikacji i obsługa danych
93Obsługa zdarzeń myszy i klawiatury6INF.04.5.3
94Język programowania desktopu (C#/Java/Python) - logika aplikacji6INF.04.5.3
95Walidacja danych i obsługa błędów w interfejsie4INF.04.5.3
96Operacje na plikach i danych w aplikacji desktopowej4INF.04.5.3
97Połączenie aplikacji desktopowej z bazą danych4INF.04.5.3
D. Projekt aplikacji desktopowej
98Projekt - analiza wymagań i makieta interfejsu8INF.04.5.1INF.04.5.3
99Projekt - budowa interfejsu użytkownika12INF.04.5.3
100Projekt - logika aplikacji i obsługa zdarzeń12INF.04.5.3
101Projekt - integracja z danymi i bazą danych8INF.04.5.3
102Projekt - testy, dopracowanie i prezentacja8INF.04.5.3
INF.04.6 - Programowanie aplikacji mobilnych
A. Środowisko i platforma Android
103Platformy mobilne: Android (główny nurt) i iOS; architektura systemu Android2INF.04.6.1
104Android Studio i Android SDK; IDE/RAD, emulator i urządzenie fizyczne4INF.04.6.1
105Narzędzia ekosystemu Android: Gradle, debugger, profiler4INF.04.6.1
106Pierwsza aplikacja Android (Kotlin/Java): struktura projektu i uruchomienie6INF.04.6.1INF.04.6.2
B. Język i interfejs aplikacji Android
107Język Androida: Kotlin i Java - składnia w kontekście Androida (na bazie obiektówek z INF.04.4)6INF.04.6.2
108Komponenty aplikacji: Activity, Fragment, cykl życia, Intent6INF.04.6.2
109Budowa interfejsu: layouty XML, widoki i kontrolki6INF.04.6.2
110Listy danych (RecyclerView) i nawigacja między ekranami4INF.04.6.2
111Grafika, animacje, dźwięk i zasoby aplikacji4INF.04.6.2
112Wariant wieloplatformowy: .NET MAUI (C# + XAML) jako alternatywa dla natywnego Androida; Xamarin jako kontekst historyczny2INF.04.6.2
113Warsztat: interfejs aplikacji Android4INF.04.6.2
C. Dane, sieć i funkcje urządzenia
114Przechowywanie danych: SharedPreferences i preferencje użytkownika6INF.04.6.2
115Lokalna baza danych: SQLite i biblioteka Room8INF.04.6.2
116Komunikacja z internetem: REST/JSON (Retrofit/HTTP), pobieranie i wysyłanie danych8INF.04.6.2
117Lokalizacja (GPS), czujniki i powiadomienia (notifications)6INF.04.6.2
118Uprawnienia aplikacji i bezpieczeństwo danych na Androidzie4INF.04.6.2
119Proste aplikacje Android: zegar, kalendarz, formularz, powiadomienia4INF.04.6.2
D. Testowanie, publikacja i projekt aplikacji Android
120Dostosowanie aplikacji do urządzeń: smartfon, tablet, wersje Androida6INF.04.6.2
121Uruchamianie i testowanie na emulatorze i urządzeniu fizycznym6INF.04.6.2
122Przygotowanie do publikacji w Google Play: podpis, format APK/AAB, listing sklepu6INF.04.6.2
123Projekt aplikacji Android - analiza i projekt interfejsu12INF.04.6.1INF.04.6.2
124Projekt - implementacja logiki i obsługi danych (Kotlin/Java)16INF.04.6.2
125Projekt - integracja z siecią i bazą danych, testy12INF.04.6.2
126Projekt - publikacja i prezentacja8INF.04.6.2
INF.04.7 - Programowanie aplikacji zaawansowanych webowych
A. Architektura i środowisko aplikacji webowych
127Architektura nowoczesnych aplikacji webowych: SPA, SSR, REST API, model klient-serwer4INF.04.7.1INF.04.7.3
128Środowiska IDE/RAD dla web (Visual Studio, JetBrains, VS Code) i narzędzia2INF.04.7.1
129Ekosystem i menedżery pakietów (npm, pip, NuGet), narzędzia build i konteneryzacja4INF.04.7.1
130jQuery jako technologia zastana (legacy) - rozpoznawanie i utrzymanie kodu2INF.04.7.2
131Mechanizmy wspólne: HTTP, sesje, ciasteczka, uwierzytelnianie, CORS2INF.04.7.3
B. Backend w Node.js (Express)
132Node.js i Express: serwer, routing, middleware4INF.04.7.1INF.04.7.3
133REST API w Node.js: kontrolery, walidacja, obsługa błędów4INF.04.7.3
134Sesje, ciasteczka, JWT; logowanie i kontrola dostępu4INF.04.7.3
135Integracja z bazą danych (SQL/NoSQL)4INF.04.7.3
136Warsztat: REST API backendu w Node.js4INF.04.7.3
C. Frontend SPA: React (zaawansowany) i Angular
137React zaawansowany (na bazie podstaw z INF.03): hooki, routing, zarządzanie stanem6INF.04.7.2INF.04.7.3
138React: konsumpcja REST API, uwierzytelnianie po stronie klienta6INF.04.7.2INF.04.7.3
139Angular: architektura, komponenty, moduły, TypeScript6INF.04.7.2
140Angular: serwisy, HttpClient, routing, formularze reaktywne6INF.04.7.2INF.04.7.3
141Integracja SPA (React/Angular) z backendem REST - pełny przepływ danych8INF.04.7.2INF.04.7.3
D. Backend w Django i ASP.NET Core
142Django: wzorzec MTV (odpowiednik MVC), modele, ORM i migracje6INF.04.7.2INF.04.7.3
143Django: widoki, szablony, formularze, sesje i uwierzytelnianie6INF.04.7.2INF.04.7.3
144Django REST Framework: API dla aplikacji SPA4INF.04.7.2INF.04.7.3
145ASP.NET Core: wzorzec MVC (ten sam model co MTV w Django), Razor, kontrolery, Entity Framework6INF.04.7.1INF.04.7.2
146ASP.NET Core Web API: endpointy, Identity, autoryzacja6INF.04.7.2INF.04.7.3
147Porównanie i dobór stosu (Node.js / Django / ASP.NET Core) do wymagań projektu4INF.04.7.1INF.04.7.2
E. Łączenie technologii - aplikacja pełnostosowa
148Projektowanie aplikacji pełnostosowej: SPA + API + baza danych8INF.04.7.1INF.04.7.3
149Dynamiczne formularze i walidacja po stronie klienta i serwera4INF.04.7.3
150System logowania, role i kontrola dostępu end-to-end6INF.04.7.3
151Funkcjonalności e-sklepu: katalog, koszyk, zamówienia, płatności8INF.04.7.3
152Funkcjonalności portalu społecznościowego / serwisu ogłoszeniowego / rezerwacyjnego8INF.04.7.3
153Integracja frontend-backend-baza: REST/JSON, sesje, bezpieczeństwo8INF.04.7.3
154Projekt zespołowy - aplikacja łącząca wybrane technologie (warsztat)10INF.04.7.1INF.04.7.2INF.04.7.3
INF.04.8 - Testowanie i dokumentowanie aplikacji
A. Walidacja i jakość kodu
155Narzędzia i środowiska do testowania programów2INF.04.8.1
156Wykrywanie i poprawa błędów w tworzonych programach i skryptach4INF.04.8.1
157Optymalizacja kodu źródłowego4INF.04.8.1
158Warsztat: walidacja i poprawa kodu4INF.04.8.1
B. Dokumentowanie aplikacji
159Komentarze w kodzie źródłowym i dokumentacja kodu4INF.04.8.2
160Dokumentacja i instrukcja użytkownika; pomoc programu4INF.04.8.2
161Dokumentacja wdrożenia projektu4INF.04.8.2
162Dokumentacja z wykonanych testów2INF.04.8.2
163Warsztat: dokumentacja aplikacji4INF.04.8.2
C. Testowanie aplikacji
164Metodyki testowania; testy funkcjonalne i niefunkcjonalne4INF.04.8.3
165Testy niefunkcjonalne: wydajnościowe, obciążeniowe, bezpieczeństwa, użyteczności, zgodności4INF.04.8.3
166Testy interfejsu i testowanie prototypu projektu interfejsu4INF.04.8.3
167Planowanie i pisanie scenariuszy testowania aplikacji4INF.04.8.3
168Systemy raportowania błędów (BugZilla, JIRA)4INF.04.8.3
169Automatyzacja procesu testowania4INF.04.8.3
170Warsztat: testowanie aplikacji, raportowanie i weryfikacja zgodności z wymaganiami4INF.04.8.3
INF.04.9 - Język obcy zawodowy
A. Słownictwo zawodowe i rozumienie wypowiedzi
171Słownictwo: stanowisko pracy, narzędzia i środowiska programistyczne4INF.04.9.1
172Słownictwo: technologie programistyczne, frameworki, bazy danych4INF.04.9.1
173Słownictwo: dokumentacja, procesy i usługi IT4INF.04.9.1
174Rozumienie wypowiedzi ustnych: instrukcje, prezentacje, materiały instruktażowe6INF.04.9.2
175Rozumienie tekstów: dokumentacja techniczna, instrukcje, opisy API6INF.04.9.2
B. Tworzenie wypowiedzi i interakcja zawodowa
176Tworzenie wypowiedzi ustnych: opis działania, instrukcja, komunikat4INF.04.9.3
177Tworzenie tekstów: e-mail zawodowy, CV, list motywacyjny, dokumentacja6INF.04.9.3
178Rozmowa zawodowa: z klientem, zespołem, rozmowa telefoniczna6INF.04.9.4
179Negocjacje, wyrażanie i uzasadnianie opinii, formy grzecznościowe4INF.04.9.4
180Prezentacja techniczna w języku obcym4INF.04.9.4
C. Mediacja językowa i strategie
181Zmiana formy przekazu; informacje z materiałów wizualnych i audiowizualnych4INF.04.9.5
182Mediacja językowa: przekazywanie informacji język polski - język obcy4INF.04.9.5
183Strategie językowe: słowniki, kontekst, internacjonalizmy, kompensacja4INF.04.9.6
Wróć do kwalifikacji