Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.04 - Projektowanie, programowanie i testowanie aplikacji
  • Data rozpoczęcia: 8 stycznia 2025 10:38
  • Data zakończenia: 8 stycznia 2025 11:55

Egzamin niezdany

Wynik: 11/40 punktów (27,5%)

Wymagane minimum: 20 punktów (50%)

Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Jakie oznaczenie ma norma międzynarodowa?

A. CE
B. PN
C. EN
D. ISO
PN (Polska Norma) to krajowy odpowiednik norm, który dotyczy produktów i usług w Polsce – nie jest to oznaczenie międzynarodowe. EN (European Norm) to europejskie standardy, które są stosowane na poziomie Unii Europejskiej i nie mają statusu globalnego. Oznaczenie CE (Conformité Européenne) wskazuje, że produkt spełnia wymagania dyrektyw unijnych dotyczących bezpieczeństwa, zdrowia i ochrony środowiska, jednak nie jest to norma międzynarodowa, lecz certyfikat obowiązujący na terenie UE.

Pytanie 2

Który blok kodu zawiera przykład użycia rekurencji?

Ilustracja do pytania
A. Blok 2
B. Blok 3
C. Blok 4
D. Blok 1
Blok 2, 3 i 4 mogą zawierać iteracyjne pętle lub inne struktury sterujące, ale nie posiadają wywołań funkcji wewnątrz własnej definicji. Iteracja różni się od rekurencji, ponieważ nie korzysta z wywołań zwrotnych funkcji, co stanowi główną cechę rekurencji.

Pytanie 3

Co należy zrobić, aby zapobiec pogorszeniu wzroku podczas pracy przy komputerze?

A. Używać słuchawek redukujących hałas
B. Stosować filtry przeciwodblaskowe na monitorze
C. Utrzymywać stałą temperaturę w pomieszczeniu
D. Stosować ergonomiczne podkładki pod nadgarstki
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 4

Która z poniższych zasad dotyczy ochrony prywatności w internecie?

A. Udostępnianie danych osobowych na publicznych forach
B. Publikowanie wszystkich zdjęć na portalach społecznościowych
C. Zapisywanie haseł w wiadomościach e-mail
D. Używanie pseudonimów zamiast prawdziwych imion na portalach społecznościowych
Używanie pseudonimów zamiast prawdziwych imion na portalach społecznościowych jest jedną z podstawowych zasad ochrony prywatności w internecie. Dzięki temu ograniczasz możliwość identyfikacji i śledzenia Twojej aktywności przez osoby trzecie. Pseudonimy minimalizują ryzyko kradzieży tożsamości i redukują ilość danych osobowych dostępnych publicznie. To działanie jest szczególnie ważne dla dzieci i młodzieży, chroniąc ich przed cyberprzemocą i innymi zagrożeniami. W wielu serwisach można także dostosować ustawienia prywatności, ukrywając profil przed osobami spoza listy znajomych.

Pytanie 5

Które z poniższych jest przykładem typu rekordowego?

A. struct w języku C++
B. float w języku C
C. bool w języku Java
D. int w języku Python
Typ 'int' w Pythonie przechowuje liczby całkowite i nie pozwala na grupowanie wielu wartości pod jedną zmienną. 'Bool' w Javie to typ logiczny przechowujący wartości 'true' i 'false' – nie umożliwia przechowywania wielu pól. 'Float' w C to typ zmiennoprzecinkowy używany do przechowywania liczb rzeczywistych i nie jest typem rekordowym. Tylko 'struct' umożliwia tworzenie niestandardowych typów danych składających się z różnych pól, co czyni go kluczowym narzędziem w modelowaniu bardziej złożonych obiektów.

Pytanie 6

Który z poniższych jest przykładem prostej aplikacji mobilnej?

A. Aplikacja monitorująca zużycie pamięci RAM
B. Aplikacja do analizy danych finansowych
C. Aplikacja typu zegar
D. Aplikacja z zaawansowanym systemem zarządzania projektami
Aplikacja typu zegar to jeden z najprostszych przykładów aplikacji mobilnej. Jej podstawowa funkcjonalność polega na wyświetlaniu aktualnego czasu oraz alarmów, a dodatkowo może zawierać funkcje takie jak minutnik czy stoper. Tego rodzaju aplikacje charakteryzują się niewielką liczbą funkcji, przejrzystym interfejsem i minimalnym zapotrzebowaniem na zasoby sprzętowe. Dzięki swojej prostocie, aplikacje typu zegar są doskonałym przykładem na to, jak przy użyciu niewielkiej liczby komponentów można stworzyć przydatne narzędzie dla użytkownika.

Pytanie 7

Jaki kwalifikator należy nadać metodzie, aby dostęp do niej był możliwy tylko z ciała tej klasy i klas potomnych,a jednocześnie, żeby ta metoda nie była dostępna w dowolnej funkcji?

A. public
B. reinterpret_cast
C. protected
D. private
Public – Umożliwia dostęp do metody z dowolnego miejsca, co nie jest zgodne z wymaganiami pytania. Private – Ogranicza dostęp wyłącznie do klasy, nie pozwalając na dostęp z klas dziedziczących. reinterpret_cast – To operator rzutowania, nie mający związku z dostępnością metod w klasie.

Pytanie 8

Które stwierdzenie najlepiej opisuje funkcję zaprzyjaźnioną w klasie?

A. Funkcja, która jest wywoływana automatycznie po utworzeniu obiektu
B. Funkcja, która ma dostęp do prywatnych pól i metod klasy, której jest zaprzyjaźniona
C. Funkcja, która umożliwia dziedziczenie wielokrotne
D. Funkcja, która jest statyczna i nie może modyfikować pól klasy
Funkcja wywoływana automatycznie po utworzeniu obiektu to konstruktor, który służy do inicjalizacji pól klasy, ale nie umożliwia dostępu do prywatnych elementów klasy. Dziedziczenie wielokrotne to mechanizm umożliwiający dziedziczenie po więcej niż jednej klasie bazowej, co różni się od koncepcji funkcji zaprzyjaźnionej. Funkcje statyczne należą do klasy, ale nie mogą modyfikować pól instancji obiektu, ponieważ operują na poziomie klasy, a nie obiektu. Tylko funkcja oznaczona jako `friend` ma specjalne uprawnienia dostępu do prywatnych pól i metod klasy.

Pytanie 9

Który z poniższych elementów najlepiej opisuje funkcjonalność e-sklepu?

A. Obsługa serwera e-mail
B. System zarządzania koszykiem i realizacją zamówień
C. Mechanizm renderowania grafiki 3D
D. Dostęp do bazy danych użytkownika
System zarządzania koszykiem i realizacją zamówień to kluczowy element każdej aplikacji e-commerce (sklepu internetowego). Umożliwia użytkownikom dodawanie produktów do koszyka, zarządzanie ich ilością, a następnie finalizację transakcji poprzez proces realizacji zamówienia i płatności. Tego typu funkcjonalność wymaga integracji z bazą danych oraz systemami płatności online, co zapewnia bezpieczeństwo i wygodę użytkownika. Systemy koszyków zakupowych często oferują zaawansowane funkcje, takie jak kupony rabatowe, kody promocyjne czy integracje z magazynami i systemami logistycznymi. Realizacja zamówienia obejmuje procesy takie jak autoryzacja płatności, generowanie faktur oraz śledzenie zamówień, co jest podstawą funkcjonowania nowoczesnych platform e-commerce.

Pytanie 10

W przedstawionym fragmencie kodu znajduje się błąd logiczny. Polega on na

Ilustracja do pytania
A. błędnym zastosowaniu funkcji cout, który sprawia, że zmienna jest wczytywana w pętli
B. braku inicjalizacji zmiennej x, który sprawia, że zmienna nie ma wartości początkowej.
C. nieprawidłowym warunku pętli, który sprawia, że pętla nigdy się nie wykona
D. nieprawidłowym warunku pętli, który sprawia, że pętla jest nieskończona
W programowaniu istotne jest zrozumienie inicjalizacji zmiennych, poprawnego użycia funkcji oraz logicznych warunków sterujących. Brak inicjalizacji zmiennej może prowadzić do nieprzewidywalnego zachowania programu, jednak w tym przypadku zmienna x jest prawidłowo zainicjalizowana wartością 0, co eliminuje ten problem. Błędne zastosowanie funkcji cout mogłoby wskazywać na niepoprawne wywołanie tej funkcji, ale w przedstawionym kodzie funkcja cout jest użyta w sposób poprawny, służąc do wyświetlania wartości zmiennej x w pętli. Ważne jest, aby zrozumieć, że cout jest funkcją wyjściową, a nie wejściową, więc nie ma wpływu na logikę pętli w kontekście wczytywania danych. Co więcej, jednym z częstych błędów jest nieprawidłowy warunek pętli, który może prowadzić do jej nieoczekiwanego zakończenia lub nieskończoności. Warunki pętli powinny być precyzyjnie określone, aby mogły ulec zmianie do wartości fałszywej w pewnym momencie, co pozwala na zakończenie iteracji. Warto również zwrócić uwagę na typowe błędy myślowe, takie jak niewłaściwe operatory logiczne, które mogą prowadzić do błędnych założeń co do działania kodu. Dbałość o te aspekty jest kluczowa w praktyce programistycznej, a znajomość typowych problemów i ich rozwiązań zwiększa jakość i niezawodność oprogramowania.

Pytanie 11

Która metodologia zarządzania projektami pozwala elastycznie reagować na zmieniające się wymagania klienta?

A. Waterfall
B. Model spiralny
C. Scrum
D. Kanban
Waterfall to model sekwencyjny, który nie zakłada elastyczności – raz określone wymagania muszą być zrealizowane zgodnie z pierwotnym planem, co utrudnia adaptację do zmian. Kanban umożliwia optymalizację przepływu pracy, ale nie kładzie tak dużego nacisku na iteracyjne dostarczanie funkcjonalności jak Scrum. Model spiralny łączy prototypowanie i iteracje, ale jego struktura nie jest tak elastyczna jak w przypadku Scruma, gdzie zmiany mogą być wprowadzane niemal na każdym etapie sprintu.

Pytanie 12

Błąd kompilacji "incompatible types" może zostać wygenerowany, gdy

A. funkcja przyjmuje jako argument całkowitą, a wywołana została z napisem jako parametr
B. popełniono błąd podczas deklaracji zmiennej, zastosowano typ, który nie istnieje
C. zmiennej typu int została przypisana wartość 243
D. funkcja zwraca typ void, a podczas wywołania nie jest przypisana do żadnej zmiennej
Zła deklaracja zmiennej raczej spowoduje inne komunikaty o błędach, jak 'cannot find symbol', a nie 'incompatible types'. Jak przypisujesz liczbę do zmiennej typu int, to jest wszystko w porządku, więc błędu nie będzie. Pamiętaj, że funkcje typu void nie zwracają wartości, ale jeśli próbujesz coś przypisać, to dostaniesz raczej komunikat 'void type not allowed here'. To różne sprawy.

Pytanie 13

Która cecha wyróżnia framework od biblioteki?

A. Framework determinuje architekturę aplikacji i dostarcza jej szkielet
B. Framework dostarcza funkcje użytkowe w danej dziedzinie problemu
C. Framework dostarcza API do większego zestawu funkcji
D. Framework jest zbiorem funkcjonalności, które programista może wykorzystać
Framework dostarcza gotowy szkielet aplikacji i narzuca architekturę, zgodnie z którą programista musi budować swoją aplikację. Oferuje zestaw narzędzi i komponentów, które upraszczają rozwój oprogramowania, przy jednoczesnym ograniczeniu swobody działania. Dzięki frameworkowi, programista nie musi tworzyć aplikacji od podstaw – dostaje narzędzia, które integrują się ze sobą, co przyspiesza proces developmentu i zapewnia spójność aplikacji.

Pytanie 14

Wywołanie funkcji zamien napisanej w języku C++ może wyglądać następująco

Ilustracja do pytania
A. zamien(m,n); //m,n - zmienne typu całkowitego
B. zamien(&a, &b); //x,y - zmienne typu całkowitego
C. zamien(*a, *b); //a,b - zmienne typu całkowitego
D. zamien(12, 34);
Wywołanie zamien(12, 34) przekazuje wartości, ale nie umożliwia modyfikacji zmiennych poza funkcją. Użycie zamien(*a, *b) oznacza dereferencję, co prowadzi do błędu, jeśli wskaźniki nie są poprawnie zainicjalizowane. Zamien(m,n) nie używa wskaźników ani referencji, co powoduje brak zmiany oryginalnych wartości zmiennych.

Pytanie 15

Który z poniższych rodzajów testów najlepiej sprawdza odporność aplikacji na duże obciążenie?

A. Testy funkcjonalne
B. Testy bezpieczeństwa
C. Testy obciążeniowe
D. Testy zgodności
Testy obciążeniowe to rodzaj testów, które sprawdzają, jak aplikacja radzi sobie z dużym ruchem użytkowników lub przetwarzaniem dużych ilości danych. Celem testów obciążeniowych jest wykrycie potencjalnych wąskich gardeł, identyfikacja problemów z wydajnością oraz określenie maksymalnej przepustowości aplikacji. Testy te są kluczowe dla aplikacji o wysokim natężeniu ruchu, takich jak sklepy internetowe czy systemy bankowe, gdzie stabilność pod obciążeniem jest krytyczna dla sukcesu.

Pytanie 16

Do czego służy język XAML w programowaniu aplikacji desktopowych?

A. Do optymalizacji działania aplikacji
B. Do obsługi zdarzeń klawiatury
C. Do zarządzania bazami danych
D. Do projektowania graficznego interfejsu użytkownika
Obsługa zdarzeń klawiatury jest realizowana za pomocą języków programowania, takich jak C# lub Java, a nie XAML, który służy głównie do definiowania struktury wizualnej interfejsu. Optymalizacja działania aplikacji to proces realizowany na poziomie kodu źródłowego i algorytmów, a nie w warstwie interfejsu użytkownika definiowanego przez XAML. Zarządzanie bazami danych jest domeną SQL lub innych języków zapytań, a nie XAML, który nie ma funkcji przechowywania ani manipulacji danymi bazodanowymi.

Pytanie 17

Przedstawiony opis licencji w ramce wskazuje, że jest to licencja

Ilustracja do pytania
A. OEM
B. Open Source
C. Freeware
D. Shareware
Opis licencji wskazuje na licencję Open Source, która umożliwia użytkownikom przeglądanie, modyfikowanie i dystrybucję kodu źródłowego. Oprogramowanie open source sprzyja innowacji, współpracy i elastyczności, pozwalając na dostosowanie aplikacji do własnych potrzeb. Licencje takie jak GPL, MIT czy Apache są popularnymi przykładami licencji open source.

Pytanie 18

Wskaż język programowania, w którym można utworzyć aplikację mobilną dla systemu Android

A. Java
B. Swift
C. Obiective-C
D. C++
Java jest jednym z najważniejszych języków programowania wykorzystywanych do tworzenia aplikacji mobilnych na platformę Android. Został stworzony przez firmę Sun Microsystems i obecnie jest rozwijany przez Oracle. Java jest językiem obiektowym, co oznacza, że umożliwia programistom tworzenie aplikacji w sposób modularny i zorganizowany. W kontekście Androida, Java jest podstawowym językiem, w którym bazowe API (Application Programming Interface) zostało opracowane. Wysoka wydajność, bogata biblioteka klas oraz wsparcie dla programowania wielowątkowego sprawiają, że Java jest idealnym wyborem dla deweloperów aplikacji mobilnych. Przykładowo, do stworzenia prostego interfejsu użytkownika w aplikacji Android, programista może wykorzystać takie elementy jak TextView czy Button, które są częścią frameworka Android SDK. Współczesne praktyki wskazują również na wykorzystanie Java w połączeniu z Kotlinem, co pozwala na osiągnięcie lepszych rezultatów i zwiększa efektywność w pracy nad projektami mobilnymi.

Pytanie 19

Na równoważnych funkcjonalnie fragmentach kodu aplikacji Angular i React.js przedstawiono.

Ilustracja do pytania
A. funkcję wypełniającą dane w formularzu podczas jego inicjacji.
B. funkcję, która przepisuje do zmiennych f lub e dane z pola <input> formularza.
C. wypisanie w konsoli przeglądarki danych pobranych z pól formularza w czasie rzeczywistym, gdy użytkownik je wypełnia.
D. obsługę zdarzenia zatwierdzenia formularza
Błędne odpowiedzi wynikają z niepoprawnego zrozumienia, jak działa obsługa zdarzeń w obu frameworkach. W przypadku Angulara i React.js, kluczową rolą przedstawionego kodu jest obsługa zdarzenia zatwierdzenia formularza, a nie wypisywanie danych w czasie rzeczywistym. Odpowiedzi sugerujące wypisywanie danych w konsoli w czasie rzeczywistym mylnie interpretują mechanizm działania komponentów. Takie działanie wymagałoby implementacji dodatkowych funkcji, które nasłuchiwałyby na zmiany wprowadzane do pól formularza, np. za pomocą zdarzenia onChange w React.js. Kolejna błędna idea to przypisanie danych do zmiennych f lub e. W przedstawionych fragmentach kodu zmienne te służą do przechwytywania zdarzenia submit lub referencji formularza, a nie do przypisywania danych. Zrozumienie, że zmienne te są istotne dla obsługi zdarzeń, jest kluczowe. Ponadto zakładanie, że funkcje wypełniają dane podczas inicjacji formularza, jest niepoprawne. Takie działanie wiązałoby się z inicjalizacją wartości formularza, co w ukazanych przykładach nie ma miejsca, ponieważ celem jest przetwarzanie danych w momencie zatwierdzenia formularza. To typowy błąd wynikający z niepełnego zrozumienia przepływu danych i cyklu życia komponentów w nowoczesnych frameworkach JavaScriptowych.

Pytanie 20

Co jest główną funkcją portali społecznościowych?

A. Analiza wyników biznesowych
B. Zarządzanie sprzedażą produktów i usług
C. Tworzenie kopii zapasowych danych
D. Udostępnianie treści i komunikacja między użytkownikami
Główna funkcja portali społecznościowych polega na umożliwieniu użytkownikom tworzenia, udostępniania oraz wymiany treści, a także komunikacji w czasie rzeczywistym. Portale takie jak Facebook, Twitter czy Instagram pozwalają na interakcję poprzez posty, komentarze, polubienia oraz wiadomości prywatne. Użytkownicy mogą dzielić się zdjęciami, filmami, artykułami lub osobistymi przemyśleniami, co sprzyja budowaniu społeczności i nawiązywaniu relacji. Funkcjonalności te są zgodne z najlepszymi praktykami UX/UI, które kładą nacisk na intuicyjność i łatwość obsługi. W kontekście SEO, portale społecznościowe są także ważne ze względu na możliwość generowania ruchu na zewnętrzne strony internetowe poprzez linki i udostępnienia. Przykładem może być wykorzystanie platformy Instagram do promocji produktów, gdzie użytkownicy mogą kliknąć w linki do sklepu. Takie działania zwiększają widoczność marki w Internecie oraz angażują odbiorców, co jest kluczowe dla efektywnej strategii marketingowej.

Pytanie 21

Jak nazywa się proces przesyłania danych z komputera lokalnego na serwer?

A. Wysyłanie danych
B. Przesyłanie danych
C. Pobieranie danych
D. Streaming
Pojęcia takie jak pobieranie danych, przesyłanie danych oraz streaming są często mylone z wysyłaniem danych, jednak każde z nich ma swoją unikalną definicję i zastosowanie. Pobieranie danych odnosi się do procesu ściągania informacji z serwera na komputer lokalny. Jest to operacja odwrotna do wysyłania danych i jest kluczowa dla użytkowników, którzy chcą uzyskać dostęp do plików lub zasobów umieszczonych na serwerze. Przykładowo, podczas przeglądania internetu, przeglądarka pobiera dane z serwerów, aby wyświetlić stronę użytkownikowi. Przesyłanie danych, z kolei, to termin ogólny, który można wykorzystać do opisania dowolnej wymiany informacji między lokalnym a zdalnym systemem. Obejmuje zarówno wysyłanie, jak i pobieranie danych, co sprawia, że użycie go w kontekście konkretnej operacji może być mylące. Wreszcie, streaming odnosi się do strumieniowego przesyłania danych, które umożliwia użytkownikom nieprzerwaną transmisję multimediów, takich jak filmy czy muzyka, w czasie rzeczywistym. W tym przypadku, dane są przesyłane w małych partiach, co pozwala na ich natychmiastowe odtwarzanie, a nie przechowywanie lokalnie. W związku z tym, choć wszystkie te procesy dotyczą transferu danych, to tylko wysyłanie danych odnosi się do przesyłania informacji z komputera lokalnego na serwer.

Pytanie 22

W standardzie dokumentacji testów oprogramowania IEEE 829-1998 jest opisany dokument, który zawiera informacje o tym, które przypadki testowania zostały użyte, kto je użył i czy powiodły się. Jest to

A. Test Procedure Specification
B. Test Plan
C. Test Summary Report
D. Test Log
Test Log to dokument, który rejestruje wszystkie przeprowadzone przypadki testowe, informacje o ich wykonaniu oraz wyniki. Umożliwia śledzenie przebiegu testów i analizę ich efektywności. Jest to kluczowy element dokumentacji testowej, który pozwala zidentyfikować powtarzające się błędy oraz ocenę jakości kodu na podstawie przeszłych wyników.

Pytanie 23

Który środek ochrony najlepiej zabezpiecza przed hałasem w pracy biurowej?

A. Zamknięte okna
B. Wygłuszające panele akustyczne
C. Lampy biurowe o niskim natężeniu światła
D. Maty antypoślizgowe
Wygłuszające panele akustyczne to jedno z najlepszych rozwiązań w celu ograniczenia hałasu w biurach i innych miejscach pracy. Panele te redukują odbicia dźwięku i zmniejszają natężenie hałasu, co przekłada się na poprawę koncentracji oraz zmniejszenie zmęczenia i stresu. W biurach typu open space panele akustyczne znacząco poprawiają komfort pracy, umożliwiając prowadzenie rozmów bez nadmiernego zakłócania pracy innych osób. Dodatkowo, wygłuszenie pomaga w ochronie zdrowia pracowników, redukując ryzyko utraty słuchu w miejscach, gdzie występuje wysoki poziom hałasu. Odpowiednie rozmieszczenie paneli pozwala także na lepsze zarządzanie akustyką całego pomieszczenia.

Pytanie 24

Który z poniższych elementów należy uwzględnić w dokumentacji kodu programu?

A. Lista błędów wykrytych podczas testów
B. Opis funkcji, klas i zmiennych w kodzie
C. Plan marketingowy aplikacji
D. Szczegóły konfiguracji serwera

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Opis funkcji, klas i zmiennych w kodzie to kluczowy element dokumentacji programu. Tego rodzaju dokumentacja pozwala na lepsze zrozumienie struktury aplikacji, jej logiki biznesowej oraz wzajemnych zależności pomiędzy poszczególnymi komponentami. Dokumentacja techniczna obejmuje szczegółowe informacje na temat implementacji, interfejsów API, schematów baz danych oraz sposobów integracji z innymi systemami. Dzięki niej programiści mogą szybciej wdrażać się w projekt, a błędy i niejasności są minimalizowane. Kompleksowa dokumentacja zawiera także przykłady użycia poszczególnych funkcji, co dodatkowo ułatwia rozwój i rozbudowę aplikacji. W dobrze prowadzonym projekcie dokumentacja kodu jest na bieżąco aktualizowana, co zwiększa jego przejrzystość i wspiera proces refaktoryzacji.

Pytanie 25

Ile warstw ma model TCP/IP?

A. 5
B. 2
C. 4
D. 7

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Model TCP/IP, znany również jako Internet Protocol Suite, składa się z czterech warstw: warstwy aplikacji, warstwy transportowej, warstwy internetowej oraz warstwy dostępu do sieci. Warstwa aplikacji zajmuje się interakcjami z użytkownikami oraz aplikacjami, implementując protokoły takie jak HTTP, FTP, SMTP. Warstwa transportowa zapewnia komunikację między aplikacjami, w tym protokoły TCP i UDP, które różnią się pod względem niezawodności i kontroli przepływu. Warstwa internetowa, reprezentowana głównie przez protokół IP, odpowiada za adresowanie i trasowanie pakietów danych w sieci. Ostatnia warstwa, warstwa dostępu do sieci, obejmuje protokoły odpowiedzialne za fizyczne przesyłanie danych przez różne media, jak Ethernet czy Wi-Fi. Zrozumienie tych warstw jest kluczowe dla projektowania i implementacji rozwiązań sieciowych, a także dla analizy standardów, takich jak RFC 791 dla IPv4 oraz RFC 2460 dla IPv6, które definiują zasady działania protokołów w warstwie internetowej.

Pytanie 26

Jakie podejście najlepiej zastosować podczas projektowania aplikacji, która ma działać na różnych platformach?

A. Tworzenie dedykowanego kodu dla każdej platformy
B. Zastosowanie technik responsywnego projektowania interfejsu
C. Skupienie się wyłącznie na wyglądzie aplikacji
D. Wyłączne dostosowanie aplikacji do systemu Windows

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zastosowanie technik responsywnego projektowania interfejsu to najlepsze podejście do tworzenia aplikacji działających na różnych platformach. Responsywne projektowanie umożliwia dostosowanie interfejsu do różnych rozdzielczości ekranów i urządzeń, co zapewnia jednolite doświadczenia użytkownika. Użycie elastycznych siatek (grid), media queries oraz skalowalnych elementów pozwala na automatyczne dostosowanie wyglądu aplikacji, eliminując konieczność tworzenia oddzielnych wersji dla każdej platformy.

Pytanie 27

Na funkcjonalnie równoważnych sobie listingach fragmentów aplikacji Angular i React.js jest utworzona lista punktowana, która zawiera

Ilustracja do pytania
A. tyle elementów, ile jest elementów w tablicy books, w każdym punkcie listy jest jeden element tablicy
B. tylko jeden element o treści Harry Potter, Hobbit, Władca pierścieni
C. tyle elementów, ile jest elementów w tablicy books, w każdym punkcie listy jest element o treści {book}
D. tylko jeden element o treści Harry Potter

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Lista punktowana w Angular i React.js generuje tyle elementów, ile jest w tablicy books. Każdy element listy odpowiada jednemu elementowi tablicy, co pozwala na dynamiczne renderowanie listy w oparciu o dane wejściowe.

Pytanie 28

Która cecha wyróżnia sieć synchroniczną?

A. Przesyłanie danych odbywa się w sposób nieciągły
B. Zapewnia większą elastyczność w przesyłaniu danych
C. Nie wymaga synchronizacji zegarów
D. Transmisja danych odbywa się w ustalonych odstępach czasu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Sieć synchroniczna charakteryzuje się tym, że transmisja danych odbywa się w ustalonych odstępach czasu, co oznacza, że wszystkie urządzenia w sieci są zsynchronizowane do jednego zegara. Taki sposób przesyłania danych pozwala na precyzyjne określenie momentu, w którym dane są wysyłane i odbierane, co redukuje opóźnienia i błędy w komunikacji. Przykładem sieci synchronicznej jest system TDM (Time Division Multiplexing), który dzieli czas na różne sloty, przydzielając każdy slot konkretnemu użytkownikowi lub urządzeniu. Dzięki temu każdy uczestnik sieci ma gwarancję, że w swoim czasie dostanie dostęp do medium transmisyjnego. Standardy takie jak SONET (Synchronous Optical Network) i SDH (Synchronous Digital Hierarchy) są przykładami technologii, które wykorzystują synchronizację do efektywnego przesyłania danych na dużych odległościach. Takie podejście jest powszechnie stosowane w telekomunikacji, gdzie wysoka wydajność i niezawodność transmisji są kluczowe dla jakości usług.

Pytanie 29

Czym różni się konstruktor od zwykłej metody klasy?

A. Konstruktor może być wywoływany bez tworzenia obiektu
B. Konstruktor musi zwracać wartość
C. Konstruktor jest wywoływany tylko przez destruktor
D. Konstruktor ma zawsze tę samą nazwę co klasa i nie zwraca wartości

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Konstruktor różni się od zwykłych metod klasy tym, że nosi taką samą nazwę jak klasa i nie zwraca żadnej wartości, nawet `void`. Konstruktor jest wywoływany automatycznie podczas tworzenia obiektu i nie można go wywołać ręcznie jak zwykłą metodę. Jego zadaniem jest inicjalizacja pól obiektu i przygotowanie go do działania. Przykład w C++: `class Samochod { public: Samochod() { marka = "Ford"; } }`. W przeciwieństwie do innych metod konstruktor nie wymaga deklaracji typu zwracanego, co jest jedną z jego najbardziej charakterystycznych cech.

Pytanie 30

Środowiskiem natywnym do programowania aplikacji desktopowych za pomocą języka C# jest:

A. Eclipse
B. NetBeans
C. MS Visual Studio
D. PyCharm

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
MS Visual Studio to środowisko natywne do programowania aplikacji desktopowych w języku C#. To jedno z najczęściej używanych IDE do programowania w ekosystemie Microsoftu, oferujące wsparcie dla debugowania, projektowania interfejsu użytkownika i integracji z .NET. Visual Studio posiada również zaawansowane narzędzia do refaktoryzacji kodu, analizy oraz tworzenia aplikacji webowych i mobilnych.

Pytanie 31

Które z poniższych narzędzi jest wykorzystywane do emulacji urządzeń mobilnych podczas tworzenia aplikacji?

A. Postman
B. Genymotion
C. TensorFlow
D. Numpy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Genymotion to jedno z najbardziej zaawansowanych narzędzi do emulacji urządzeń mobilnych podczas tworzenia aplikacji na system Android. Umożliwia symulowanie działania aplikacji na różnych urządzeniach i wersjach systemu Android, co pozwala programistom na testowanie kompatybilności i wydajności aplikacji w różnych warunkach. Genymotion oferuje szybkie emulowanie, obsługę GPS, kamery oraz czujników, co czyni go niezwykle przydatnym narzędziem w procesie rozwoju aplikacji mobilnych. Dzięki wsparciu dla integracji z Android Studio, Genymotion jest popularnym wyborem wśród deweloperów tworzących aplikacje na platformę Android.

Pytanie 32

Gdzie są przechowywane dane w przypadku korzystania z chmury obliczeniowej?

A. Na serwerze lokalnym użytkownika
B. Na zdalnych serwerach dostawcy usług
C. Na dysku twardym użytkownika
D. Na dyskach optycznych użytkownika

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dane w chmurze obliczeniowej są przechowywane przede wszystkim na zdalnych serwerach dostawcy usług chmurowych. Tego rodzaju przechowywanie danych ma na celu zapewnienie wysokiej dostępności, skalowalności oraz bezpieczeństwa. Dostawcy usług chmurowych, tacy jak Amazon Web Services, Microsoft Azure czy Google Cloud Platform, inwestują w infrastrukturę, która obejmuje centra danych rozmieszczone na całym świecie. Te centra danych są wyposażone w zaawansowane systemy zabezpieczeń, takie jak firewall'e, szyfrowanie danych i systemy detekcji intruzów. Dzięki temu użytkownicy mogą mieć pewność, że ich dane są bezpieczne. Dodatkowo, zdalne serwery oferują elastyczność w zakresie przydzielania zasobów obliczeniowych, co pozwala na dynamiczne reagowanie na zmieniające się potrzeby biznesowe. Warto również wspomnieć o standardach bezpieczeństwa, takich jak ISO 27001 czy SOC 2, które regulują sposób przechowywania i zarządzania danymi w chmurze, zapewniając zgodność z najlepszymi praktykami branżowymi.

Pytanie 33

Przedstawiony wykres obrazuje wyniki testów:

Ilustracja do pytania
A. użyteczności
B. wydajnościowych
C. bezpieczeństwa
D. funkcjonalności

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wykres obrazuje wyniki testów wydajnościowych, które pokazują, jak system lub aplikacja radzi sobie pod dużym obciążeniem. Testy te pomagają zidentyfikować wąskie gardła i umożliwiają optymalizację wydajności.

Pytanie 34

Systemem kontroli wersji jest

A. Jira
B. Bugzilla
C. Git
D. Trello

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Git to system kontroli wersji, który pozwala na śledzenie zmian w kodzie źródłowym. Jest to narzędzie szeroko stosowane w zespołach programistycznych, umożliwiające współpracę i zarządzanie historią projektu.

Pytanie 35

Który typ licencji pozwala na swobodne modyfikowanie i rozpowszechnianie kodu źródłowego?

A. Licencja GNU GPL
B. Licencja shareware
C. Licencja komercyjna
D. Licencja OEM

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Licencja GNU GPL (General Public License) pozwala na swobodne modyfikowanie i rozpowszechnianie kodu źródłowego, pod warunkiem, że wszelkie zmiany i modyfikacje są również udostępniane na tych samych zasadach. Jest to jedna z najbardziej znanych licencji open-source, która gwarantuje wolność użytkownikom oprogramowania w zakresie jego analizy, modyfikacji oraz redystrybucji. Licencja ta promuje współpracę i transparentność w świecie oprogramowania, umożliwiając społeczności wspólny rozwój projektów i eliminując ograniczenia wynikające z licencji zamkniętych.

Pytanie 36

Które zdarzenie jest wygenerowane, gdy nieaktywne okno lub kontrolka zostaje kliknięta myszą?

A. validating.
B. keyup.
C. blur.
D. focus.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zdarzenie 'focus' jest generowane, gdy nieaktywne okno lub kontrolka zostanie kliknięta i przejdzie do stanu aktywnego. Oznacza to, że element uzyskuje fokus, co pozwala na interakcję z użytkownikiem, np. wpisywanie danych do pola tekstowego. Jest to powszechne w formularzach i aplikacjach, gdzie ważne jest śledzenie aktywnego komponentu.

Pytanie 37

Stosowanie wzorca Obserwator w programowaniu aplikacji WEB ma na celu:

A. obsługę funkcji synchronicznych w kodzie aplikacji
B. dopasowanie interfejsu użytkownika do różnych typów użytkowników
C. powiadamianie obiektów o zmianie stanu innych obiektów
D. obserwowanie interakcji użytkownika i wysyłanie wyjątków

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wzorzec projektowy 'Obserwator' (Observer) umożliwia powiadamianie obiektów o zmianie stanu innego obiektu, co pozwala na luźne powiązanie między komponentami aplikacji. Jest szeroko stosowany w programowaniu aplikacji webowych i desktopowych, gdzie zmiany w jednym elemencie interfejsu użytkownika mogą automatycznie aktualizować inne części systemu. Dzięki temu wzorzec ten wspiera reużywalność kodu i ułatwia zarządzanie złożonymi systemami.

Pytanie 38

Co określa zestaw instrukcji (ISA) procesora?

A. Rodzaje danych przechowywanych w pamięci
B. Instrukcje, które procesor jest w stanie wykonać
C. Schemat połączeń między procesorem a innymi komponentami
D. Sposób zarządzania pamięcią podręczną

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zestaw instrukcji, znany jako ISA, to taki jakby słownik poleceń, które procesor potrafi zrozumieć i wykonać. To mega ważny element w projektowaniu komputerów, bo to właśnie od niego zależy, jak dobrze i szybko działa system. Mamy różne rodzaje instrukcji, na przykład te do wykonywania działań matematycznych, logicznych, czy do przenoszenia danych. Popularne zestawy jak x86 albo ARM pokazują, jak programy rozmawiają z procesorem. Jak zrozumiesz ISA, to będzie łatwiej pisać lepszy kod i dostosowywać aplikacje do różnych architektur. No i co ważne, ISA też mówi, jak procesor interpretuje te instrukcje i zarządza danymi, co ma ogromny wpływ na to, jak wydajnie wszystko działa.

Pytanie 39

Które narzędzie służy do raportowania błędów w projektach informatycznych?

A. Photoshop
B. Git
C. JIRA
D. Blender

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
JIRA to jedno z najczęściej wykorzystywanych narzędzi do zarządzania projektami i raportowania błędów w projektach informatycznych. JIRA umożliwia śledzenie błędów, zarządzanie zadaniami oraz efektywne monitorowanie postępów prac nad projektem. Dzięki integracji z innymi narzędziami, takimi jak Confluence czy Bitbucket, JIRA stanowi kompleksowe rozwiązanie wspierające zespoły deweloperskie. Raportowanie błędów w JIRA pozwala na łatwe przypisywanie ich do odpowiednich członków zespołu, dodawanie załączników i komentarzy oraz monitorowanie statusu danego problemu, co usprawnia proces zarządzania jakością oprogramowania.

Pytanie 40

Jak zaimportować tylko komponent z biblioteki React?

A. import [ Component ] from 'react'
B. import Component from 'react'
C. import React.Component from 'react'
D. import { Component } from 'react'

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby zaimportować komponent z biblioteki React, należy użyć składni import { Component } from 'react'. Pozwala to na importowanie konkretnego komponentu, co jest bardziej optymalne i zapewnia czytelność kodu.