Wyniki egzaminu

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

Egzamin zdany!

Wynik: 38/40 punktów (95,0%)

Wymagane minimum: 20 punktów (50%)

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

Wartości składowych RGB koloru #AA41FF zapisane w systemie szesnastkowym po przekształceniu na system dziesiętny są odpowiednio

A. 170, 64, 255
B. 160, 65, 255
C. 160, 64, 255
D. 170, 65, 255
Kolor #AA41FF w formacie RGB składa się z trzech komponentów: czerwony (AA - 170), zielony (41 - 65) i niebieski (FF - 255). Przekształcenie wartości szesnastkowych na dziesiętne pozwala na precyzyjne odwzorowanie koloru w różnych aplikacjach graficznych. Tego typu konwersje są kluczowe w projektowaniu stron internetowych i aplikacji, gdzie kolorystyka ma istotne znaczenie dla UX/UI.

Pytanie 2

Jakie znaczenie ma deklaracja zmiennej w programowaniu?

A. Zarezerwowanie miejsca w pamięci dla wyników operacji arytmetycznych
B. Określenie typu oraz nazwy zmiennej w kodzie programu
C. Przypisanie zmiennej wartości domyślnej
D. Stworzenie nowej wartości w bazie danych
Utworzenie wartości w bazie danych nie jest związane z deklaracją zmiennej – to operacja wykonywana w językach baz danych (np. SQL). Przypisanie zmiennej wartości domyślnej następuje po jej deklaracji, ale samo przypisanie wartości nie jest równoznaczne z deklaracją. Zarezerwowanie miejsca w pamięci dla wyników operacji arytmetycznych to efekt działania programu, a nie deklaracji zmiennej – rezerwacja pamięci następuje po uruchomieniu kodu, a nie na etapie jego pisania.

Pytanie 3

Ergonomiczną oraz właściwą pozycję do pracy przy komputerze zapewni fotel, którego

A. oparcie w rejonie szyi jest nachylone do przodu o 40o
B. podłokietniki są 30 cm powyżej blatu
C. oparcie wspiera lordozę w dolnym odcinku pleców
D. podłokietniki znajdują się 20 cm poniżej blatu
Prawidłowa i ergonomiczna pozycja pracy przy komputerze jest kluczowa dla zdrowia i komfortu użytkownika. Oparcie krzesła, które zapewnia lordozę w odcinku lędźwiowym, jest niezbędne, ponieważ pozwala na zachowanie naturalnej krzywizny kręgosłupa. Lordoza lędźwiowa to naturalne wygięcie kręgosłupa w dolnej części pleców, które wspiera prawidłowe ułożenie ciała podczas siedzenia. Krzesło powinno być zaprojektowane tak, aby oparcie przylegało do krzywizny ciała, co minimalizuje ryzyko bólu pleców oraz przeciążeń. Praktycznym przykładem ergonomicznej pozycji jest ustawienie oparcia w taki sposób, aby jego dolna część była dostosowana do odcinka lędźwiowego. Zgodnie z normami ISO 9241, które dotyczą ergonomii miejsc pracy przy komputerze, krzesło powinno umożliwiać użytkownikowi przyjęcie wygodnej pozycji z podparciem dla dolnej części pleców. W odpowiedniej pozycji stopy powinny spoczywać płasko na podłodze, a kolana powinny być na poziomie bioder, co wspiera prawidłowe krążenie krwi oraz redukuje napięcia mięśniowe.

Pytanie 4

Przedstawione logo praw Creative Commons umożliwia bezpłatne użytkowanie dzieła:

Ilustracja do pytania
A. w działaniach komercyjnych
B. pod warunkiem zachowania go w oryginalnej formie
C. pod warunkiem udostępnienia go na tej samej zasadzie licencyjnej
D. w celu modyfikacji lub remiksowania
Prawa Creative Commons umożliwiają darmowe korzystanie z utworu, jeśli celem jest jego zmiana lub remiksowanie. Jest to typowa licencja dla twórców, którzy chcą, aby ich prace mogły być swobodnie modyfikowane i rozwijane przez innych, promując współpracę i kreatywność.

Pytanie 5

Zmienna o typie logicznym może mieć następujące wartości:

A. true, false
B. 0 oraz każda liczba całkowita
C. 1, -1
D. trzy dowolne liczby naturalne
Typ logiczny (boolean) może przyjąć jedynie dwie wartości: true (prawda) i false (fałsz). Jest to fundamentalna zasada w programowaniu, ponieważ zmienne logiczne są podstawą operacji warunkowych, pętli oraz sterowania przepływem programu. W językach takich jak C++, Java, Python i wielu innych, wartości logiczne pozwalają na budowanie złożonych struktur decyzyjnych. Dzięki nim programista może precyzyjnie kontrolować, które fragmenty kodu zostaną wykonane, co jest kluczowe w implementacji algorytmów oraz walidacji danych.

Pytanie 6

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

A. 100
B. FE
C. FF
D. EF
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 7

Zaprezentowany wykres ilustruje wyniki przeprowadzonych testów

Ilustracja do pytania
A. funkcjonalności
B. wydajności
C. ochrony
D. użyteczności
Wykres przedstawia czasy odpowiedzi strony internetowej co jest kluczowe w kontekście testów wydajnościowych. Testy wydajnościowe mają na celu zmierzenie jak system radzi sobie pod określonym obciążeniem i jak szybko potrafi odpowiedzieć na zapytania użytkowników. Tego typu analiza pomaga zidentyfikować potencjalne wąskie gardła w infrastrukturze IT. Przykładowo jeżeli czasy odpowiedzi DNS lub połączenia są zbyt długie może to wskazywać na potrzebę optymalizacji serwerów DNS lub infrastruktury sieciowej. Testy te są nieodłącznym elementem zapewnienia jakości oprogramowania a ich prawidłowe wykonanie wpływa na doświadczenia użytkowników końcowych. Dobra praktyka w branży IT zakłada regularne przeprowadzanie testów wydajnościowych w celu monitorowania stabilności systemu w warunkach zbliżonych do rzeczywistych. Warto również zauważyć że narzędzia takie jak JMeter czy LoadRunner są powszechnie używane do przeprowadzania takich testów co umożliwia symulację różnorodnych scenariuszy obciążenia i analizę wyników w czasie rzeczywistym.

Pytanie 8

Jakie są kluczowe etapy resuscytacji krążeniowo-oddechowej?

A. 30 wdechów ratowniczych bez uciśnięć
B. 10 uciśnięć klatki piersiowej bez wdechów
C. 30 uciśnięć klatki piersiowej na przemian z 2 wdechami ratowniczymi
D. 20 uciśnięć klatki piersiowej na przemian z 5 wdechami ratowniczymi
30 uciśnięć klatki piersiowej na przemian z 2 wdechami ratowniczymi to standardowy protokół resuscytacji krążeniowo-oddechowej (RKO) zgodny z wytycznymi Europejskiej Rady Resuscytacji (ERC). Uciśnięcia wykonywane są na głębokość około 5-6 cm w tempie 100-120 uciśnięć na minutę. Po 30 uciśnięciach wykonuje się 2 wdechy ratownicze, które powinny być wykonywane z odpowiednią siłą, aby unieść klatkę piersiową poszkodowanego. Taka sekwencja jest podstawą pierwszej pomocy i może uratować życie osoby, u której doszło do zatrzymania akcji serca. Resuscytację należy kontynuować do momentu przybycia służb ratunkowych lub odzyskania przytomności przez poszkodowanego.

Pytanie 9

W zaprezentowanym kodzie stworzono abstrakcyjną klasę Figura oraz klasę Prostokąt, która po niej dziedziczy, zawierającą określone pola i konstruktory. Wskaż najprostszą implementację sekcji /* metody klasy */ dla klasy Prostokąt

Ilustracja do pytania
A. Kod 4
B. Kod 3
C. Kod 1
D. Kod 2
Kod 1 jest prawidłowy ponieważ zapewnia implementację abstrakcyjnych metod Pole i Obwod z klasy Figura co jest wymagane dla każdej klasy dziedziczącej po klasie abstrakcyjnej W Javie kiedy klasa dziedziczy po klasie abstrakcyjnej musi zaimplementować wszystkie jej abstrakcyjne metody Kod 1 definiuje metodę Pole która oblicza pole prostokąta jako iloczyn długości boków a i b oraz metodę Obwod która oblicza obwód jako sumę dwóch razy długości a i dwóch razy długości b Jest to zgodne z konwencjami programowania obiektowego które promują enkapsulację i polimorfizm Kod odnosi się bezpośrednio do konkretnego zastosowania jakim jest obliczanie parametrów prostokąta co jest częstym przypadkiem w programowaniu graficznym oraz w aplikacjach matematycznych Implementacja metod w ten sposób zapewnia prostotę oraz czytelność kodu co jest zgodne z dobrymi praktykami w inżynierii oprogramowania Ponadto dzięki poprawnej implementacji można z powodzeniem rozszerzać funkcjonalność obiektową programu umożliwiając jego łatwiejsze modyfikowanie i rozwijanie w przyszłości

Pytanie 10

Jakie znaczenie ma framework w kontekście programowania?

A. System operacyjny, który umożliwia uruchamianie aplikacji
B. Moduł do zarządzania systemami baz danych
C. Program do graficznego projektowania interfejsów użytkownika
D. Zbiór gotowych bibliotek, narzędzi i zasad ułatwiających tworzenie aplikacji
Framework to zbiór gotowych bibliotek, narzędzi i reguł, które wspierają tworzenie aplikacji poprzez dostarczanie struktury ułatwiającej pracę programistów. Frameworki definiują standardowe komponenty aplikacji, umożliwiając programistom skoncentrowanie się na logice biznesowej zamiast na podstawowej architekturze aplikacji. Przykłady popularnych frameworków to .NET, Angular, Django i Spring. Frameworki przyspieszają proces programowania, poprawiają jakość kodu i wspierają skalowalność aplikacji, co czyni je nieodłącznym elementem nowoczesnego programowania.

Pytanie 11

Jakiego typu funkcja jest tworzona poza klasą, ale ma dostęp do jej prywatnych i chronionych elementów?

A. Konstruktor
B. Metoda statyczna
C. Destruktor
D. Funkcja zaprzyjaźniona
Funkcja zaprzyjaźniona to specjalny typ funkcji, który jest deklarowany jako 'friend' w ciele klasy, co pozwala jej na dostęp do prywatnych i chronionych składowych tej klasy. Chociaż funkcja zaprzyjaźniona jest definiowana poza klasą, może operować na jej wewnętrznych danych, co czyni ją bardzo użytecznym narzędziem w programowaniu obiektowym. Tego rodzaju funkcje są często wykorzystywane w przypadkach, gdy konieczne jest współdziałanie dwóch klas lub funkcji narzędziowych, które muszą manipulować danymi wewnętrznymi klasy, ale nie powinny być jej metodami członkowskimi. Dzięki funkcjom zaprzyjaźnionym można zapewnić elastyczność w dostępie do danych przy jednoczesnym zachowaniu hermetyzacji klasy. Przykładem może być przeciążenie operatorów, np. operator +, który musi mieć dostęp do prywatnych składowych obu operandów.

Pytanie 12

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

A. Harmonogram wdrożenia aplikacji
B. Zalecenia dotyczące optymalizacji kodu
C. Specyfikacje techniczne serwera
D. Opis procedur testowych oraz rezultaty wykonanych testów
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 13

Który z wymienionych objawów może sugerować nagłe zagrożenie dla zdrowia?

A. Zwiększona efektywność pracy
B. Obniżony nastrój w ciągu dnia
C. Intensywne pocenie się w gorącym otoczeniu
D. Ostry ból w klatce piersiowej
Ostry ból w klatce piersiowej to jeden z najbardziej alarmujących objawów wskazujących na nagłe zagrożenie zdrowotne, takie jak zawał serca lub zatorowość płucna. Tego rodzaju ból jest często opisywany jako gniotący, ściskający lub rozlewający się na inne części ciała, takie jak ramię, szyja czy żuchwa. W takich przypadkach kluczowe jest szybkie wezwanie pomocy medycznej, ponieważ każda minuta opóźnienia może zwiększyć ryzyko powikłań lub śmierci. Edukacja w zakresie rozpoznawania tego objawu może uratować życie, dlatego tak ważne jest rozróżnianie go od innych mniej groźnych objawów.

Pytanie 14

Podejście obiektowe w rozwiązywaniu problemów obejmuje między innymi:

A. wyzwalacze i polimorfizm
B. zmienne, procedury oraz funkcje
C. pola, metody, rekurencję oraz kwerendy
D. klasy, obiekty oraz hermetyzację
Obiektowe podejście obejmuje klasy, obiekty i hermetyzację. Te trzy elementy stanowią podstawę programowania obiektowego, umożliwiając organizację kodu i ochronę danych przed nieautoryzowanym dostępem.

Pytanie 15

Jaki modyfikator dostępu umożliwia dostęp do pól klasy tylko za pomocą jej metod?

A. Protected
B. Private
C. Public
D. Static
Modyfikator `private` w językach takich jak C++, Java i C# pozwala na ograniczenie dostępu do pól i metod klasy, umożliwiając ich wykorzystanie wyłącznie w obrębie tej samej klasy. Pola `private` są ukryte przed innymi klasami i mogą być modyfikowane lub odczytywane jedynie poprzez metody publiczne (gettery i settery). Przykład w C++: `class Konto { private: double saldo; public: void ustawSaldo(double s) { saldo = s; } }`. Dzięki temu mechanizmowi dane są chronione przed nieautoryzowanymi zmianami, co zwiększa bezpieczeństwo aplikacji i minimalizuje ryzyko błędów.

Pytanie 16

Który z podanych terminów najlepiej odnosi się do składnika statycznego w klasie?

A. Zmienna lokalna wewnątrz danej klasy
B. Pole lub metoda, która jest przypisana do klasy, a nie do jej instancji
C. Funkcja, która wywołuje destruktor danej klasy
D. Metoda z dostępem ograniczonym tylko do tej samej klasy
Składnik statyczny klasy to pole lub metoda, która należy do klasy jako całości, a nie do konkretnego obiektu. Oznacza to, że istnieje tylko jedna kopia składnika statycznego współdzielona przez wszystkie obiekty tej klasy. Przykład w C++: `class Licznik { public: static int liczbaObiektow; }`. Zmienna `liczbaObiektow` przechowuje liczbę utworzonych instancji klasy i jest wspólna dla wszystkich obiektów. Składniki statyczne są często używane do implementacji liczników, zarządzania zasobami lub przechowywania danych globalnych w obrębie klasy.

Pytanie 17

Zgodnie z informacjami zawartymi w ramce, wskaż, który z rysunków ilustruje element przypisany do klasy Badge określonej w bibliotece Bootstrap?

Ilustracja do pytania
A. A
B. C
C. D
D. B
Klasa 'Badge' w Bootstrap jest używana do wyświetlania małych etykietek lub liczników, często w kontekście przycisków lub elementów nawigacyjnych. Badge pomaga wskazać np. liczbę nieprzeczytanych wiadomości, powiadomień lub status danego elementu. Jest to kluczowy element UI, który poprawia przejrzystość interfejsu użytkownika.

Pytanie 18

Na podstawie treści zawartej w ramce, określ, który z rysunków ilustruje element odpowiadający klasie Badge zdefiniowanej w bibliotece Bootstrap?

Ilustracja do pytania
A. Rysunek 2
B. Rysunek 4
C. Rysunek 1
D. Rysunek 3
Wybór Rysunku 2 jest poprawny ponieważ przedstawia on elementy badge zdefiniowane w bibliotece Bootstrap Badge to niewielkie oznaczenia wizualne zazwyczaj zawierające liczby lub krótkie informacje które można umieścić obok linków lub innych elementów interfejsu użytkownika W Bootstrapie badge są implementowane za pomocą klasy .badge i można je stosować na przykład do wskazywania liczby nowych wiadomości lub powiadomień w aplikacjach webowych Dzięki temu użytkownik ma natychmiastowy dostęp do ważnych informacji bez konieczności wykonywania dodatkowych działań Przykładem zastosowania badge może być ikonka koperty z liczbą nieprzeczytanych wiadomości w skrzynce odbiorczej Co więcej badge można stylować za pomocą dodatkowych klas kolorystycznych takich jak .bg-primary .bg-success itd co pozwala na dostosowanie ich wyglądu do stylistyki całej aplikacji To praktyczne narzędzie w tworzeniu intuicyjnych interfejsów użytkownika które poprawia użyteczność i estetykę strony internetowej Zastosowanie badge zgodnie z dobrymi praktykami projektowania UX/UI wspiera lepszą organizację i dostępność informacji w aplikacjach internetowych

Pytanie 19

Reguła zaangażowania i konsekwencji jako jedna z zasad wpływania na innych odnosi się

A. do doprowadzania spraw do końca
B. do odwzajemniania się osobie, która nam pomogła
C. do uległości wobec autorytetów
D. do kierowania się zdaniem danej grupy
Reguła zaangażowania i konsekwencji odnosi się do potrzeby doprowadzenia spraw do końca. Kiedy ktoś podejmie decyzję lub działanie, jest bardziej skłonny kontynuować, aby zachować spójność wewnętrzną i unikać dysonansu poznawczego.

Pytanie 20

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. stałoprzecinkowy
B. zmiennoprzecinkowy
C. logicznym
D. łańcuchowym
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 21

Na podstawie zamieszczonego fragmentu kodu można stwierdzić, że element o nazwie rysunek jest

Ilustracja do pytania
A. konstruktorem
B. polem w klasie
C. obiektem
D. metodą w klasie
Zobacz, 'rysunek' w tym kodzie to metoda klasy. Skąd to wiem? Po tym, że mamy nawiasy. Metody klasy są super przydatne, bo pozwalają na robienie różnych rzeczy z obiektami albo zwracanie wyników na zewnątrz.

Pytanie 22

Który z paradygmatów programowania najbardziej akcentuje dziedziczenie oraz polimorfizm?

A. Programowanie strukturalne
B. Programowanie obiektowe
C. Programowanie funkcyjne
D. Programowanie proceduralne
Programowanie obiektowe (OOP) to paradygmat, który kładzie największy nacisk na dziedziczenie i polimorfizm. Dziedziczenie pozwala na tworzenie nowych klas na podstawie już istniejących, co umożliwia ponowne wykorzystanie kodu i jego rozszerzanie. Polimorfizm umożliwia definiowanie metod o tej samej nazwie, ale z różnym zachowaniem w zależności od kontekstu lub obiektu, co zwiększa elastyczność i modularność kodu. Programowanie obiektowe jest szeroko stosowane w językach takich jak Java, C++, Python czy C#, ponieważ pozwala na budowanie skalowalnych i łatwych w utrzymaniu aplikacji.

Pytanie 23

Która z wymienionych metod może pomóc w walce z uzależnieniem od internetu?

A. Wprowadzenie systematycznych przerw od używania urządzeń cyfrowych
B. Zwiększenie czasu spędzanego na mediach społecznościowych
C. Zainstalowanie większej ilości aplikacji rozrywkowych
D. Używanie komputera jedynie w nocy
Wprowadzenie regularnych przerw od korzystania z urządzeń cyfrowych pomaga przeciwdziałać uzależnieniu od internetu. Regularne odstawienie urządzeń pozwala na regenerację, zmniejsza ryzyko nadmiernej ekspozycji na treści cyfrowe i pozwala na większą interakcję z rzeczywistym otoczeniem. Przerwy te pomagają w utrzymaniu równowagi psychicznej i fizycznej, poprawiają koncentrację oraz jakość snu.

Pytanie 24

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

A. trzeba zaimplementować tę metodę w tej klasie
B. dziedziczenie po tej klasie jest niedozwolone
C. klasa ta stanowi podstawę dla innych klas
D. klasy pochodne nie mogą implementować tej metody
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 25

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

A. Trojan
B. Keylogger
C. Adware
D. Spyware
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 26

Jakie jest fundamentalne zagadnienie w projektowaniu aplikacji w architekturze klient-serwer?

A. Brak podziału na role klienta i serwera
B. Przeniesienie wszystkich obliczeń na stronę klienta
C. Użycie serwera jako głównego miejsca przetwarzania danych
D. Funkcjonowanie aplikacji wyłącznie w trybie offline
Użycie serwera jako centralnego miejsca przetwarzania danych jest kluczowym elementem architektury klient-serwer. Serwer pełni rolę centralnego punktu, który zarządza żądaniami klientów, przechowuje dane i zapewnia odpowiedzi na zapytania. Taki model zapewnia większe bezpieczeństwo danych, ułatwia zarządzanie zasobami i umożliwia skalowanie aplikacji w miarę wzrostu liczby użytkowników. Architektura klient-serwer jest szeroko stosowana w aplikacjach webowych, systemach bankowych oraz usługach chmurowych, gdzie konieczna jest centralizacja danych i ich ochrona.

Pytanie 27

W metodach klasy GoldCustomer dostępne są tylko pola

Ilustracja do pytania
A. GoldPoints, Name, Id
B. GoldPoints, Name, Id, Age
C. GoldPoints, Name
D. GoldPoints
W metodach klasy GoldCustomer widoczne są pola GoldPoints, Name i Id, co oznacza, że są one dziedziczone lub publiczne i mogą być bezpośrednio dostępne w obrębie tej klasy.

Pytanie 28

Kod przedstawiony w języku XML/XAML określa

Ilustracja do pytania
A. stepper
B. przełącznik
C. suwak
D. listę rozwijaną
Kod XML/XAML definiuje przełącznik (Switch), który jest standardową kontrolką używaną do reprezentowania dwustanowego wyboru (włącz/wyłącz). Jest to często stosowane w aplikacjach mobilnych i desktopowych do aktywowania i dezaktywowania funkcji. W XAML przełącznik jest łatwy do skonfigurowania za pomocą atrybutu 'IsToggled', co umożliwia programistom szybkie zarządzanie stanem kontrolki.

Pytanie 29

Jaki rodzaj licencji umożliwia dowolne zmienianie oraz rozpowszechnianie kodu źródłowego?

A. Licencja shareware
B. Licencja GNU GPL
C. Licencja komercyjna
D. Licencja OEM
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 30

Które z wymienionych stanowi przykład struktury dziedziczenia?

A. Klasa Samochód ma dziedziczenie od klasy Pojazd
B. Klasa Samochód i Pojazd nie są ze sobą powiązane
C. Klasa Pojazd nie dziedziczy z żadnej klasy
D. Klasa Pojazd ma dziedziczenie od klasy Samochód
Hierarchia dziedziczenia to struktura klas, w której klasa pochodna dziedziczy właściwości i metody klasy bazowej. Klasa 'Samochód' dziedzicząca po klasie 'Pojazd' jest przykładem prawidłowej hierarchii dziedziczenia – klasa 'Samochód' rozszerza klasę 'Pojazd', dziedzicząc ogólne właściwości pojazdu, takie jak prędkość czy typ silnika. Dziedziczenie umożliwia rozszerzanie istniejącej funkcjonalności bez konieczności przepisywania tego samego kodu, co jest jednym z fundamentów programowania obiektowego.

Pytanie 31

Który z wymienionych poniżej typów danych stanowi przykład typu stałoprzecinkowego?

A. float
B. double
C. int
D. decimal
Typ danych 'int' (integer) to przykład typu stałoprzecinkowego, który przechowuje liczby całkowite. Stałoprzecinkowe typy danych są podstawą w programowaniu, ponieważ pozwalają na efektywne przechowywanie wartości bez części ułamkowej, co przyspiesza obliczenia i redukuje zużycie pamięci. Typ 'int' jest szeroko stosowany w językach takich jak C, C++, Java i Python, a jego główną zaletą jest szybkość operacji arytmetycznych oraz przewidywalność wyników. Stałoprzecinkowe typy danych znajdują zastosowanie w algorytmach, systemach sterowania i aplikacjach embedded, gdzie precyzja obliczeń jest kluczowa.

Pytanie 32

Jakie znaczenie ma termin "hierarchia dziedziczenia" w kontekście programowania obiektowego?

A. Zbiór klas, które nie mają wspólnych powiązań
B. Układ klas, który ogranicza występowanie dziedziczenia wielokrotnego
C. Zespół metod i pól posiadających ten sam modyfikator dostępu
D. Układ klas w strukturę, w której klasy pochodne dziedziczą cechy od klas bazowych
Hierarchia dziedziczenia to fundamentalna koncepcja programowania obiektowego, polegająca na organizacji klas w strukturę, w której klasy pochodne dziedziczą właściwości (pola i metody) od klas bazowych. Pozwala to na wielokrotne wykorzystanie kodu, co zwiększa jego modularność i zmniejsza redundancję. Klasa bazowa dostarcza ogólne cechy i metody, podczas gdy klasy pochodne rozszerzają lub modyfikują tę funkcjonalność, dostosowując ją do bardziej specyficznych wymagań. Przykładem jest klasa 'Pojazd', po której mogą dziedziczyć klasy 'Samochód' i 'Motocykl', zachowując wspólne atrybuty, takie jak 'maksymalna prędkość' czy 'masa'.

Pytanie 33

Jaki model zarządzania projektami przewiduje, że wszystkie etapy są realizowane jeden po drugim, bez możliwości wrócenia do wcześniejszych faz?

A. Metodyki zwinne (Agile)
B. Model przyrostowy
C. Model spiralny
D. Model kaskadowy (waterfall)
Model spiralny pozwala na wielokrotne przechodzenie przez różne fazy projektu, co daje większą elastyczność. Model przyrostowy umożliwia realizację projektu w etapach, co pozwala na dostarczanie częściowych wersji produktu. Metodyki zwinne (Agile) opierają się na iteracjach i umożliwiają powrót do poprzednich etapów, w zależności od potrzeb i informacji zwrotnych od klienta.

Pytanie 34

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 35

Jaką rolę pełni instrukcja throw w języku C++?

A. Przerywa działanie programu, gdy wystąpi wyjątek
B. Zgłasza wyjątek, który można przechwycić za pomocą bloku catch
C. Ogranicza zasięg zmiennych w bloku try
D. Inicjuje nowy wyjątek podczas działania aplikacji
Instrukcja 'throw' w C++ służy do zgłaszania wyjątków, które mogą być następnie przechwycone i obsłużone przez blok 'catch'. Mechanizm ten pozwala na przerwanie normalnego przepływu programu w przypadku wystąpienia błędu i skierowanie sterowania do odpowiedniego miejsca obsługi wyjątków. 'Throw' jest kluczowym elementem obsługi błędów i umożliwia propagowanie informacji o błędach na wyższe poziomy programu, co pozwala na ich efektywną obsługę. Używanie wyjątków poprawia czytelność kodu, umożliwiając oddzielenie logiki biznesowej od logiki obsługi błędów.

Pytanie 36

Jakie informacje mogą być zapisywane w cookies przeglądarki?

A. Preferencje użytkownika, takie jak język lub styl strony
B. Kod źródłowy aplikacji internetowej
C. Dane przechowywane w systemie baz danych
D. Prywatne dane użytkownika, na przykład hasła
Preferencje użytkownika, takie jak język strony, motyw kolorystyczny lub preferencje dotyczące układu, są typowymi danymi przechowywanymi w ciasteczkach przeglądarki. Mechanizm ciasteczek pozwala na personalizację doświadczenia użytkownika i jest szeroko stosowany w aplikacjach webowych w celu dostosowania interfejsu do indywidualnych potrzeb. Cookies umożliwiają także zapamiętywanie sesji użytkownika, co pozwala uniknąć konieczności wielokrotnego logowania. Informacje te są przechowywane lokalnie w przeglądarce użytkownika i mogą być odczytywane przez aplikację podczas każdej wizyty. Stosowanie ciasteczek zgodnie z przepisami, takimi jak RODO (GDPR), wymaga informowania użytkownika o ich przeznaczeniu oraz uzyskiwania jego zgody na ich przechowywanie, co zapewnia transparentność i zgodność z prawem.

Pytanie 37

Jednym z kroków publikacji aplikacji mobilnej w Google Play są testy Beta, które charakteryzują się tym, że są:

A. przeprowadzane przez grupę docelowych użytkowników aplikacji
B. podzielone na testy dotyczące funkcjonalności, wydajności i skalowalności
C. realizowane przez zespół zatrudnionych testerów z Google
D. prowadzone w oparciu o dokument zawierający przypadki testowe
Testy Beta w Google Play są wykonywane przez rzeczywistych użytkowników, którzy zgłaszają błędy i proponują zmiany. Jest to kluczowy etap testowania, który pozwala na ocenę aplikacji w warunkach zbliżonych do rzeczywistego użytkowania przed oficjalną premierą. Testy te pomagają wykrywać błędy, które mogły zostać pominięte podczas testów wewnętrznych.

Pytanie 38

Który z wymienionych dysków oferuje najszybszy dostęp do danych?

A. HDD 7200 RPM, SATA III, 64 MB Cache
B. HDD 5400 RPM, SATA II, 32 MB Cache
C. SSD SATA III, prędkość odczytu do 550 MB/s
D. SSD NVMe PCIe 3.0, prędkość odczytu do 3500 MB/s
Odpowiedź wskazująca na SSD NVMe PCIe 3.0 jako najszybszy dysk do odczytu danych jest zgodna z obecnymi standardami technologii przechowywania. Dyski SSD (Solid State Drive) korzystają z pamięci flash, co pozwala na znacznie szybszy dostęp do danych w porównaniu do tradycyjnych dysków HDD (Hard Disk Drive), które działają na zasadzie mechanicznych ruchomych elementów. Dyski NVMe (Non-Volatile Memory Express) są szczególnie wydajne, ponieważ wykorzystują interfejs PCIe (Peripheral Component Interconnect Express), co umożliwia znacznie wyższe prędkości transferu danych. W przypadku SSD NVMe PCIe 3.0, prędkość odczytu może osiągać do 3500 MB/s, co jest znaczącą różnicą w porównaniu do prędkości odczytu w dyskach HDD i SSD SATA. Przykładowo, w zastosowaniach takich jak edycja wideo, renderowanie grafiki 3D czy gry komputerowe, wyższa prędkość odczytu przekłada się na szybsze ładowanie danych i lepszą wydajność systemu. Standardy SATA III dla HDD również mają swoje ograniczenia, ponieważ maksymalna teoretyczna prędkość transferu wynosi 6 Gb/s, co jest dalekie od osiągów oferowanych przez NVMe. Dlatego SSD NVMe PCIe 3.0 jest zdecydowanym liderem w kontekście wydajności odczytu danych w porównaniu do pozostałych opcji.

Pytanie 39

Która z dokumentacji funkcji odpowiada przedstawionemu kodowi źródłowemu?

Ilustracja do pytania
A. Dokumentacja 1
B. Dokumentacja 3
C. Dokumentacja 2
D. Dokumentacja 4
Dokumentacja 2 jest prawidłowa i precyzyjnie opisuje funkcję, jej parametry oraz wartość zwracaną. Zgodność dokumentacji z kodem jest kluczowa dla późniejszego utrzymania oraz rozszerzania aplikacji.

Pytanie 40

Jakie są kluczowe różnice między typami stałoprzecinkowymi a zmiennoprzecinkowymi?

A. Typy zmiennoprzecinkowe przechowują wyłącznie liczby ujemne
B. Typy stałoprzecinkowe przechowują liczby całkowite, a typy zmiennoprzecinkowe przechowują liczby z ułamkami dziesiętnymi
C. Typy stałoprzecinkowe obsługują liczby ujemne, natomiast typy zmiennoprzecinkowe tylko dodatnie
D. Typy stałoprzecinkowe wymagają większej ilości pamięci niż typy zmiennoprzecinkowe
Główna różnica między typami stałoprzecinkowymi a zmiennoprzecinkowymi polega na tym, że stałoprzecinkowe przechowują liczby całkowite, podczas gdy zmiennoprzecinkowe przechowują liczby z częściami dziesiętnymi. Stałoprzecinkowe typy, takie jak 'int', są bardziej efektywne pod względem wydajności i zajmują mniej pamięci, co czyni je idealnym rozwiązaniem w przypadkach, gdzie precyzja dziesiętna nie jest wymagana. Z kolei typy zmiennoprzecinkowe, takie jak 'float' i 'double', umożliwiają dokładne reprezentowanie wartości niecałkowitych, co jest niezbędne w aplikacjach matematycznych i graficznych. Każdy z tych typów ma swoje zastosowanie w zależności od wymagań projektu.