INF.04 - Projektowanie, programowanie i testowanie aplikacji
Kwalifikacja zawodowa INF.04 w zawodzie Technik programista - formuła 2019 CKE.
INF.04 - Projektowanie, programowanie i testowanie aplikacji to druga kwalifikacja wyodrębniona w zawodzie technik programista (obok INF.03). Obejmuje pełny cykl wytwarzania oprogramowania: od projektowania i doboru algorytmów, przez programowanie obiektowe, po testowanie i dokumentowanie gotowych aplikacji. Kształcenie dotyczy aplikacji konsolowych, desktopowych, mobilnych (iOS, Android) oraz zaawansowanych aplikacji webowych tworzonych w językach takich jak C++, C#, Java, Python czy JavaScript, z wykorzystaniem frameworków i systemów kontroli wersji. Absolwent potrafi zaplanować przedsięwzięcie programistyczne, zastosować metodyki zwinne, zaprogramować interfejs użytkownika oraz obsługę bazy danych, a także przetestować i udokumentować powstały produkt. To kwalifikacja silnie praktyczna, przygotowująca do pracy dewelopera aplikacji.
Egzamin - najważniejsze fakty
| Zawody | Technik programista (INF.03 + INF.04) |
|---|---|
| Część pisemna | 40 zadań zamkniętych, 60 minut, próg zaliczenia 50% |
| Zakres praktyczny | Napisanie działających aplikacji (np. konsolowej i mobilnej lub desktopowej) wraz z dokumentacją, w obiektowym języku programowania (C++, C#, Java lub Python); ocenie podlega kod źródłowy, działanie programu oraz dokumentacja. |
| Część praktyczna | model d (wykonanie aplikacji wraz z dokumentacją - rezultaty zapisywane jako pliki), 180 minut, próg zaliczenia 75% |
| Podstawa programowa | Dz.U. 2019 poz. 991 (rozporządzenie MEN) |
Efekty kształcenia
INF.04.1 - Bezpieczeństwo i higiena pracy
- Jednostka przekrojowa: zasady BHP, ergonomia stanowiska komputerowego, ochrona przed czynnikami szkodliwymi oraz udzielanie pierwszej pomocy w stanach nagłego zagrożenia zdrowotnego.
INF.04.2 - Podstawy informatyki
- Jednostka przekrojowa: parametry sprzętu i architektura systemów komputerowych, systemy informatyczne, sieci komputerowe, pozycyjne systemy liczbowe, zasady cyberbezpieczeństwa oraz normy i procedury oceny zgodności.
INF.04.3 - Projektowanie oprogramowania
- Posługuje się prostymi typami danych (liczbowymi, logicznym, znakowym i łańcuchowym).
- Posługuje się złożonymi typami danych: tablicami, rekordami, plikami, wskaźnikami i kolekcjami.
- Stosuje metody rozwiązywania problemów za pomocą algorytmów (schematy blokowe, lista kroków, pseudokod, rekurencja).
- Stosuje algorytmy sortowania i wyszukiwania oraz ocenia ich złożoność obliczeniową.
- Dobiera narzędzia i metodyki do planowania i zarządzania projektem, korzysta z systemu kontroli wersji (np. Git).
- Projektuje aplikację: analizuje wymagania klienta, projektuje interfejs użytkownika, struktury danych i zabezpieczenia.
- Planuje przedsięwzięcie programistyczne, określa cykl życia i etapy projektu, dobiera metodykę zarządzania (waterfall, Agile, Scrum).
- Stosuje wzorce projektowe w programowaniu obiektowym.
- Stosuje zagadnienia prawa autorskiego i licencjonowania oprogramowania w dziedzinie programowania.
INF.04.4 - Programowanie obiektowe
- Wykorzystuje środowisko programistyczne dla obiektowych aplikacji konsolowych (kompilatory, interpretery, debugger).
- Przestrzega zasad programowania: dzieli program na funkcje i metody, stosuje rekurencję, implementuje algorytmy.
- Korzysta z typów danych: prostych, złożonych oraz własnych typów deklarowanych przez programistę.
- Stosuje wyrażenia, instrukcje i biblioteki (operatory, instrukcje warunkowe i pętle, biblioteki C++, C#, Python).
- Stosuje zasady programowania obiektowego (klasa, obiekt, metoda, pole, dziedziczenie, hermetyzacja, polimorfizm).
- Definiuje klasy: pola, metody, konstruktory i destruktory, kwalifikatory dostępu, składniki statyczne.
- Definiuje klasy pochodne, buduje hierarchię dziedziczenia, stosuje metody wirtualne i klasy abstrakcyjne.
- Programuje szablony (wzorce) klas dla obsługi prostych typów liczbowych.
- Programuje obsługę wyjątków (instrukcje try, catch, throw).
INF.04.5 - Programowanie aplikacji desktopowych
- Wykorzystuje środowisko programistyczne dla aplikacji desktopowych (IDE, RAD, np. Visual Studio).
- Wykorzystuje frameworki do programowania aplikacji desktopowych (np. WPF, Qt).
- Programuje desktopowe aplikacje okienkowe: okna, menu, okna dialogowe, kontrolki oraz obsługę zdarzeń myszy i klawiatury (języki C++, C#, Visual Basic, Java, Python; interfejs np. w XAML).
INF.04.6 - Programowanie aplikacji mobilnych
- Wykorzystuje środowisko programistyczne dla aplikacji mobilnych (np. Visual Studio, Android Studio, XCode).
- Programuje aplikacje mobilne dla systemów iOS lub Android (języki Objective-C, Swift, Java, C#), obsługuje dane i preferencje użytkownika, interfejs UI, komunikację z internetem i bazą danych oraz przygotowuje aplikacje do publikacji w sklepie.
INF.04.7 - Programowanie aplikacji zaawansowanych webowych
- Wykorzystuje środowisko programistyczne dla zaawansowanych aplikacji webowych (np. Visual Studio, Eclipse, JetBrains).
- Wykorzystuje frameworki webowe (ASP.NET Core, Django, Angular, React.js, Node.js) oraz bibliotekę jQuery.
- Programuje zaawansowane aplikacje webowe (PHP, C#, Python, JavaScript): sesje i ciasteczka, formularze i systemy logowania, obsługę bazy danych oraz funkcje e-sklepu, portalu społecznościowego czy serwisu rezerwacyjnego.
INF.04.8 - Testowanie i dokumentowanie aplikacji
- Przeprowadza walidację kodu programu: testuje programy, identyfikuje i poprawia błędy oraz optymalizuje kod źródłowy.
- Dokumentuje tworzoną aplikację: komentarze w kodzie, dokumentacja kodu, pomoc i instrukcja użytkownika, dokumentacja wdrożenia i testów.
- Przeprowadza testy: funkcjonalne i niefunkcjonalne (użyteczności, wydajnościowe, obciążeniowe, bezpieczeństwa), planuje scenariusze, raportuje błędy i automatyzuje testowanie.
INF.04.9 - Język obcy zawodowy
- Jednostka przekrojowa: posługiwanie się językiem obcym zawodowym w mowie i piśmie w zakresie czynności, dokumentacji i komunikacji typowej dla pracy programisty.
INF.04.10 - Kompetencje personalne i społeczne
- Jednostka przekrojowa: kultura osobista i etyka zawodowa, planowanie i odpowiedzialność za zadania, radzenie sobie ze stresem, komunikacja interpersonalna, negocjacje i współpraca w zespole.
INF.04.11 - Organizacja pracy małych zespołów
- Jednostka przekrojowa: planowanie i organizacja pracy zespołu, dobór osób do zadań, kierowanie wykonaniem zadań oraz ocena jakości pracy zespołu.
Zawody i testy
Kwalifikacja INF.04 wchodzi w skład zawodu - wybierz, jak chcesz się przygotować:
Podstawa programowa kształcenia w zawodzie INF.04
Oficjalny dokument (rozporządzenie MEN) z pełnymi efektami kształcenia dla kwalifikacji INF.04 Projektowanie, programowanie i testowanie aplikacji. Pobierz pełny dokument w formacie PDF:
Najczęstsze pytania
W jakim zawodzie występuje kwalifikacja INF.04?
INF.04 wchodzi w skład zawodu technik programista razem z kwalifikacją INF.03. Zdobycie obu kwalifikacji oraz uzyskanie wykształcenia średniego pozwala otrzymać dyplom technika programisty.
Jakie umiejętności i technologie obejmuje INF.04?
INF.04 obejmuje projektowanie oprogramowania i algorytmów, programowanie obiektowe oraz tworzenie aplikacji konsolowych, desktopowych, mobilnych (iOS, Android) i zaawansowanych webowych. W praktyce wykorzystuje się języki C++, C#, Java, Python i JavaScript, frameworki (np. WPF, Qt, ASP.NET Core, Django, React.js, Node.js), system kontroli wersji Git oraz metodyki zwinne (Agile, Scrum).
Jak wygląda egzamin praktyczny z INF.04?
Część praktyczna trwa 180 minut i polega na samodzielnym wykonaniu aplikacji (np. konsolowej i mobilnej lub desktopowej) zgodnie z dokumentacją zadania oraz na przygotowaniu dokumentacji. Rezultaty - kod źródłowy, pliki projektu i efekty działania programu - zapisuje się na stanowisku egzaminacyjnym. Próg zaliczenia części praktycznej to 75%.
Czym INF.04 różni się od INF.03?
INF.03 koncentruje się na tworzeniu i administrowaniu stronami oraz aplikacjami internetowymi i bazami danych, natomiast INF.04 dotyczy projektowania, programowania i testowania pełnych aplikacji - konsolowych, desktopowych, mobilnych i zaawansowanych webowych. Obie kwalifikacje razem składają się na zawód technik programista.
Jakie są progi zaliczenia egzaminu INF.04?
Część pisemna (40 zadań zamkniętych, 60 minut) wymaga uzyskania co najmniej 50% punktów, a część praktyczna (180 minut) co najmniej 75% punktów. Oba progi są stałe dla egzaminu zawodowego w formule 2019.