Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.04 - Projektowanie, programowanie i testowanie aplikacji
  • Data rozpoczęcia: 9 stycznia 2025 12:51
  • Data zakończenia: 9 stycznia 2025 13:04

Egzamin zdany!

Wynik: 34/40 punktów (85,0%)

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Jak przedstawia się liczba dziesiętna 255 w systemie szesnastkowym?

A. EF
B. FE
C. FF
D. 100
Liczba dziesiętna 255 jest reprezentowana w systemie szesnastkowym jako FF. Aby zrozumieć, dlaczego tak jest, należy przyjrzeć się procesowi konwersji z systemu dziesiętnego na szesnastkowy. System dziesiętny oparty jest na podstawie 10, co oznacza, że używa dziesięciu cyfr od 0 do 9. W systemie szesnastkowym, który ma podstawę 16, używane są cyfry od 0 do 9 oraz litery od A do F, gdzie A odpowiada 10, B - 11, C - 12, D - 13, E - 14, a F - 15. Aby przeliczyć 255 na system szesnastkowy, dzielimy tę liczbę przez 16. Pierwsza operacja daje nam 15 jako wynik całkowity oraz 15 jako resztę, co w systemie szesnastkowym jest reprezentowane literą F. Dalsze dzielenie 15 przez 16 daje wynik 0 oraz resztę 15, co również jest reprezentowane jako F. Zatem, zapisując reszty w odwrotnej kolejności, otrzymujemy FF. Taki zapis jest używany w różnych standardach, takich jak HTML i CSS, gdzie kolory są przedstawiane w formacie szesnastkowym. Przykładem może być kolor czerwony, którego zapis to #FF0000, co oznacza maksymalną wartość czerwonego składnika i zera dla niebieskiego oraz zielonego. Warto znać te konwersje, zwłaszcza w programowaniu i projektowaniu stron internetowych, gdzie często pracuje się z wartościami szesnastkowymi.

Pytanie 2

Jakie działania można podjąć, aby uniknąć pogorszenia wzroku podczas korzystania z komputera?

A. Używać filtrów przeciwodblaskowych na ekranie
B. Zachować stałą temperaturę w biurze
C. Stosować ergonomiczne podkładki pod ręce
D. Korzytać ze słuchawek tłumiących dźwięki
Stosowanie filtrów przeciwodblaskowych na monitorze to skuteczny sposób na zapobieganie pogorszeniu wzroku podczas pracy przy komputerze. Filtry te redukują odbicia światła, zmniejszając zmęczenie oczu i poprawiając komfort pracy. Długotrwała praca przy komputerze bez odpowiedniej ochrony może prowadzić do zespołu suchego oka, bólu głowy i problemów z widzeniem. Filtry przeciwodblaskowe to prosty, ale bardzo efektywny sposób na poprawę ergonomii stanowiska pracy. W połączeniu z odpowiednim ustawieniem monitora, regularnymi przerwami oraz ćwiczeniami wzrokowymi, pomagają one w utrzymaniu zdrowia oczu.

Pytanie 3

Który framework jest powszechnie wykorzystywany do tworzenia aplikacji internetowych w języku Python?

A. Angular
B. Django
C. ASP.NET Core
D. React.js
Django to framework stworzony specjalnie do budowy aplikacji webowych w języku Python. Jest jednym z najbardziej popularnych i zaawansowanych frameworków typu full-stack, który oferuje szeroki wachlarz narzędzi umożliwiających szybkie i efektywne tworzenie aplikacji internetowych. Django pozwala na tworzenie aplikacji zgodnych z zasadą DRY (Don't Repeat Yourself), co oznacza minimalizację powtarzalnego kodu. Posiada wbudowany panel administracyjny, system ORM (Object-Relational Mapping) oraz zabezpieczenia przed atakami CSRF i XSS. Dzięki Django programiści mogą skupić się na rozwijaniu logiki biznesowej, a nie na konfiguracji podstawowych funkcji aplikacji, co znacznie skraca czas wdrożenia gotowego produktu.

Pytanie 4

Użycie modyfikatora abstract w definicji metody w klasie wskazuje, że

A. klasa ta stanowi podstawę dla innych klas
B. klasy pochodne nie mogą implementować tej metody
C. trzeba zaimplementować tę metodę w tej klasie
D. dziedziczenie po tej klasie jest niedozwolone
Modyfikator 'abstract' w definicji klasy oznacza, że klasa ta jest bazowa dla innych klas i nie można jej instancjonować bezpośrednio. Taka klasa zawiera co najmniej jedną metodę abstrakcyjną, którą muszą zaimplementować klasy pochodne.

Pytanie 5

Jakie jest główne zadanie debuggera w środowisku programowania?

A. Analiza i usuwanie błędów w kodzie
B. Tworzenie kodu źródłowego
C. Generowanie plików wykonywalnych
D. Kompilowanie kodu źródłowego
Debugger to narzędzie programistyczne służące do analizy i usuwania błędów w kodzie źródłowym. Pozwala na krokowe wykonywanie programu, śledzenie wartości zmiennych i identyfikowanie miejsc, w których występują błędy logiczne lub składniowe. Debugger umożliwia zatrzymanie wykonania programu w dowolnym miejscu, ustawienie tzw. breakpointów (punktów przerwania) i monitorowanie przepływu sterowania. Dzięki temu programista może dokładnie przeanalizować, dlaczego program nie działa zgodnie z oczekiwaniami i szybko znaleźć przyczynę problemu. Debuggery są dostępne w większości zintegrowanych środowisk programistycznych (IDE), takich jak Visual Studio, PyCharm czy IntelliJ IDEA.

Pytanie 6

Jakie są różnice między kompilatorem a interpretem?

A. Interpreter tworzy plik wykonywalny, który funkcjonuje niezależnie od otoczenia
B. Kompilator przetwarza kod na język maszynowy w momencie jego wykonywania
C. Kompilator przekształca kod źródłowy na język maszynowy przed uruchomieniem aplikacji
D. Interpreter konwertuje kod źródłowy na język maszynowy przed jego kompilacją
Kompilator zamienia kod źródłowy na język maszynowy zanim program się uruchomi. W efekcie dostajemy plik wykonywalny, taki jak .exe w Windowsie. To fajne, bo po skompilowaniu aplikacja działa samodzielnie i nie potrzeba jej tłumaczyć od nowa. Dzięki temu programy, które są skompilowane, są zazwyczaj dużo szybsze i lepiej zoptymalizowane niż te, które są interpretowane. Warto wiedzieć, że kompilatory są wykorzystywane w językach takich jak C, C++ czy Java. Kompilacja ma też tę zaletę, że można wykrywać błędy jeszcze przed uruchomieniem programu, co jest naprawdę przydatne.

Pytanie 7

W językach C++ bądź C# termin virtual można wykorzystywać w kontekście

A. funkcji zaprzyjaźnionych
B. destruktorów
C. metod klasy
D. atrybutów klasy
W językach C++ i C# słowo kluczowe 'virtual' można stosować do metod klasy, co umożliwia ich nadpisanie w klasach pochodnych. Pozwala to na implementację polimorfizmu, co jest kluczowym elementem programowania obiektowego.

Pytanie 8

Jaką rolę odgrywa destruktor w definicji klasy?

A. Generuje nowe instancje klasy
B. Usuwa instancje i zwalnia pamięć
C. Realizuje testy jednostkowe klasy
D. Ustawia wartości pól klasy
Destruktor to specjalna metoda klasy, która jest automatycznie wywoływana w momencie, gdy obiekt przestaje być używany. Jego zadaniem jest zwalnianie zasobów, takich jak pamięć dynamiczna, uchwyty do plików lub połączenia sieciowe. Destruktor ma tę samą nazwę co klasa, poprzedzoną symbolem `~` w C++ (`~Samochod()`). Destruktor zapobiega wyciekom pamięci i zapewnia, że wszystkie zasoby są poprawnie zwalniane po zakończeniu pracy obiektu. Jest to kluczowy element zarządzania cyklem życia obiektu w językach takich jak C++.

Pytanie 9

Jakie elementy powinny być zawarte w instrukcji dla użytkownika danej aplikacji?

A. Informacje o narzędziach programistycznych zastosowanych w procesie tworzenia aplikacji
B. Opis instalacji, konfiguracji oraz obsługi oprogramowania
C. Wyjaśnienie struktur danych wykorzystywanych w kodzie
D. Harmonogram realizacji projektu
W instrukcji użytkownika aplikacji warto, żeby był opis tego, jak zainstalować, skonfigurować i korzystać z programu. Taka dokumentacja, pisana krok po kroku, pomaga użytkownikowi przejść przez wszystkie etapy, od pobrania oprogramowania, przez instalację, aż po to, żeby w pełni wykorzystać wszystkie funkcje. Dobrze, żeby były tam też info o wymaganiach systemowych, sposobach radzenia sobie z problemami czy aktualizacjach oprogramowania. Moim zdaniem, taka dokładna instrukcja jest mega ważna, bo zmniejsza szanse na napotkanie kłopotów podczas korzystania z aplikacji i sprawia, że łatwiej jest wdrożyć ją w pracy. Jak użytkownicy mają porządnie napisaną instrukcję, to są bardziej zadowoleni i szybciej przyzwyczajają się do nowego narzędzia.

Pytanie 10

W jakiej sytuacji kolekcja typu lista okaże się bardziej wydajna niż tablica?

A. Gdy mamy pewność co do dokładnego rozmiaru kolekcji przed kompilacją
B. Gdy liczba elementów w kolekcji zmienia się dynamicznie
C. Gdy chcemy uzyskać dostęp do elementów przy pomocy indeksu
D. Gdy liczba elementów w kolekcji jest niezmienna
Lista to dynamiczna struktura danych, która pozwala na efektywne dodawanie i usuwanie elementów, zwłaszcza gdy liczba elementów zmienia się w trakcie działania programu. Listy są bardziej elastyczne niż tablice, ponieważ mogą dynamicznie dostosowywać swoją wielkość bez potrzeby alokacji dodatkowej pamięci. W przypadku dynamicznych operacji, takich jak częste wstawianie i usuwanie elementów, listy są znacznie bardziej wydajne niż tablice, które wymagają przesunięcia wszystkich elementów po każdej operacji. Listy świetnie sprawdzają się w implementacji kolejek, stosów oraz w strukturach, które muszą rosnąć i kurczyć się podczas działania aplikacji.

Pytanie 11

Po uruchomieniu podanego kodu w języku C++ w konsoli pojawi się ciąg liczb

Ilustracja do pytania
A. 2 3 4 5 6
B. 1 2 3 4 5 6
C. 2 3 4 5 6 7
D. 1 2 3 4 5
Kod w C++ wyświetla ciąg liczb '2 3 4 5 6', co wynika z iteracyjnego zwiększania wartości początkowej w pętli. Algorytm startuje od wartości 2 i zatrzymuje się przed osiągnięciem 7, co skutkuje wyświetleniem kolejnych liczb.

Pytanie 12

Jakie narzędzie programowe jest odpowiedzialne za konwersję kodu źródłowego na formę zrozumiałą dla maszyny, weryfikuje wszystkie polecenia pod kątem ewentualnych błędów, a następnie generuje moduł do wykonania?

A. debugger
B. interpreter
C. kompilator
D. dekompilator
Kompilator to narzędzie, które tłumaczy kod źródłowy na kod maszynowy lub bajtowy, umożliwiając jego późniejsze wykonanie przez komputer. Kompilator analizuje cały kod przed jego uruchomieniem, identyfikując błędy składniowe i logiczne, co pozwala na generowanie pliku wykonywalnego.

Pytanie 13

Aby tworzyć aplikacje desktopowe w języku Java, można wybrać jedno z poniższych środowisk

A. PyCharm
B. NetBeans
C. Ms Visual Studio
D. SharpDevelop
SharpDevelop – Jest to narzędzie do programowania w C#. PyCharm – IDE dedykowane językowi Python, nie Java. Visual Studio – Obsługuje wiele języków, ale Java nie jest natywnie wspierana przez to środowisko.

Pytanie 14

Jakie jest podstawowe zadanie funkcji zaprzyjaźnionej w danej klasie?

A. Generowanie kopii pól obiektu w innej klasie
B. Umożliwienie funkcji dostępu do prywatnych atrybutów klasy
C. Dodawanie nowych instancji do klasy
D. Ograniczenie widoczności atrybutów klasy
Dodawanie nowych obiektów do klasy to zadanie konstruktorów, a nie funkcji zaprzyjaźnionych. Tworzenie kopii pól obiektu w innej klasie może być realizowane za pomocą mechanizmów kopiujących lub metod publicznych, ale nie jest to funkcja zaprzyjaźniona. Ograniczenie zakresu widoczności pól klasy to efekt zastosowania modyfikatorów dostępu, takich jak private, protected lub public, a nie przyjaźni klasowej.

Pytanie 15

Wskaż właściwość charakterystyczną dla metody abstrakcyjnej?

A. jest pusta w klasach dziedziczących
B. zawsze jest prywatna
C. nie ma implementacji w klasie bazowej
D. jest pusta w klasie nadrzędnej
Metoda abstrakcyjna nie jest prywatna – musi być dostępna dla klas potomnych, by mogły ją zaimplementować. W klasie bazowej nie jest pusta, lecz pozbawiona implementacji – różnica jest istotna, ponieważ brak implementacji to konieczność, a nie opcjonalność. Metoda abstrakcyjna nie jest pusta w klasach potomnych – to właśnie w nich musi zostać w pełni zaimplementowana, aby klasa mogła zostać instancjonowana.

Pytanie 16

Jakie jest wymagane minimalne natężenie światła w biurze na stanowisku pracy?

A. 100 lx
B. 500 lx
C. 800 lx
D. 200 lx
Minimalne natężenie oświetlenia, jakie powinno być w biurze, to 500 lx (luksów). To taki standard, który ustalono w normach BHP i ergonomii. Dzięki temu lepiej się pracuje przy komputerze i łatwiej robić zadania, które wymagają dobrego wzroku. Odpowiednie oświetlenie zdecydowanie zmniejsza zmęczenie oczu i poprawia koncentrację, co jest istotne, żeby uniknąć bólów głowy i być bardziej efektywnym w pracy. Ważne, żeby światło było równomierne i nie odbijało się na monitorze, bo to może rozpraszać. Warto dbać o takie warunki, bo to zmniejsza ryzyko problemów ze wzrokiem, a komfort pracy jest mega ważny, zwłaszcza gdy ktoś spędza dużo czasu przed komputerem.

Pytanie 17

Użycie typu DECIMAL w SQL wymaga wcześniejszego określenia liczby cyfr przed przecinkiem oraz ilości cyfr za przecinkiem. Jest to zapis:

A. logicznym
B. stałoprzecinkowy
C. łańcuchowym
D. zmiennoprzecinkowy
Typ DECIMAL w języku SQL to typ zmiennoprzecinkowy, który umożliwia przechowywanie liczb z określoną liczbą miejsc po przecinku. Jest szeroko stosowany w finansach i innych dziedzinach wymagających dużej precyzji, ponieważ unika błędów zaokrągleń, które mogą wystąpić przy użyciu typów FLOAT lub REAL. Przechowywanie danych liczbowych w dokładny sposób ma kluczowe znaczenie w aplikacjach związanych z walutami i statystyką.

Pytanie 18

W programie desktopowym stworzono rozwijaną listę oraz przypisano cztery funkcje do obsługi zdarzeń tej kontrolki. Jaki komunikat pojawi się po dokonaniu wyboru w tej liście?

Ilustracja do pytania
A. Zdarzenie 3
B. Zdarzenie 2
C. Zdarzenie 1
D. Zdarzenie 4
W momencie wyboru elementu z listy rozwijanej zostanie wyświetlone 'Zdarzenie 1', co wskazuje na przypisanie odpowiedniej funkcji obsługującej interakcję użytkownika z kontrolką.

Pytanie 19

Który z wymienionych poniżej przykładów ilustruje prawidłowy szkielet zarządzania wyjątkami w języku C++?

A. try { kod } except { obsługa }
B. try { kod } finally { obsługa }
C. try { kod } catch { obsługa }
D. try { kod } handle { obsługa }
Jak to wygląda w C++? Kluczowym elementem jest szkielet z blokami 'try' i 'catch'. W bloku 'try' piszesz kod, który może spowodować błąd, a 'catch' zajmuje się sytuacjami, kiedy coś pójdzie nie tak. Dzięki temu nie musisz się martwić, że program nagle przestanie działać, bo masz kontrolę nad tym, jak reagować w trudnych momentach. Obsługa wyjątków to naprawdę ważna sprawa w programowaniu, bo pomaga wyłapać różne problemy, czy to z danymi, z pamięcią, czy z plikami. Z mojego doświadczenia, to po prostu sprawia, że aplikacje są bardziej stabilne i działa to na korzyść zarówno programisty, jak i użytkownika.

Pytanie 20

Wskaż termin, który w języku angielskim odnosi się do "testów wydajnościowych"?

A. unit testing
B. security testing
C. integration testing
D. performance testing
Testy wydajnościowe, czyli performance testing, to coś, co naprawdę warto mieć na uwadze. Dzięki nim możemy sprawdzić, jak nasza aplikacja działa pod dużym obciążeniem i jak szybko odpowiada na różne żądania. Moim zdaniem, to kluczowy aspekt, zwłaszcza jeśli planujemy, żeby nasza aplikacja miała wielu użytkowników. W końcu, nikt nie lubi czekać, aż coś się załaduje!

Pytanie 21

Które z wymienionych stwierdzeń najtrafniej charakteryzuje WPF?

A. Framework przeznaczony do budowy aplikacji stacjonarnych w systemie Windows
B. Framework przeznaczony do budowy aplikacji internetowych
C. Framework umożliwiający zarządzanie urządzeniami IoT
D. Biblioteka do obróbki danych w Pythonie
No dobra, WPF to framework, którego używamy, żeby robić aplikacje na Windowsa. Jest częścią platformy .NET i super się nadaje do tworzenia ładnych interfejsów z użyciem XAML, co jest takim językiem, który pozwala na zaprojektowanie interfejsu. Dzięki WPF możemy korzystać z fajnych animacji i ogólnie mieć niezłe wizualizacje. W dodatku, wspiera model MVVM, co ułatwia rozdzielenie logiki aplikacji od tego, co widzi użytkownik. Także w wielu firmach, gdzie potrzebna jest zaawansowana grafika, WPF jest chętnie wykorzystywane.

Pytanie 22

W programie stworzonym w języku C++ trzeba zadeklarować zmienną, która będzie przechowywać wartość rzeczywistą. Jakiego typu powinna być ta zmienna?

A. double
B. number
C. numeric
D. int
Typ zmiennej 'double' przechowuje liczby rzeczywiste (zmiennoprzecinkowe) w języku C++. Jest to najczęściej używany typ do operacji wymagających precyzji, takich jak obliczenia matematyczne czy fizyczne. Double oferuje większą dokładność niż 'float' i jest standardem w większości aplikacji.

Pytanie 23

Pętla przedstawiona w zadaniu działa na zmiennej typu string o nazwie ciąg. Jej celem jest

Ilustracja do pytania
A. zamienić w ciągu wielkie litery na małe
B. od każdego znaku w ciągu, który nie jest równy 0, odjąć kod 32
C. od każdego znaku w ciągu odjąć kod 32
D. zamienić w ciągu małe litery na wielkie
Odejmowanie 32 od wszystkich znaków w napisie to trochę kiepski pomysł, bo to nie zawsze działa. Nie wszystkie znaki, takie jak cyfry czy symbole, mają swoje wielkie odpowiedniki, więc ich kod ASCII nie powinien być zmieniany. Kabel od wielkich liter na małe to zupełnie inna bajka – tutaj dodajemy 32 do kodu. Odejmowanie kodu tylko dla znaków różniących się od 0 pomija istotę operacji na literach, co może skutkować dziwnymi rezultatami. Z mojego doświadczenia wynika, że lepiej to przemyśleć przed wprowadzeniem w życie.

Pytanie 24

Który z wymienionych algorytmów najczęściej wykorzystuje rekurencję?

A. Wyszukiwanie liniowe
B. Sortowanie bąbelkowe
C. Obliczanie liczb Fibonacciego
D. Sortowanie przez wstawianie
Algorytmy obliczania liczb Fibonacciego są jednym z najbardziej klasycznych przykładów rekurencji. Algorytm ten polega na wywoływaniu funkcji, która sama odwołuje się do siebie, aby obliczyć kolejne liczby w sekwencji. Rekurencyjna natura obliczeń Fibonacciego sprawia, że algorytm jest prosty i intuicyjny w implementacji, choć może być mniej wydajny niż wersje iteracyjne. Rekurencja jest szeroko stosowana w problemach matematycznych i algorytmicznych, gdzie rozwiązanie większego problemu można uzyskać poprzez rozwiązywanie mniejszych, podobnych podproblemów.

Pytanie 25

Jedną z dolegliwości, która pojawia się u programistów w wyniku długotrwałego korzystania z myszki komputerowej lub klawiatury, objawiającą się bólem, drętwieniem oraz zaburzeniami czucia w rejonie 1-3 palca ręki jest

A. kifoza
B. zespół cieśni kanału nadgarstka
C. zespół suchego oka
D. dyskopatia
Zespół cieśni kanału nadgarstka to schorzenie występujące często u programistów i innych osób pracujących przy komputerze. Objawia się bólem, mrowieniem i drętwieniem palców, co wynika z ucisku nerwu pośrodkowego w nadgarstku. Długotrwałe korzystanie z klawiatury i myszy bez ergonomicznych przerw może prowadzić do tego schorzenia. Profilaktyka obejmuje ćwiczenia rozciągające, stosowanie ergonomicznych urządzeń oraz regularne przerwy w pracy.

Pytanie 26

Który z poniższych kodów realizuje przedstawiony fragment algorytmu?

Ilustracja do pytania
A. Kod 3
B. Kod 1
C. Kod 2
D. Kod 4
Kod 1 – Może zawierać błędy w logice lub składni, które prowadzą do niepoprawnych wyników. Kod 2 – Implementuje inną wersję algorytmu, niezgodną z założeniami przedstawionego problemu. Kod 4 – Często reprezentuje alternatywną, ale nieprawidłową implementację, której logika nie spełnia wszystkich warunków algorytmu.

Pytanie 27

Jaki tekst zostanie wyświetlony po uruchomieniu jednego z poniższych fragmentów kodu?

Ilustracja do pytania
A. {{2+2}}
B. {4}
C. 4
D. {2+2}
Kod zwraca liczbę 4, ponieważ {2+2} jest interpretowane jako wyrażenie matematyczne, a nie ciąg znaków. W frameworkach React czy Angular operacje matematyczne wykonywane są automatycznie w miejscach, gdzie oczekiwany jest wynik obliczenia.

Pytanie 28

Jakie są kluczowe różnice pomiędzy strukturą (struct) a unią (union) w języku C?

A. Unia nie jest obsługiwana przez kompilatory współczesnych języków
B. Struktura wymaga więcej miejsca w pamięci niż unia
C. Struktura przechowuje wiele wartości równocześnie, unia tylko jedną
D. Unia umożliwia dynamiczne przypisywanie typów danych, struktura natomiast nie
Unia nie pozwala na dynamiczne typowanie danych – typ każdego pola jest zdefiniowany w czasie kompilacji, podobnie jak w strukturze. Struktura nie zajmuje więcej pamięci niż unia – zajmuje dokładnie tyle miejsca, ile potrzeba na przechowywanie wszystkich pól jednocześnie. Twierdzenie, że unia nie jest wspierana przez nowoczesne kompilatory, jest błędne – unie są integralną częścią standardu C i są szeroko wspierane we współczesnych środowiskach programistycznych.

Pytanie 29

Które z wymienionych stwierdzeń najtrafniej charakteryzuje klasę dziedziczącą?

A. Klasa, która nie może posiadać konstruktorów ani destruktorów
B. Klasa, która umożliwia wielokrotne dziedziczenie pól prywatnych
C. Klasa, która dzieli swoje pola z klasami zaprzyjaźnionymi
D. Klasa, która wykorzystuje pola i metody innej klasy bez ich ponownej definicji
Dziedziczenie w programowaniu obiektowym pozwala na tworzenie nowych klas na podstawie istniejących. Klasa dziedziczona (klasa pochodna) automatycznie uzyskuje dostęp do publicznych i chronionych pól oraz metod klasy bazowej, co eliminuje potrzebę ich ponownego definiowania. Dzięki dziedziczeniu można rozszerzać funkcjonalność istniejących klas, co prowadzi do bardziej efektywnego i modułowego kodu. Przykładem może być klasa 'Pojazd', po której dziedziczy klasa 'Samochód', zachowując wszystkie właściwości pojazdu i dodając specyficzne dla samochodu metody lub pola.

Pytanie 30

Wskaż język programowania, który pozwala na stworzenie aplikacji mobilnej w środowisku Android Studio?

A. Objective-C
B. Swift
C. C++
D. Java
Java to jeden z podstawowych języków programowania używanych do tworzenia aplikacji mobilnych na platformę Android. Jest to język, który został stworzony przez firmę Sun Microsystems, a jego pierwsza wersja została wydana w 1995 roku. Java charakteryzuje się silnym typowaniem, obiektowością oraz wsparciem dla programowania wielowątkowego, co czyni go idealnym do tworzenia wydajnych aplikacji mobilnych. Android Studio, oficjalne zintegrowane środowisko programistyczne (IDE) dla Androida, oferuje pełne wsparcie dla Javy, w tym możliwość korzystania z bibliotek Android SDK. Dzięki temu programiści mogą łatwo tworzyć interfejsy użytkownika, zarządzać zasobami oraz implementować logikę aplikacji. Przykładowo, pisząc aplikację do zarządzania zadaniami, programista może użyć Javy do stworzenia klas modelujących zadania oraz do obsługi interfejsu graficznego z wykorzystaniem XML i Java. Ponadto, Java jest zgodna z zasadami programowania obiektowego, co pozwala na łatwe zarządzanie kodem i jego ponowne wykorzystanie. Warto również zaznaczyć, że Java jest wspierana przez dużą społeczność, co zapewnia bogaty ekosystem bibliotek oraz narzędzi, ułatwiających rozwój aplikacji na Androida.

Pytanie 31

Po wykonaniu podanego kodu na konsoli wyświetli się liczba

Ilustracja do pytania
A. 73
B. 115
C. 0
D. 108
Kod generuje liczbę 115 w konsoli, co jest wynikiem przetwarzania wartości ASCII znaków lub obliczeń matematycznych na poziomie bajtów. W języku C++ konwersja i manipulowanie wartościami liczbowymi często obejmuje użycie operacji na typach całkowitych oraz zmiennych pomocniczych, co umożliwia precyzyjne zarządzanie wynikiem wyjściowym.

Pytanie 32

Jaką nazwę kontrolki powinno się umieścić w początkowej linii kodu, w miejscu <???, aby została ona wyświetlona w podany sposób?

Ilustracja do pytania
A. SeekBar
B. RatinoBar
C. Spinner
D. Switch
Switch to kontrolka używana w Androidzie do stworzenia elementu interfejsu użytkownika, który pozwala użytkownikowi przełączać się między dwoma stanami. Domyślnie stany te są identyfikowane jako włączone i wyłączone, co jest szczególnie przydatne w przypadku funkcji wymagających prostego wyboru binarnego, jak na przykład włączanie lub wyłączanie ustawień. Kod XML użyty w pytaniu zawiera atrybuty android:textOff i android:textOn, które są typowe dla klasy Switch i pozwalają zdefiniować tekst, jaki ma być wyświetlany w stanie wyłączonym i włączonym. W praktyce Switch jest często stosowany w aplikacjach mobilnych do kontroli ustawień użytkownika, co pozwala na łatwą i intuicyjną obsługę. Dobrymi praktykami jest używanie Switch w kontekście jednoznacznego wyboru, aby nie wprowadzać użytkownika w błąd. Warto również zadbać o dostępność i odpowiednie etykietowanie kontrolki, co zapewnia jej zrozumiałość dla wszystkich użytkowników.

Pytanie 33

Jakie elementy powinny być uwzględnione w dokumentacji testowej aplikacji?

A. Zalecenia dotyczące optymalizacji kodu
B. Opis procedur testowych oraz rezultaty wykonanych testów
C. Specyfikacje techniczne serwera
D. Harmonogram wdrożenia aplikacji
Opis procedur testowych i wyników przeprowadzonych testów to kluczowy element dokumentacji testów aplikacji. Tego rodzaju dokumentacja obejmuje szczegółowe instrukcje dotyczące metod testowania, użytych narzędzi oraz kroków niezbędnych do przeprowadzenia testów jednostkowych, integracyjnych i systemowych. W dokumentacji znajdują się również raporty z wynikami testów, które wskazują, czy aplikacja działa zgodnie z wymaganiami oraz jakie błędy zostały wykryte. Testy pozwalają na wczesne wychwycenie problemów i eliminację błędów przed wdrożeniem aplikacji na produkcję, co znacząco zwiększa jakość oprogramowania. Dokumentacja testowa jest także nieocenionym źródłem informacji dla zespołów QA (Quality Assurance), umożliwiając śledzenie historii testów i zapewnienie, że wszystkie elementy aplikacji zostały przetestowane zgodnie z procedurami.

Pytanie 34

Który z wymienionych elementów NIE stanowi części instrukcji dla użytkownika programu?

A. Instrukcje dotyczące obsługi poszczególnych funkcji aplikacji
B. Opis testów jednostkowych
C. Opis metody instalacji aplikacji
D. Rozwiązywanie problemów związanych z użytkowaniem aplikacji
Instrukcja użytkownika programu zawiera opisy dotyczące sposobu instalacji aplikacji, konfiguracji oraz obsługi poszczególnych funkcji. Jest to kluczowy dokument pomagający użytkownikom w szybkim wdrożeniu się w pracę z oprogramowaniem. Zawiera również sekcje dotyczące rozwiązywania typowych problemów oraz wskazówki, jak efektywnie korzystać z narzędzi i funkcji aplikacji. Instrukcja użytkownika może być dostępna w formie elektronicznej (PDF, strony WWW) lub papierowej, a jej celem jest uproszczenie procesu wdrażania oraz ograniczenie liczby zgłoszeń do działu wsparcia technicznego. Dokumentacja tego typu stanowi również ważny element budowania pozytywnego doświadczenia użytkownika (UX).

Pytanie 35

Który z wymienionych przykładów przedstawia typ rekordowy?

A. struct w języku C++
B. int w języku Python
C. float w języku C
D. bool w języku Java
Typ 'struct' w języku C++ jest przykładem typu rekordowego, który pozwala na grupowanie zmiennych różnego typu pod jedną nazwą. Struktury pozwalają na przechowywanie powiązanych danych, np. informacji o pracowniku (imię, nazwisko, wiek) w jednym obiekcie. Struktury są kluczowe w programowaniu proceduralnym i obiektowym, umożliwiając efektywne zarządzanie danymi złożonymi. Typy rekordowe pozwalają na budowanie bardziej złożonych i zorganizowanych aplikacji, co zwiększa ich czytelność i ułatwia zarządzanie kodem.

Pytanie 36

Kod funkcji "wykonaj()" przedstawiony powyżej weryfikuje, czy

Ilustracja do pytania
A. w tablicy liczb całkowitych znajdują się jedynie wartości 4, 15, -2, 9, 202
B. konkretny element (argument) jest obecny w tablicy liczb całkowitych
C. konkretny element (argument) przypada w zakresie od 0 do 4
D. wszystkie elementy w tablicy odpowiadają wartości konkretnego elementu (argument)
Funkcja 'wykonaj()' sprawdza, czy określony element (argument) znajduje się w tablicy zawierającej liczby całkowite. Algorytm przeszukuje tablicę iteracyjnie, porównując element wejściowy z każdym elementem tablicy, co pozwala na efektywne odnalezienie wartości, jeśli istnieje.

Pytanie 37

W przypadku przedstawionego fragmentu kodu Java, wyjątek zostanie zgłoszony, gdy wartość zmiennej index wyniesie:

Ilustracja do pytania
A. 0
B. 7
C. 1
D. 5
W podanym kodzie Java mamy do czynienia z tablicą o nazwie liczby zawierającą sześć elementów: {1 2 3 4 5 6}. Indeksy tablicy w Javie zaczynają się od 0 a kończą na n-1 gdzie n to długość tablicy. W tym przypadku tablica ma długość 6 a więc jej indeksy to 0 1 2 3 4 i 5. Kiedy próbujemy uzyskać dostęp do elementu tablicy za pomocą indeksu równego długości tablicy lub większego np. 6 w tym przypadku otrzymujemy wyjątek ArrayIndexOutOfBoundsException. Jest to standardowe zachowanie w języku Java mające na celu ochronę przed błędami związanymi z nieprawidłowym dostępem do pamięci. Tego rodzaju błędy mogą prowadzić do nieprzewidywalnych zachowań programów dlatego obsługa takich wyjątków jest dobrą praktyką programistyczną. Kod zawiera blok try-catch który przechwytuje wszelkie wyjątki w tym przypadku i drukuje komunikat aby poinformować użytkownika o błędzie. Takie podejście jest zgodne z zasadami bezpiecznego programowania oraz ułatwia debugging i zarządzanie błędami w aplikacjach produkcyjnych.

Pytanie 38

Jakie jest najważniejsze działanie w trakcie analizy wymagań klienta przed rozpoczęciem realizacji projektu aplikacji?

A. Stworzenie diagramu Gantta
B. Selekcja języka programowania
C. Zrozumienie potrzeb biznesowych i oczekiwań klienta
D. Rozdzielenie ról w zespole projektowym
Fajnie, że zauważyłeś, jak ważne jest zrozumienie potrzeb biznesowych i oczekiwań klienta. To kluczowa sprawa przed rozpoczęciem pracy nad projektem aplikacji. Bez tego, nawet najfajniejszy kod może nie spełniać wymagań, a to byłoby szkoda, prawda? Analiza wymagań to nie tylko rozpoznanie celów, ale też spotkania z osobami zaangażowanymi w projekt i zbadanie rynku. Dzięki temu możemy stworzyć aplikację, która naprawdę odpowiada na specyficzne potrzeby, co czyni ją bardziej użyteczną i konkurencyjną. No i oczywiście, jak dobrze określimy, czego potrzebują użytkownicy, to mniej nieporozumień po drodze, a klienci będą bardziej zadowoleni, co zawsze jest na plus.

Pytanie 39

Które urządzenie komputerowe jest najbardziej odpowiednie do graficznego projektowania w aplikacjach CAD?

A. Serwer dysponujący dużą ilością pamięci RAM
B. Komputer stacjonarny z kartą graficzną NVIDIA Quadro
C. Laptop z zintegrowanym układem graficznym
D. Laptop z interfejsem dotykowym
W kontekście projektowania graficznego w programach typu CAD, kluczowym elementem jest wybór odpowiedniego sprzętu, który zapewni nie tylko stabilność, ale także wydajność. Komputer stacjonarny wyposażony w kartę graficzną NVIDIA Quadro jest najlepszym rozwiązaniem, ponieważ te karty są specjalnie zaprojektowane do obsługi złożonych obliczeń i renderowania grafiki 3D. Dzięki zaawansowanej architekturze oraz optymalizacji pod kątem aplikacji inżynieryjnych i projektowych, karty NVIDIA Quadro oferują znacznie wyższą wydajność w porównaniu do standardowych kart graficznych. Dodatkowo, stacjonarne komputery pozwalają na łatwiejszą rozbudowę, co może być kluczowe w przypadku rosnących wymagań projektowych. W praktyce, użytkownicy CAD często muszą radzić sobie z dużymi i złożonymi modelami, które wymagają nie tylko odpowiedniej mocy obliczeniowej, ale także dużej ilości pamięci wideo, co zapewnia NVIDIA Quadro. Warto dodać, że standardy branżowe, takie jak OpenGL i DirectX, są w pełni wspierane przez te karty, co przekłada się na ich niezawodność i efektywność w profesjonalnym środowisku projektowym.

Pytanie 40

Jakie jest podstawowe założenie normalizacji krajowej?

A. Zwiększenie ilości regulacji prawnych
B. Ujednolicenie wymagań technicznych i poprawa bezpieczeństwa
C. Wzrost kosztów produkcji
D. Utrudnienie handlu międzynarodowego
Ujednolicenie wymagań technicznych i poprawa bezpieczeństwa to główne cele normalizacji krajowej. Normalizacja polega na opracowywaniu standardów, które są stosowane w różnych branżach w celu zapewnienia jakości, bezpieczeństwa i kompatybilności produktów oraz usług. Dzięki normalizacji producenci tworzą wyroby zgodne z określonymi normami, co zwiększa ich konkurencyjność na rynku krajowym i międzynarodowym. Wdrożenie jednolitych standardów wpływa także na bezpieczeństwo użytkowników, minimalizując ryzyko awarii lub niezgodności produktów.