Wyniki egzaminu

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

Egzamin zdany!

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

Wymagane minimum: 20 punktów (50%)

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

Co należy do zadań interpretera?

A. przekładanie kodu na kod maszynowy
B. sprawdzanie składni całego programu przed jego uruchomieniem
C. wykonanie skryptu instrukcja po instrukcji
D. ulepszanie większej części kodu, aby przyspieszyć jego wykonanie
Interpreter wykonuje kod instrukcja po instrukcji, co oznacza, że analizuje i natychmiast uruchamia każdą linię programu. Takie podejście jest charakterystyczne dla języków takich jak Python, JavaScript czy PHP. Interpreter nie kompiluje całego programu na raz, co pozwala na szybkie testowanie i prototypowanie, ale może skutkować wolniejszym działaniem programu w porównaniu do skompilowanego kodu.

Pytanie 2

Który z wymienionych poniżej wzorców projektowych można zakwalifikować jako wzorzec strukturalny?

A. Fabryka abstrakcyjna (Abstract Factory)
B. Obserwator (Observer)
C. Metoda szablonowa (Template method)
D. Fasada (Facade)
Metoda Szablonowa (Template Method) to wzorzec behawioralny, który definiuje sposób realizacji algorytmu. Fabryka Abstrakcyjna (Abstract Factory) to wzorzec kreacyjny, który koncentruje się na tworzeniu obiektów bez określania ich konkretnych klas. Wzorzec Obserwator (Observer) to wzorzec behawioralny, który umożliwia powiadamianie obiektów o zmianach stanu innego obiektu, co jest kluczowe w implementacji reaktywnych systemów, ale nie jest przykładem wzorca strukturalnego.

Pytanie 3

W dwóch przypadkach opisano mechanizm znany jako Binding. Jego celem jest

Ilustracja do pytania
A. przetwarzanie zdarzeń kontrolek interfejsu użytkownika przez wywoływanie odpowiednich funkcji
B. wiązać właściwości (property) elementu interfejsu użytkownika z danymi lub właściwością innego obiektu
C. wiązanie oraz eksportowanie plików z różnych modułów aplikacji
D. zarządzanie mechanizmem obietnic (promises) lub obserwatora (observable) w programowaniu asynchronicznym
Binding (wiązanie danych) to mechanizm wiązania właściwości elementu interfejsu użytkownika z danymi lub właściwościami innego obiektu. Umożliwia to automatyczne aktualizowanie UI po zmianie danych. Jest to kluczowa funkcjonalność w nowoczesnych frameworkach front-end, takich jak Angular czy Vue, która pozwala na dynamiczne aktualizowanie widoków bez konieczności ręcznego manipulowania DOM.

Pytanie 4

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

A. int w języku Python
B. float w języku C
C. bool w języku Java
D. struct w języku C++
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 5

Podczas programowania kontrolki stepper przedstawionej na ilustracji w aplikacji mobilnej, należy zarządzać zmienną, która zawsze przechowuje jej bieżącą wartość. Jakie zdarzenie można wykorzystać do osiągnięcia tej funkcjonalności?

Ilustracja do pytania
A. DescendantAdded
B. Unfocused
C. ValueChanged
D. SizeChanged
Zdarzenie ValueChanged jest kluczowe w kontekście programowania kontrolek takich jak stepper w aplikacjach mobilnych. To zdarzenie jest wywoływane zawsze, gdy wartość kontrolki zostaje zmieniona przez użytkownika, co umożliwia natychmiastowe przetwarzanie tej zmiany i aktualizację interfejsu użytkownika lub innych powiązanych komponentów. W praktyce, użycie zdarzenia ValueChanged to dobry przykład reaktywnego programowania, gdzie aplikacja reaguje na akcje użytkownika w czasie rzeczywistym. Przy implementacji takiego zdarzenia należy zadbać o poprawne sprawdzanie zakresu wartości, aby uniknąć błędów logicznych. Warto również pamiętać o optymalizacji wydajności takiej obsługi, zwłaszcza w aplikacjach złożonych z wielu komponentów zależnych od wartości steppera. Praktyczne zastosowanie tego zdarzenia można znaleźć w aplikacjach e-commerce, gdzie steppery mogą być używane do wyboru ilości produktów w koszyku, a zmiana wartości natychmiast wpływa na obliczenie ceny całkowitej. Używanie zdarzeń takich jak ValueChanged jest zgodne z dobrymi praktykami projektowania interfejsów użytkownika, poprawiając ich responsywność i interaktywność.

Pytanie 6

Jakie funkcje realizuje polecenie "git clone"?

A. Rejestruje zmiany w historii repozytorium
B. Łączy dwa branche w repozytorium
C. Usuwa zdalne repozytorium
D. Tworzy lokalną kopię już istniejącego repozytorium
Polecenie 'git clone' tworzy kopię lokalną istniejącego repozytorium, co pozwala programistom na szybkie rozpoczęcie pracy z projektem. Proces ten pobiera całą historię commitów oraz wszystkie gałęzie repozytorium, dzięki czemu użytkownik posiada pełną wersję projektu na swoim komputerze. Jest to podstawowe polecenie podczas rozpoczynania pracy nad nowym projektem, który znajduje się na platformach takich jak GitHub, GitLab czy Bitbucket. 'git clone' umożliwia również sklonowanie repozytoriów prywatnych, pod warunkiem posiadania odpowiednich uprawnień dostępu.

Pytanie 7

Który z wymienionych poniżej przykładów stanowi system informacji przetwarzany przez system informatyczny?

A. System do monitorowania temperatury serwerów
B. System zarządzania oświetleniem drogowym
C. System wentylacyjny w biurowcach
D. System PESEL
System PESEL (Powszechny Elektroniczny System Ewidencji Ludności) jest przykładem systemu informacji przetwarzanym przez system informatyczny, ponieważ gromadzi, przetwarza i udostępnia dane osobowe obywateli Polski. Jest to złożony system, który działa na bazie zintegrowanych baz danych, umożliwiający identyfikację osób, przydzielanie numerów PESEL oraz zarządzanie informacjami o statusie mieszkańców. System ten jest niezbędny dla organów administracji publicznej, umożliwiając im efektywne zarządzanie danymi obywateli w kontekście takich usług, jak wydawanie dowodów osobistych, rejestracja wyborców, a także w kontekście ochrony zdrowia i ubezpieczeń społecznych. PESEL jest zgodny z Europejskim Ogólnochronnym Rozporządzeniem o Ochronie Danych Osobowych (RODO), co dodatkowo podkreśla jego rolę jako kluczowego systemu informacyjnego w obiegu danych w Polsce. Przykłady zastosowań systemu PESEL obejmują obsługę wniosków o świadczenia socjalne oraz dostęp do e-usług, co świadczy o jego fundamentalnym znaczeniu w administrowaniu danymi ludnościowymi.

Pytanie 8

W podanym fragmencie kodu Java wskaż, która zmienna może pomieścić wartość "T"

Ilustracja do pytania
A. zm1
B. zm2
C. zm4
D. zm3
Zmienna o nazwie zm3 została zadeklarowana jako typu char co oznacza że może przechowywać pojedynczy znak w tym przypadku wartość T. Typ char w języku Java jest używany do przechowywania znaków Unicode co czyni go idealnym do obsługi liter jako danych. Każdy znak jest przechowywany jako 16-bitowa wartość liczby całkowitej co umożliwia reprezentację szerokiego zakresu symboli w tym litery cyfry i inne znaki specjalne. Przykładowymi zastosowaniami typu char są przypadki gdzie konieczne jest przechowywanie i przetwarzanie liter np. w sytuacjach gdy aplikacja wymaga manipulacji pojedyńczymi znakami w tekście czy analizą ich wartości w kontekście porównywania danych. Dobre praktyki przy pracy z typem char obejmują świadome zarządzanie pamięcią i unikanie niepotrzebnych konwersji do innych typów danych co może prowadzić do strat precyzji lub nieoczekiwanych rezultatów. Ważne jest także zrozumienie jak znaki są kodowane i dekodowane szczególnie w kontekście międzynarodowym gdzie prawidłowa obsługa znaków Unicode jest kluczowa dla zapewnienia kompatybilności i poprawnego działania aplikacji w różnych językach.

Pytanie 9

Które z wymienionych opcji wspiera osoby niewidome w korzystaniu z witryn internetowych?

A. Umożliwienie modyfikacji czcionki
B. Implementacja czytnika ekranu (screen reader)
C. Zmiana rozdzielczości ekranu
D. Ograniczenie liczby grafik na stronie
Dodanie czytnika ekranu (screen reader) jest kluczowym rozwiązaniem, które znacząco ułatwia osobom niewidomym i słabowidzącym korzystanie z serwisów internetowych. Czytniki ekranu to oprogramowanie przekształcające tekst na stronie internetowej na mowę, co pozwala użytkownikom na interakcję z treścią dostępną w internecie. Technologia ta opiera się na standardach dostępności, takich jak WCAG (Web Content Accessibility Guidelines), które zalecają projektowanie stron przyjaznych dla osób z różnymi niepełnosprawnościami. Przykładem działania czytnika ekranu może być program JAWS, który umożliwia użytkownikom nawigację po stronach internetowych poprzez komendy klawiaturowe oraz odczytywanie treści na głos. Dzięki czytnikom ekranu, osoby niewidome mają możliwość dostępu do informacji, komunikacji oraz interakcji w sieci, co wpisuje się w ideę cyfrowej inkluzji i równości szans. Wprowadzenie czytnika ekranu na stronie internetowej to nie tylko techniczne wsparcie, ale również wyraz odpowiedzialności społecznej, mający na celu zapewnienie, że wszyscy użytkownicy mają równe prawo do korzystania z zasobów w sieci.

Pytanie 10

Jaki typ złośliwego oprogramowania funkcjonuje w tle, zbierając dane o wprowadzanych hasłach?

A. Keylogger
B. Spyware
C. Trojan
D. Adware
Keylogger to takie złośliwe oprogramowanie, które działa w tle i rejestruje wszystkie naciśnięcia klawiszy. To naprawdę niebezpieczne, bo może przechwytywać hasła i inne ważne dane osobowe. Keyloggery mogą się dostawać na komputer na różne sposoby, na przykład przez zainfekowane pliki, złośliwe reklamy albo w ramach innych niebezpiecznych programów. Przykładami takich keyloggerów są Spyrix czy Perfect Keylogger, które mogą monitorować, co robisz na komputerze. Z punktu widzenia bezpieczeństwa, standardy takie jak ISO/IEC 27001 mówią, jak ważna jest ochrona informacji. Dlatego tak istotne jest, żeby użytkownicy mieli świadomość zagrożeń, jakie niosą keyloggery i używali dobrego oprogramowania antywirusowego, żeby chronić swoje urządzenia i dane.

Pytanie 11

Jakie jest przeznaczenie polecenia "git merge"?

A. Do usuwania zmian w repozytorium
B. Do łączenia zmian z różnych gałęzi
C. Do pobierania aktualizacji zdalnego repozytorium
D. Do zakładania nowego repozytorium
Polecenie 'git merge' służy do łączenia zmian z jednej gałęzi (branch) z inną. Najczęściej używane jest do scalenia gałęzi deweloperskich (feature branches) z gałęzią główną (main lub master). Git merge pozwala na integrację nowych funkcji z głównym kodem projektu, co jest kluczowe w pracy zespołowej. W przypadku konfliktów, Git wymaga ręcznego rozwiązania ich przed zakończeniem procesu scalania. Umożliwia to zachowanie porządku w kodzie i unikanie błędów, które mogłyby wyniknąć z niezgodnych zmian.

Pytanie 12

Programista umieścił poniższą linię kodu w pliku HTML, aby

<script src="jquery-3.5.1.min.js"></script>

A. skorzystać z funkcji biblioteki jQuery, która była wcześniej pobrana i zapisana lokalnie
B. pobrać z Internetu w momencie otwierania strony i użyć biblioteki jQuery
C. wstawić kod JavaScript pomiędzy znacznikami <script></script>
D. zadeklarować własną funkcję JavaScript o nazwie min.js
Kod HTML jest często używany do włączania zewnętrznych bibliotek JavaScript, takich jak jQuery, które zostały wcześniej pobrane i zapisane lokalnie na serwerze. W tym przypadku atrybut src w znaczniku script wskazuje na lokalnie przechowywany plik jQuery, co oznacza, że przeglądarka załaduje bibliotekę z serwera, na którym znajduje się nasza strona. Korzystanie z lokalnych kopii bibliotek jest dobrą praktyką w przypadku ograniczonego lub niestabilnego dostępu do internetu, ponieważ gwarantuje dostępność bibliotek niezależnie od zewnętrznych źródeł. Zaletą tego rozwiązania jest redukcja potencjalnych opóźnień w ładowaniu strony, ponieważ plik jest już dostępny na tym samym serwerze. Użycie lokalnych plików jest również korzystne z punktu widzenia bezpieczeństwa, gdyż pozwala kontrolować dokładną wersję załadowanej biblioteki i uniknąć potencjalnych zagrożeń wynikających z modyfikacji zewnętrznych plików. W praktyce, programiści często łączą lokalne i zdalne zasoby, wybierając odpowiednią metodę w zależności od potrzeb projektu i dostępnych zasobów sieciowych.

Pytanie 13

W języku C# szablon List umożliwia korzystanie z listy. Z definicji obiektu kolekcji wynika, że jego elementami mogą być:

Ilustracja do pytania
A. elementy typu List
B. liczby całkowite
C. liczby rzeczywiste
D. elementy o nieokreślonym typie
Inicjalizacja listy w C# (List) wskazuje, że jej elementami są liczby całkowite (int). Szablony (generics) w C# umożliwiają tworzenie list o określonym typie, co zapobiega błędom podczas dodawania elementów. Listy w C# są dynamiczne, co oznacza, że ich rozmiar może być zmieniany w trakcie działania programu, a elementy mogą być dowolnie dodawane lub usuwane.

Pytanie 14

W programowaniu obiektowym odpowiednikami zmiennych oraz funkcji w programowaniu strukturalnym są

A. hermetyzacja oraz dziedziczenie
B. pola i kwalifikatory dostępu
C. metody statyczne i abstrakcyjne
D. pola i metody
Odpowiednikami zmiennych i funkcji w programowaniu obiektowym są pola i metody. Pola przechowują dane (stan obiektu), a metody implementują logikę, pozwalając na manipulowanie tymi danymi i realizację zachowań klasy.

Pytanie 15

Który z wymienionych elementów może stanowić część menu w aplikacji desktopowej?

A. Canvas
B. MenuItem
C. CheckBox
D. ScrollBar
CheckBox to komponent, który umożliwia wybór jednej lub wielu opcji, ale nie jest częścią systemu menu – zwykle znajduje się w formularzach lub ustawieniach aplikacji. ScrollBar to element interfejsu umożliwiający przewijanie treści w oknie aplikacji, ale nie jest elementem menu. Canvas to kontener do rysowania elementów graficznych i obiektów, ale nie pełni funkcji w kontekście tworzenia menu aplikacji desktopowych.

Pytanie 16

Który fragment kodu ilustruje zastosowanie rekurencji?

Ilustracja do pytania
A. Blok 1
B. Blok 4
C. Blok 3
D. Blok 2
Blok 1 zawiera przykład użycia rekurencji, gdzie funkcja wywołuje samą siebie z innym parametrem, aż do spełnienia określonego warunku końcowego. Rekurencja jest powszechnie stosowana w algorytmach przeszukiwania, sortowania oraz rozwiązywania problemów podziel i zwyciężaj.

Pytanie 17

Co to jest wskaźnik w języku C?

A. Zmienna przechowująca wartość logiczną
B. Zmienna przechowująca adres pamięci
C. Typ danych do zapisywania tekstów
D. Funkcja do dynamicznej alokacji pamięci
Wskaźnik w języku C to zmienna przechowująca adres pamięci innej zmiennej. Umożliwia bezpośrednią manipulację pamięcią, co czyni wskaźniki niezwykle potężnym narzędziem w programowaniu niskopoziomowym. Dzięki wskaźnikom można dynamicznie alokować pamięć, przekazywać duże struktury danych do funkcji bez ich kopiowania oraz implementować struktury danych, takie jak listy, drzewa czy grafy. Wskaźniki umożliwiają także iterowanie po tablicach i efektywne zarządzanie zasobami systemowymi, co czyni je kluczowym elementem w programowaniu systemowym.

Pytanie 18

Po uruchomieniu podanego kodu w języku C++ na konsoli zobaczymy następujący tekst:

Ilustracja do pytania
A. Wynik dodawania: 5+5.12=10.123450
B. "%s dodawania: %d + %.2f=%f", "Wynik", a, b, w
C. "%s dodawania: %d + %.2f = %f", "Wynik", 5, 5.12345, 10.123450
D. dodawania: 5+5.12345=10.123450 Wynik
Kod w C++ wyświetla 'Wynik dodawania: 5+5.12=10.123450'. Formatowanie tekstu i liczb zmiennoprzecinkowych jest kluczowe dla poprawnego wyświetlania danych w konsoli.

Pytanie 19

W zaprezentowanym wideo przedstawiono narzędzie do tworzenia interfejsu użytkownika, dla którego automatycznie generuje się

A. kod Java
B. obsługa wciśniętego przycisku
C. obsługa przycisku ekranu dotykowego
D. kod XML
W kreatorze interfejsu użytkownika automatycznie generowany jest kod XML, który opisuje układ i właściwości elementów interfejsu. XML jest standardem w tworzeniu interfejsów dla aplikacji na platformy Android i WPF.

Pytanie 20

Jakie cechy posiada kod dopełniający do dwóch?

A. Służy do przekształcania liczb binarnych na dziesiętne
B. Umożliwia reprezentację liczb ujemnych w systemie binarnym
C. Reprezentuje liczbę w odwrotnej formie binarnej
D. Umożliwia konwersję systemu binarnego na szesnastkowy
Kod uzupełnieniowy do dwóch jest powszechnie stosowany w systemach komputerowych do reprezentacji liczb całkowitych, w tym liczb ujemnych. W tym systemie najstarsza cyfra (bit) określa znak liczby, gdzie 0 oznacza liczbę dodatnią, a 1 liczbę ujemną. Aby uzyskać reprezentację liczby ujemnej w systemie binarnym, należy najpierw przedstawić jej wartość bezwzględną w postaci binarnej, a następnie odwrócić wszystkie bity i dodać 1 do wyniku, co daje nam liczbę w kodzie uzupełnieniowym do dwóch. Na przykład, aby uzyskać -5 w systemie 8-bitowym, zaczynamy od 5, co w postaci binarnej to 00000101. Następnie odwracamy bity, co daje 11111010, a dodając 1 uzyskujemy 11111011, co stanowi -5 w kodzie uzupełnieniowym do dwóch. Ta metoda umożliwia łatwe wykonywanie arytmetyki, ponieważ dodawanie i odejmowanie liczb ujemnych i dodatnich można realizować z użyciem tych samych operacji binarnych. Kod uzupełnieniowy do dwóch stał się standardem w większości architektur komputerowych, takich jak x86 czy ARM, dzięki swojej efektywności i prostocie.

Pytanie 21

W C++ mechanizm programowania obiektowego, który wykorzystuje funkcje wirtualne (ang. Virtual) i umożliwia programiście pominięcie kontroli klasy pochodnej podczas wywoływania metod, nazywa się

A. hermetyzacją
B. dziedziczeniem
C. przeciążeniem
D. polimorfizmem
Dziedziczenie pozwala na przejmowanie metod i właściwości z klasy bazowej, ale samo w sobie nie umożliwia dynamicznego wyboru metody w czasie działania programu. Przeciążenie (overloading) polega na definiowaniu wielu metod o tej samej nazwie, ale różnych parametrach, co nie jest równoznaczne z polimorfizmem. Hermetyzacja (encapsulation) koncentruje się na ukrywaniu szczegółów implementacyjnych i dostępie do danych tylko przez interfejs klasy, ale nie dotyczy mechanizmu wyboru metody w trakcie działania aplikacji.

Pytanie 22

Jakie składniki powinien mieć plan projektu?

A. Tylko czas wykonania i budżet
B. Etapy projektu, ramy czasowe, zasoby i zadania
C. Terminy i zasoby ludzkie
D. Wyłącznie etapy projektu
Harmonogram projektu powinien zawierać etapy projektu, ramy czasowe, zasoby oraz zadania. Taka kompleksowa struktura umożliwia skuteczne zarządzanie projektem i pozwala na śledzenie postępów. Każdy etap harmonogramu powinien być dokładnie opisany, a zadania powinny być przypisane do odpowiednich członków zespołu. Uwzględnienie zasobów i ram czasowych pozwala na precyzyjne planowanie i minimalizuje ryzyko opóźnień. Harmonogram stanowi nieodłączny element projektów zarządzanych zarówno w modelu Waterfall, jak i Agile, dostarczając przejrzystość na każdym etapie realizacji.

Pytanie 23

Która z niżej wymienionych pozycji jest ekwiwalentem biblioteki jQuery?

A. Bootstrap
B. Lodash
C. Express.js
D. TypeScript
Bootstrap to framework CSS, który służy do stylizacji i tworzenia responsywnych interfejsów użytkownika, ale nie oferuje narzędzi do manipulacji danymi jak Lodash. TypeScript to język programowania, który rozszerza JavaScript o statyczne typowanie, ale nie pełni roli biblioteki do manipulacji obiektami i tablicami. Express.js to minimalny framework do budowy serwerów w Node.js i nie ma zastosowania w kontekście manipulacji danymi na poziomie frontendowym, jak ma to miejsce w przypadku Lodash.

Pytanie 24

Jakie są różnice między procesem kompilacji a interpretacją kodu?

A. Kompilacja przekształca cały kod źródłowy przed jego wykonaniem, podczas gdy interpretacja tłumaczy kod na bieżąco
B. Kompilacja jest stosowana jedynie w programowaniu obiektowym
C. Kompilacja wymaga użycia debuggera, natomiast interpretacja tego nie potrzebuje
D. Interpretacja umożliwia tworzenie bibliotek dynamicznych, a kompilacja bibliotek statycznych
Debugger to narzędzie, które nie jest konieczne do kompilacji, ale może pomóc w szukaniu błędów w kodzie, który został skompilowany lub interpretowany. Programowanie obiektowe nie działa tylko w przypadku kompilacji, bo wiele języków jak Python czy Ruby działa w trybie interpretacji. No i tworzenie bibliotek dynamicznych nie jest tylko związane z interpretacją - zarówno kompilacja, jak i interpretacja mogą z nich korzystać, w zależności od tego, co potrzebujesz w projekcie.

Pytanie 25

Jaki jest zasadniczy cel ataku phishingowego?

A. Zakłócanie pracy sieci przez nadmiarowe zapytania
B. Zbieranie danych osobowych za pomocą podszywających się stron lub wiadomości
C. Uniemożliwienie dostępu do usług internetowych
D. Kradzież haseł z pamięci operacyjnej urządzenia
Atak phishingowy różni się od innych form cyberataków, które również mogą mieć na celu uzyskanie danych, lecz realizowane są w inny sposób. Zakłócenie działania sieci poprzez nadmiar zapytań, znane jako atak DDoS, polega na przesyłaniu ogromnej ilości zapytań do serwera, co skutkuje jego przeciążeniem i niedostępnością dla użytkowników. Tego typu ataki są ukierunkowane na infrastrukturę, a nie na pojedyncze dane osobowe użytkowników. W przypadku wykradania haseł z pamięci operacyjnej urządzenia, technika ta wymaga stosowania złośliwego oprogramowania, które potrafi skanować pamięć RAM i wyłuskiwać informacje. Jest to bardziej złożony proces, który wymaga bezpośredniego dostępu do systemu ofiary, co różni się od prostoty i zasięgu ataku phishingowego. Ostatnia z wymienionych możliwości, blokowanie dostępu do usług online, często jest związana z ransomware, które szyfruje pliki użytkownika i żąda okupu za ich odblokowanie. W przeciwieństwie do phishingu, tego typu ataki są bardziej destrukcyjne i mają na celu zaszkodzenie systemowi, a nie kradzież danych osobowych przez oszustwa. Dlatego też, mimo że wszystkie wymienione metody są niebezpieczne, to jednak ich mechanizmy i cele są zupełnie inne niż w przypadku ataku phishingowego.

Pytanie 26

Która z poniższych właściwości odnosi się do sieci bezprzewodowej?

A. Wymaga zastosowania przewodów do łączenia urządzeń
B. Nie potrzebuje zabezpieczeń, ponieważ jest domyślnie chroniona
C. Jest bardziej narażona na zakłócenia w przesyłaniu danych
D. Nie funkcjonuje w obszarach z dużą liczbą urządzeń
Sieci bezprzewodowe charakteryzują się tym, że wykorzystują fale radiowe do transmisji danych, co sprawia, że są bardziej podatne na zakłócenia. Zakłócenia te mogą pochodzić z różnych źródeł, takich jak inne urządzenia bezprzewodowe, mikrofalówki, czy nawet fizyczne przeszkody, takie jak ściany. W przypadku sieci Wi-Fi, które są powszechnie stosowane w domach i biurach, sygnał radiowy może być osłabiony przez metalowe obiekty oraz inne materiały budowlane. To zjawisko można zminimalizować, stosując nowoczesne standardy, takie jak IEEE 802.11ac, które oferują lepszą wydajność i stabilność sygnału. Praktycznym przykładem jest sytuacja, w której użytkownicy znajdują się w gęsto zabudowanym obszarze miejskim, gdzie wiele sieci Wi-Fi działa jednocześnie, co zwiększa ryzyko zakłóceń i wpływa na jakość połączenia. Zrozumienie tej cechy sieci bezprzewodowych jest kluczowe dla ich efektywnego użytkowania oraz projektowania.

Pytanie 27

Teoria wyznaczania celów definiuje właściwie sformułowany cel jako SMART, od pierwszych liter słów: specyficzny, Mierzalny, Ambitny, Realny oraz Terminowy. Wskaź, który cel wymaga wysiłku i stanowi wyzwanie dla pracownika?

A. Terminowy
B. Mierzalny
C. Ambitny
D. Specyficzny
Cel ambitny (Achievable) w kontekście teorii SMART oznacza taki, który wymaga wysiłku i stanowi wyzwanie, ale jednocześnie jest osiągalny. Cele ambitne motywują pracowników do działania i podnoszenia swoich kwalifikacji, co prowadzi do rozwoju zawodowego.

Pytanie 28

Jaką jednostkę zaleca się stosować przy projektowaniu interfejsu aplikacji?

A. dp
B. px
C. pt
D. mm
Jednostką zalecaną przy tworzeniu układów interfejsów w aplikacjach mobilnych jest dp (density-independent pixels). Pozwala to na zachowanie proporcji elementów interfejsu niezależnie od rozdzielczości urządzenia.

Pytanie 29

W jakiej okoliczności należy umieścić poszkodowanego w pozycji bezpiecznej?

A. Gdy poszkodowany jest nieprzytomny, ale oddycha
B. Gdy poszkodowany jest świadomy, lecz ma uraz kończyny
C. Gdy poszkodowany cierpi na krwotok zewnętrzny
D. Gdy poszkodowany nie oddycha
Ułożenie poszkodowanego w pozycji bezpiecznej jest konieczne, gdy osoba jest nieprzytomna, ale oddycha. Pozycja boczna ustalona zapobiega zadławieniu się językiem lub treścią żołądkową, co może wystąpić u osoby nieprzytomnej. To działanie jest kluczowe w przypadku osób po urazach głowy, zatruciach lub nagłych omdleniach. Dzięki tej pozycji drożność dróg oddechowych zostaje utrzymana, co znacząco zwiększa szanse na przeżycie do czasu przybycia służb medycznych.

Pytanie 30

Zaprezentowany diagram Gantta odnosi się do projektu IT. Przy założeniu, że każdy członek zespołu dysponuje wystarczającymi umiejętnościami do realizacji każdego z zadań oraz że do każdego zadania można przypisać jedynie jedną osobę, która poświęci na zadanie pełny dzień pracy, to minimalna liczba członków zespołu powinna wynosić:

Ilustracja do pytania
A. 5 osób
B. 2 osoby
C. 1 osobę
D. 4 osoby
Diagram Gantta przedstawia harmonogram projektu, gdzie poszczególne zadania są przypisane do konkretnych dni. W sytuacji, gdy każdy członek zespołu jest w stanie wykonać dowolne zadanie, minimalna liczba osób potrzebna do realizacji projektu to liczba równoczesnych zadań w najbardziej wymagającym momencie. Kluczowe jest tu równomierne rozłożenie pracy i unikanie przestojów, co zapewnia efektywne wykorzystanie zasobów.

Pytanie 31

Wykorzystując jeden z dwóch zaprezentowanych sposobów inkrementacji w językach z rodziny C lub Java, można zauważyć, że

Ilustracja do pytania
A. drugi zapis nie jest zgodny ze składnią, co doprowadzi do błędów kompilacji
B. wartość zmiennej b będzie wyższa po użyciu drugiego zapisu w porównaniu do pierwszego
C. bez względu na zastosowany sposób, w zmiennej b zawsze uzyskamy ten sam rezultat
D. tylko przy użyciu pierwszego zapisu, zmienna a zostanie zwiększona o 1
W językach programowania z rodziny C (w tym C++ i Java) istnieją dwie formy inkrementacji: preinkrementacja (++x) i postinkrementacja (x++). Preinkrementacja zwiększa wartość zmiennej przed jej użyciem w wyrażeniu, natomiast postinkrementacja zwiększa ją dopiero po zakończeniu aktualnej operacji. Oznacza to, że w przypadku postinkrementacji, wartość zmiennej przed zwiększeniem zostanie użyta w bieżącym wyrażeniu, a dopiero potem następuje jej zwiększenie o 1. Ta subtelna różnica ma istotne znaczenie, zwłaszcza w pętlach i wyrażeniach logicznych, gdzie każda iteracja wpływa na wynik. W praktyce preinkrementacja jest nieco bardziej efektywna, ponieważ nie wymaga przechowywania kopii pierwotnej wartości zmiennej, co przekłada się na minimalnie lepszą wydajność w niektórych przypadkach.

Pytanie 32

Która zasada zwiększa bezpieczeństwo w sieci?

A. Pobieranie plików z niepewnych źródeł
B. Zaniedbywanie aktualizacji systemu operacyjnego
C. Dzielnie się hasłami z przyjaciółmi
D. Korzystanie z mocnych, unikalnych haseł
Używanie silnych, unikalnych haseł jest fundamentalną zasadą poprawiającą bezpieczeństwo w sieci. Silne hasło to takie, które składa się z co najmniej 12 znaków, zawiera wielkie i małe litery, cyfry oraz znaki specjalne. Takie hasła są trudne do złamania przez ataki brute force, które wykorzystują algorytmy do próbowania różnych kombinacji znaków. Przykładem silnego hasła może być 'P@ssw0rd!2023', które łączy różnorodne typy znaków. Używanie unikalnych haseł dla różnych kont jest równie ważne, ponieważ w przypadku naruszenia bezpieczeństwa jednego konta, inne pozostają zabezpieczone. Standardy takie jak NIST (National Institute of Standards and Technology) zalecają tworzenie haseł w sposób, który ogranicza ich przewidywalność. Narzędzia do zarządzania hasłami, takie jak LastPass czy 1Password, mogą pomóc w generowaniu i przechowywaniu silnych haseł, co dodatkowo redukuje ryzyko. Stosowanie tej zasady jest kluczowe w kontekście ochrony danych osobowych oraz zapobiegania kradzieży tożsamości.

Pytanie 33

Diagramem, który służy do śledzenia realizacji zadań przez członków zespołu projektowego, może być

A. Gantta
B. aktywnosci UML
C. Venna
D. związków encji
Diagram Gantta to narzędzie do wizualizacji harmonogramu projektów. Umożliwia śledzenie postępów i zarządzanie zadaniami, co czyni go niezwykle przydatnym w monitorowaniu pracy zespołu. Każde zadanie jest przedstawione jako pasek, którego długość odpowiada czasowi trwania zadania. Diagram Gantta umożliwia również identyfikację zależności między zadaniami oraz zarządzanie zasobami, co czyni go kluczowym narzędziem w zarządzaniu projektami IT.

Pytanie 34

Jaki środek ochronny najlepiej chroni przed hałasem w biurze?

A. Lampy biurowe o niskim poziomie natężenia światła
B. Panele akustyczne wygłuszające
C. Okna zamknięte
D. Mata antypoślizgowa
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 35

Który z wymienionych mechanizmów umożliwia ograniczenie dostępu do wybranych sekcji aplikacji webowej?

A. Formularze dynamiczne
B. System logowania i kontroli dostępu
C. Pliki CSS statyczne
D. Mechanizm renderowania treści
System logowania i kontroli dostępu to kluczowy mechanizm, który pozwala na ograniczenie dostępu do niektórych części aplikacji webowej. Logowanie umożliwia uwierzytelnienie użytkowników i przypisanie im odpowiednich ról, co definiuje poziom dostępu do zasobów. Dzięki mechanizmom autoryzacji możliwe jest kontrolowanie, które funkcje lub sekcje aplikacji są dostępne dla poszczególnych użytkowników. Kontrola dostępu może być realizowana za pomocą tokenów JWT (JSON Web Token), sesji lub kluczy API, co zapewnia dodatkowe warstwy zabezpieczeń. Wdrożenie takich systemów jest nieodzowne w aplikacjach webowych oferujących różne poziomy funkcjonalności, takich jak panele administracyjne, portale użytkowników czy aplikacje bankowe. Odpowiednie zarządzanie uprawnieniami jest fundamentem bezpieczeństwa aplikacji.

Pytanie 36

Jaką nazwę nosi framework CSS, który służy do definiowania wyglądu stron internetowych i którego klasy są użyte w przedstawionym przykładzie?

Ilustracja do pytania
A. Bootstrap
B. Angular
C. Symfony
D. Yaml
Bootstrap jest jednym z najpopularniejszych frameworków CSS używanych do tworzenia responsywnych aplikacji internetowych. Jest to zestaw narzędzi open-source, który oferuje gotowe klasy CSS oraz komponenty JavaScript, ułatwiające projektowanie interfejsów użytkownika. W podanym przykładzie klasy takie jak 'col-sm-3' 'col-md-6' i 'col-lg-4' odnoszą się do siatki Bootstrapowej, która umożliwia elastyczne rozplanowanie elementów na stronie w zależności od rozmiaru ekranu. Klasa 'btn-primary' stosowana jest w Bootstrapie do stylizacji przycisków w sposób, który pasuje do domyślnych kolorów motywu. Z kolei 'dropdown-toggle' jest używana do obsługi rozwijanych list. Dzięki Bootstrapowi można z łatwością tworzyć nowoczesne i estetyczne aplikacje, które są zgodne z zasadami responsywnego web designu, co jest kluczowym standardem w dzisiejszej branży. Użycie Bootstrapu przyspiesza proces developmentu, pozwalając skupić się na funkcjonalności i logice aplikacji, zamiast na ręcznym stylizowaniu elementów.

Pytanie 37

Programista pragnie wybrać algorytm, który najszybciej przetwarza dane w jego aplikacji. Na podstawie złożoności obliczeniowej przedstawionej w tabeli, należy wskazać algorytm numer

Ilustracja do pytania
A. 2 lub 3
B. 3
C. 1 lub 5
D. 4
Algorytm numer 4 w tabeli złożoności obliczeniowej działa najszybciej, co wynika z jego niskiej złożoności czasowej. Algorytmy o niższej złożoności są bardziej efektywne przy dużych zbiorach danych.

Pytanie 38

Jakie elementy powinny być ujęte w dokumentacji programu?

A. Strategia marketingowa aplikacji
B. Opis funkcji, klas i zmiennych w kodzie
C. Szczegóły dotyczące konfiguracji serwera
D. Zestawienie błędów zidentyfikowanych w trakcie testów
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 39

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

A. Klasa, która umożliwia wielokrotne dziedziczenie pól prywatnych
B. Klasa, która nie może posiadać konstruktorów ani destruktorów
C. Klasa, która wykorzystuje pola i metody innej klasy bez ich ponownej definicji
D. Klasa, która dzieli swoje pola z klasami zaprzyjaźnionymi
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 40

Zapisany fragment w Pythonie ilustruje:

Ilustracja do pytania
A. kolejkę (LIFO)
B. tablicę asocjacyjną (słownik)
C. strukturę danych
D. stos
Przedstawiony kod w Pythonie opisuje słownik (tablicę asocjacyjną), czyli strukturę danych przechowującą pary klucz-wartość. Słowniki są niezwykle elastyczne i efektywne, pozwalają na szybki dostęp do wartości na podstawie unikalnego klucza. Są szeroko wykorzystywane w analizie danych, przechowywaniu konfiguracji i implementacji różnorodnych algorytmów.
Strona wykorzystuje pliki cookies do poprawy doświadczenia użytkownika oraz analizy ruchu. Szczegóły