Wyniki egzaminu

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

Egzamin zdany!

Wynik: 28/40 punktów (70,0%)

Wymagane minimum: 20 punktów (50%)

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

Który z poniższych programów służy do zarządzania projektami przy użyciu tablic kanban?

A. Word
B. Photoshop
C. Jira
D. Trello
Jira to zaawansowane narzędzie do zarządzania projektami, ale jest bardziej skoncentrowane na metodykach Agile i Scrum, a nie wyłącznie na tablicach kanban. Photoshop to narzędzie do edycji grafiki i tworzenia projektów wizualnych, które nie ma funkcji zarządzania projektami. Word jest edytorem tekstu i służy do tworzenia dokumentów, ale nie jest używany jako narzędzie do zarządzania zadaniami i projektami w sposób, w jaki robi to Trello.

Pytanie 2

Programista zapisał w pliku HTML przedstawioną linię kodu, aby

Ilustracja do pytania
A. pobrać z Internetu w momencie odsłony strony i zastosować bibliotekę jQuery.
B. zadeklarować własną funkcję JavaScript o nazwie min.js.
C. skorzystać z funkcji biblioteki jQuery, która wcześniej została pobrana i zapisana lokalnie
D. umieścić kod JavaScript pomiędzy znacznikami <script></script>.
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 3

Co przedstawia diagram Gantta?

A. Powiązania między różnymi projektami
B. Hierarchię plików w projekcie
C. Schemat przepływu danych
D. Harmonogram zadań w projekcie
Diagram Gantta to narzędzie używane do wizualizacji harmonogramu zadań w projekcie. Przedstawia on zadania w układzie osi czasu, co pozwala na łatwe śledzenie terminów, zależności i etapów realizacji projektu. Diagram Gantta jest niezwykle przydatny w dużych projektach, ponieważ ułatwia planowanie zasobów i umożliwia identyfikowanie potencjalnych opóźnień. Dzięki czytelnej formie, managerowie mogą szybko ocenić, które zadania są w trakcie realizacji, a które są opóźnione. Diagramy Gantta są szeroko stosowane w zarządzaniu projektami budowlanymi, IT oraz w planowaniu kampanii marketingowych.

Pytanie 4

W jakim przypadku stos będzie lepszym wyborem niż lista przy projektowaniu zestawu danych?

A. Kiedy dane muszą być posortowane
B. Kiedy chcemy usunąć element z końca
C. Kiedy kolejność przetwarzania danych jest odwrócona (LIFO)
D. Kiedy zależy nam na szybkim wyszukiwaniu elementów
Lista umożliwia liniowy dostęp do elementów i pozwala na dodawanie/usuwanie elementów w dowolnym miejscu, ale nie działa na zasadzie LIFO – dostęp do ostatniego elementu nie jest tak szybki jak w stosie. Kolejka działa zgodnie z zasadą FIFO (First In First Out), co oznacza, że elementy są przetwarzane w kolejności ich dodania, co jest odwrotnością stosu. Tablica dwuwymiarowa to struktura służąca do przechowywania danych w formie macierzy, umożliwiająca indeksowany dostęp, ale nie wspiera bezpośrednio operacji LIFO ani FIFO.

Pytanie 5

Które z poniższych działań można wykonać przy użyciu składnika statycznego klasy?

A. Tworzenie prywatnych kopii pól dla każdego obiektu
B. Przechowywanie wartości wspólnych dla wszystkich obiektów klasy
C. Dzielenie pól klasy pomiędzy klasy zaprzyjaźnione
D. Wywołanie destruktora klasy bez jej usuwania
Składnik statyczny klasy przechowuje wartości wspólne dla wszystkich instancji danej klasy. Oznacza to, że niezależnie od liczby utworzonych obiektów, istnieje tylko jedna kopia składowej statycznej, która jest współdzielona przez wszystkie instancje. Składowe statyczne są często wykorzystywane do przechowywania liczników, stałych wartości lub danych konfiguracyjnych. Metody statyczne mogą być wywoływane bezpośrednio na klasie, bez konieczności tworzenia obiektu, co czyni je niezwykle użytecznymi w przypadku funkcji narzędziowych.

Pytanie 6

Przedstawiony cytat jest opisem metodyki RAD. Rozwinięcie tego skrótu można przetłumaczyć na język polski jako

Ilustracja do pytania
A. szybki rozwój aplikacji
B. zintegrowane środowisko programistyczne
C. środowisko rozwijania aplikacji
D. środowisko szybkiego programowania
Wybór niepoprawnych odpowiedzi wynika z nieporozumienia dotyczącego znaczenia skrótu RAD. Pierwsza błędna odpowiedź środowisko rozwijania aplikacji nie odpowiada sednu metodyki RAD ponieważ odnosi się bardziej do ogólnego pojęcia platformy lub środowiska gdzie aplikacje są tworzone a nie do szybkiego procesu rozwoju. Nie oddaje to istoty metodyki która skupia się na skróceniu czasu cyklu życia aplikacji poprzez szybkie prototypowanie i wprowadzenie iteracyjnych zmian. Następnie środowisko szybkiego programowania również jest mylące ponieważ sugeruje zastosowanie narzędzi lub technologii które jedynie wspierają szybkie pisanie kodu a nie całego procesu projektowania testowania i wprowadzania do użytkowania. Zintegrowane środowisko programistyczne to termin odnoszący się do oprogramowania takiego jak IDE które oferuje narzędzia wspierające programistów w pisaniu testowaniu i debugowaniu kodu ale nie jest bezpośrednio związane z filozofią i technikami RAD. Typowym błędem myślowym jest skupienie się na pojedynczych etapach rozwoju oprogramowania a nie na całym procesie który metoda RAD opisuje jako całość łączącą szybkie tworzenie prototypów elastyczność i intensywną współpracę z klientem. Ważne jest zrozumienie że RAD to podejście systemowe mające na celu przyspieszenie dostarczania wartości klientom co nie jest osiągane przez samo szybkie kodowanie czy używanie zintegrowanych narzędzi programistycznych ale przez całościowe podejście do procesu tworzenia oprogramowania

Pytanie 7

Który rodzaj funkcji jest definiowany poza klasą, ale ma dostęp do jej prywatnych i chronionych składowych?

A. Destruktor
B. Metoda statyczna
C. Funkcja zaprzyjaźniona
D. Konstruktor
Konstruktor jest specjalnym typem metody klasy, który służy do inicjalizacji obiektów i nie ma dostępu do prywatnych składowych innej klasy, chyba że jest ona klasą zaprzyjaźnioną. Metoda statyczna należy do klasy jako całości i może być wywoływana bez tworzenia instancji obiektu, ale nie posiada dostępu do prywatnych lub chronionych składowych klasy, ponieważ działa w kontekście klasy, a nie instancji. Destruktor, z kolei, jest odpowiedzialny za czyszczenie zasobów po zniszczeniu obiektu i nie posiada funkcjonalności pozwalającej na dostęp do prywatnych danych innej klasy, o ile nie jest ona zaprzyjaźniona.

Pytanie 8

Na rysunku przedstawiony jest fragment schematu blokowego pewnego algorytmu. Ile razy zostanie sprawdzony warunek n<7?

Ilustracja do pytania
A. 8
B. 6
C. 5
D. 7
Warunek 'n < 7' będzie sprawdzany dokładnie 6 razy. To dlatego, że w klasycznej pętli for czy while liczba powtórzeń jest zawsze o jeden mniejsza niż wartość graniczna. Jak widzisz, w takich schematach liczba porównań idzie w parze z liczbą iteracji, a pętla zatrzymuje się, jak tylko warunek zostanie spełniony.

Pytanie 9

Które z poniższych rozwiązań ułatwia korzystanie z serwisów internetowych osobom niewidomym?

A. Zapewnienie możliwości zmiany czcionki
B. Dostosowanie rozdzielczości ekranu
C. Zmniejszenie liczby grafik na stronie
D. Dodanie czytnika ekranu (screen reader)
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

Jedną z możliwości testów funkcjonalnych wykonywanych na aplikacji webowej jest sprawdzenie

A. wydajności aplikacji
B. stopnia optymalizacji kodu aplikacji
C. bezpieczeństwa aplikacji
D. poprawności wyświetlanych elementów aplikacji
Testy funkcjonalne w aplikacji webowej są super ważne, bo sprawdzają, czy wszystko działa jak należy. Mówiąc prościej, chodzi o to, żeby zobaczyć, czy wszystkie elementy na stronie są wyświetlane prawidłowo, jak przyciski i formularze. To też dotyczy tego, jak użytkownicy wchodzą w interakcję z różnymi częściami strony. Moim zdaniem, dobrze przeprowadzone testy mogą naprawdę poprawić doświadczenie użytkownika.

Pytanie 11

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

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

Które stwierdzenie dotyczące pojęcia obiekt jest prawdziwe?

A. obiekt jest typem złożonym
B. obiekt umożliwia zdefiniowanie klasy
C. obiekt jest instancją klasy
D. obiekt i klasa są tożsame
Obiekt to instancja klasy, co oznacza, że klasa działa jako szablon lub plan, a obiekt jest jej konkretnym przykładem. W programowaniu obiektowym klasa definiuje właściwości i metody, które mogą być wykorzystywane przez obiekty. Obiekty są podstawą manipulacji danymi i interakcji w aplikacjach obiektowych, co umożliwia enkapsulację, dziedziczenie i polimorfizm. Każdy obiekt ma swoją unikalną tożsamość, stan i zachowanie, co pozwala na modelowanie rzeczywistych bytów w kodzie.

Pytanie 13

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

A. Plan marketingowy aplikacji
B. Szczegóły konfiguracji serwera
C. Lista błędów wykrytych podczas testów
D. Opis funkcji, klas i zmiennych w kodzie
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 14

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. tylko jeden element o treści Harry Potter
D. tyle elementów, ile jest elementów w tablicy books, w każdym punkcie listy jest element o treści {book}
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 15

Który z poniższych elementów interfejsu użytkownika jest typowy dla aplikacji desktopowej?

A. Routing
B. Strona HTML
C. Przycisk (Button)
D. API REST
Strona HTML to element bardziej webowy niż desktopowy, więc nie do końca pasuje tu. Jasne, teraz są technologie jak Electron, które pozwalają na robienie desktopów z HTML, ale to nie jest typowy sposób. Co do API REST, to jest do komunikacji aplikacji z serwerami, a nie do interfejsu użytkownika. A routing? No cóż, to działa w webowych aplikacjach, żeby ogarnąć nawigację między stronami, ale w klasycznych desktopach raczej tego nie znajdziesz, bo nie potrzebują trasowania adresów URL.

Pytanie 16

Która z akcji powinna być zaimplementowana w części back-end aplikacji internetowej?

A. wypisywanie danych pobranych z formularza w przeglądarce
B. obsługa bazy danych
C. walidacja formularzy w czasie rzeczywistym
D. obsługa zdarzeń kontrolek
Obsługa bazy danych jest fundamentalną częścią warstwy back-end w aplikacjach internetowych. Backend odpowiada za przetwarzanie logiki biznesowej, przechowywanie i zarządzanie danymi, a także komunikację z bazą danych. Dane przesyłane z front-endu (interfejsu użytkownika) są walidowane i przetwarzane po stronie serwera, zanim trafią do bazy danych lub zostaną zwrócone użytkownikowi. W przypadku aplikacji dynamicznych, serwer pobiera informacje z bazy danych, przekształca je zgodnie z wymogami aplikacji i przesyła z powrotem na front-end. Właściwe zarządzanie danymi i bezpieczeństwo operacji na bazie danych to kluczowe zadania back-endu. Równie ważne jest zapobieganie wstrzykiwaniu SQL (SQL Injection) i zapewnienie integralności danych, co stanowi podstawę skalowalnych i bezpiecznych aplikacji.

Pytanie 17

Przedstawiony algorytm może być zaimplementowany w języku Java w oparciu o instrukcję

Ilustracja do pytania
A. while
B. if
C. try
D. switch
Rozwiązanie problemu przy użyciu instrukcji if jest niewłaściwe, ponieważ instrukcja if służy do wykonywania pojedynczego bloku kodu raz na podstawie spełnienia danego warunku. Nie jest ona przeznaczona do iteracyjnego wykonywania operacji, co jest wymagane w przedstawionym algorytmie. Zastosowanie jej w tym kontekście oznaczałoby konieczność ręcznego powtarzania kodu, co jest nieefektywne i niezgodne z zasadami DRY (Don't Repeat Yourself). Instrukcja switch również nie jest odpowiednia do tego zadania. Switch jest używany do selekcji jednej spośród wielu możliwych ścieżek wykonania na podstawie wartości wyrażenia, zazwyczaj typu całkowitego. Nie obsługuje dynamicznych iteracji ani nie pozwala na wykonywanie kodu w pętli na podstawie zmiany wartości warunku. Instrukcja try w Javie służy do obsługi wyjątków i nie jest konstrukcją służącą do kontrolowania przepływu iteracyjnego. Jej użycie w tym kontekście byłoby nie tylko niepoprawne, ale i niezgodne z praktykami programistycznymi dotyczącymi obsługi błędów. Często spotykanym błędem jest mylenie konstrukcji kontrolujących przepływ wykonania programu z mechanizmami obsługi wyjątków czy wyrażeń selekcyjnych. Prawidłowe zrozumienie różnic między tymi konstrukcjami jest kluczowe w efektywnym programowaniu i pozwala na tworzenie czytelnych i zoptymalizowanych aplikacji. Każda z tych konstrukcji ma swoje specyficzne zastosowanie i znajomość ich właściwego użycia jest istotnym elementem wiedzy każdego programisty Java, co wpływa na jakość i wydajność tworzonych aplikacji.

Pytanie 18

Kod w języku JavaScript jest

Ilustracja do pytania
A. definicją zmiennej typu tablicowego
B. prototypem metody klasy
C. definicją funkcji strzałkowej
D. prototypem interfejsu
Kod w JavaScript opisuje definicję funkcji strzałkowej, która jest nowoczesnym i bardziej zwięzłym sposobem definiowania funkcji. Funkcje strzałkowe mają też specyficzne zachowanie w kontekście 'this', co czyni je często preferowanymi przy pracy z obiektami i metodami callback.

Pytanie 19

Który z poniższych przykładów jest zastosowaniem systemu informatycznego w działalności biznesowej?

A. System sterowania ruchem miejskim
B. System wentylacji
C. E-sklep
D. System nawigacji GPS
E-sklep, jako przykład zastosowania systemu informatycznego w działalności biznesowej, reprezentuje złożony ekosystem technologiczny, który umożliwia przedsiębiorstwom sprzedaż produktów i usług w Internecie. E-sklepy wykorzystują różnorodne technologie, takie jak systemy zarządzania treścią (CMS), bazy danych oraz systemy płatności, co pozwala na efektywne zarządzanie ofertą, realizację zamówień oraz obsługę klienta. Przykładem może być platforma Shopify, która oferuje funkcjonalności umożliwiające łatwe tworzenie i zarządzanie sklepem online. E-sklepy są zgodne z różnymi standardami, takimi jak PCI DSS, które zapewniają bezpieczeństwo transakcji płatniczych. Dzięki integracji z systemami analitycznymi, właściciele e-sklepów mogą śledzić zachowania użytkowników, co pozwala na optymalizację oferty oraz strategii marketingowej. Tego rodzaju rozwiązania informatyczne fundamentalnie zmieniają sposób, w jaki przedsiębiorstwa prowadzą działalność i komunikują się z klientami, czyniąc procesy bardziej wydajnymi i zautomatyzowanymi.

Pytanie 20

Czym charakteryzuje się architektura klient-serwer?

A. Serwer działa jako pasywny odbiornik danych od klientów
B. Dane są przechowywane i przetwarzane na serwerze, a klient wysyła żądania i odbiera odpowiedzi
C. Każdy klient działa niezależnie od innych
D. Komunikacja odbywa się bezpośrednio między urządzeniami klienckimi
Architektura klient-serwer to model, w którym dane są przechowywane i przetwarzane na serwerze, a klient wysyła żądania i odbiera odpowiedzi. Model ten umożliwia centralizację zasobów, co prowadzi do łatwiejszego zarządzania aplikacjami i zwiększonego bezpieczeństwa. Klient-serwer jest podstawą działania aplikacji webowych, usług sieciowych oraz baz danych. Dzięki temu architektura ta umożliwia wielu użytkownikom jednoczesny dostęp do tych samych danych, co czyni ją wydajnym rozwiązaniem dla rozproszonych systemów informatycznych. Serwery mogą obsługiwać różne rodzaje klientów, takie jak przeglądarki, aplikacje mobilne czy urządzenia IoT, co sprawia, że jest to wszechstronny model stosowany w wielu branżach.

Pytanie 21

Wskaż cechę charakterystyczną dla metody abstrakcyjnej

A. jest pusta w klasach potomnych
B. jest pusta w klasie bazowej
C. nie jest zaimplementowana w klasie bazowej
D. jest zawsze prywatna
Metoda abstrakcyjna to metoda zadeklarowana w klasie bazowej, ale nieposiadająca implementacji. Wymusza ona na klasach dziedziczących zaimplementowanie tej metody. Taki mechanizm pozwala na tworzenie szkieletów klas, gdzie szczegóły implementacyjne są delegowane do klas potomnych. Dzięki temu można stosować polimorfizm i ujednolicić interfejs dla różnych obiektów.

Pytanie 22

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

A. Na dyskach optycznych użytkownika
B. Na serwerze lokalnym użytkownika
C. Na zdalnych serwerach dostawcy usług
D. Na dysku twardym użytkownika
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 23

Klasie o nazwie samochod nadano cechy: marka, rocznik, parametry[]. Cechy te należy zdefiniować jako

A. metody
B. interfejsy
C. funckje
D. pola
Pola klasy to jej atrybuty, które przechowują dane dotyczące obiektów. Definiują one stan obiektu i mogą przyjmować różne wartości w zależności od instancji klasy. W przypadku klasy samochod cechy takie jak marka, rocznik czy parametry to właśnie pola, które odzwierciedlają właściwości poszczególnych obiektów.

Pytanie 24

Strategia budowania algorytmu poprzez podział na dwa lub więcej mniejszych podproblemów tak długo, aż fragmentu staną się proste do bezpośredniego rozwiązania jest metodą:

A. dziel i zwyciężaj
B. komiwojażera
C. najkrótszej ścieżki
D. heurystyczną
Metoda 'dziel i zwyciężaj' polega na podziale problemu na mniejsze podproblemy, aż do osiągnięcia najprostszych przypadków, które można łatwo rozwiązać. To podejście jest stosowane w algorytmach takich jak Merge Sort czy QuickSort.

Pytanie 25

Zakładając, że przedstawiona hierarchia klas reprezentuje figury geometryczne została prawidłowo zaimplementowana funkcjonalnie, a każda z możliwych figur zawiera metodę liczenia pola, to sposób deklaracji metody liczPole() wskazuje, że znajduje się ona w klasie

Ilustracja do pytania
A. figura
B. trapez
C. trójkąt
D. czworokąt
Metoda liczPole() znajduje się w klasie 'figura', ponieważ jest to klasa bazowa reprezentująca wspólne cechy dla wszystkich figur geometrycznych. Dziedziczenie tej metody przez klasy pochodne pozwala na zachowanie spójności kodu.

Pytanie 26

Wewnątrz klasy pracownik zdefiniowano przedstawione metody. Do której z nich można zgodnie z jej przeznaczeniem dopisać element diagnostyczny o treści: cout << "Obiekt został usunięty";?

Ilustracja do pytania
A. pracownik
B. ~pracownik
C. wypisz
D. operator==
Destruktor (~pracownik) to metoda wywoływana automatycznie podczas usuwania obiektu. To idealne miejsce na dodanie komunikatu diagnostycznego informującego o usunięciu obiektu. Destruktory są kluczowe w zarządzaniu pamięcią i zasobami, zapewniając zwolnienie zasobów po zakończeniu działania obiektu.

Pytanie 27

Pracując w grupie i dbając o jej poprawne funkcjonowanie, nie należy

A. rzetelnie i na czas wywiązywać się ze swoich zobowiązań
B. wzajemnie się motywować
C. dbać wyłącznie o własny interes
D. brać odpowiedzialność za podejmowane działania
Motywowanie się wzajemnie zwiększa produktywność i zaangażowanie członków zespołu. Rzetelne wywiązywanie się z obowiązków jest kluczowe dla sprawnego działania zespołu. Branie odpowiedzialności za swoje działania wzmacnia zaufanie i sprzyja harmonijnej współpracy.

Pytanie 28

W którym przypadku kolekcja typu lista będzie bardziej efektywna niż tablica?

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

Pytanie 29

Aplikacja mobilna wyświetla listę, której każdy z elementów może być dotknięty palcem, aby wyświetlić jego szczegóły. Zdarzenie odpowiadające tej akcji to

A. tapped.
B. toggled.
C. button clicked.
D. value changed.
Zdarzenie 'tapped' oznacza, że stuknęliśmy w coś na liście na naszym telefonie. To takie podstawowe zdarzenie, które przydaje się w aplikacjach mobilnych. Dzięki temu możemy wchodzić w interakcje z różnymi elementami, na przykład, gdy klikniemy na coś w liście, pojawią się dodatkowe szczegóły. Ta obsługa zdarzeń 'tap' jest naprawdę ważna w aplikacjach mobilnych, bo to w zasadzie główny sposób, w jaki poruszamy się po interfejsie.

Pytanie 30

Przedstawiony wykres obrazuje wyniki testów

Ilustracja do pytania
A. użyteczności
B. bezpieczeństwa
C. wydajnościowych
D. funkcjonalnych
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 31

Którą nazwę kontrolki należy zapisać w pierwszej linii kodu, w miejscu <??? aby została ona wyrenderowana w przedstawiony sposób:

Ilustracja do pytania
A. RatingBar
B. Spinner
C. SeekBar
D. Switch
Kontrolka 'Switch' to taki przycisk, który służy do zmiany stanu, na przykład włączania i wyłączania czegoś. W Androidzie mamy klasę Switch, która często jest używana do aktywacji lub dezaktywacji różnych funkcji w ustawieniach aplikacji. Moim zdaniem, to bardzo przydatne narzędzie, bo pozwala użytkownikom łatwo zarządzać opcjami.

Pytanie 32

Jak nazywa się proces, w którym obiekt dziedziczy cechy innej klasy w programowaniu obiektowym?

A. Dziedziczenie
B. Polimorfizm
C. Abstrakcja
D. Hermetyzacja
Polimorfizm to zdolność obiektów do przyjmowania różnych form w zależności od kontekstu. Pozwala to na wywoływanie metod tej samej nazwy, ale o różnych implementacjach, w zależności od typu obiektu. Hermetyzacja odnosi się do ukrywania wewnętrznych detali implementacji klasy i udostępniania tylko niezbędnych interfejsów, co zapewnia większe bezpieczeństwo kodu. Abstrakcja to proces wydzielania najistotniejszych cech obiektu i ukrywania mniej istotnych szczegółów, co pozwala na tworzenie bardziej ogólnych modeli programistycznych. Choć wszystkie te cechy są ważne w OOP, tylko dziedziczenie pozwala klasie na przejęcie cech innej klasy.

Pytanie 33

Który język programowania jest najczęściej używany do tworzenia aplikacji webowych po stronie serwera?

A. HTML
B. PHP
C. JavaScript
D. CSS
PHP to jeden z najczęściej używanych języków programowania do tworzenia aplikacji webowych po stronie serwera. Jest to język skryptowy, który umożliwia dynamiczne generowanie treści stron internetowych, zarządzanie sesjami użytkowników, obsługę formularzy oraz integrację z bazami danych. PHP napędza popularne systemy zarządzania treścią (CMS), takie jak WordPress, Joomla czy Drupal. Dzięki swojej prostocie, szerokiemu wsparciu społeczności oraz dużej liczbie gotowych bibliotek i frameworków (np. Laravel), PHP pozostaje jednym z czołowych języków backendowych. PHP pozwala również na szybkie wdrażanie aplikacji i jest kompatybilny z wieloma serwerami WWW, co czyni go uniwersalnym wyborem w budowie aplikacji webowych.

Pytanie 34

Która z poniższych kart graficznych zapewnia większą wydajność w grach komputerowych?

A. AMD Radeon RX 580 - 8GB GDDR5, 256-bit
B. AMD Radeon R7 240 - 2GB GDDR5, 64-bit
C. Intel UHD Graphics 630 - zintegrowana
D. NVIDIA GeForce GTX 1050 Ti - 4GB GDDR5, 128-bit
AMD Radeon RX 580 to karta graficzna, która zapewnia wyższą wydajność w grach komputerowych w porównaniu do innych wymienionych opcji. Wyposażona w 8GB pamięci GDDR5 oraz 256-bitową szynę danych, karta ta jest w stanie obsługiwać bardziej złożone tekstury oraz większe rozdzielczości. Jej architektura Polaris pozwala na lepsze zarządzanie energią oraz wydajność w grach, co czyni ją idealnym wyborem dla graczy. Dzięki obsłudze technologii DirectX 12 i Vulkan, RX 580 jest w stanie wykorzystać najnowsze osiągnięcia w dziedzinie grafiki, co przekłada się na wyższą jakość obrazu oraz płynność animacji. Przykłady gier, w których RX 580 sprawdza się najlepiej to 'Far Cry 5' czy 'Shadow of the Tomb Raider', gdzie karta umożliwia granie w wysokich ustawieniach graficznych z zachowaniem wysokiej liczby klatek na sekundę. Standardy, takie jak PCIe 3.0, zapewniają pełną kompatybilność z nowoczesnymi płytami głównymi, co czyni tę kartę doskonałym wyborem dla entuzjastów gier komputerowych.

Pytanie 35

Poszkodowanego należy ułożyć w pozycji bocznej bezpiecznej w przypadku:

A. omdlenia, gdy osoba oddycha
B. urazu pleców, gdy osoba jest przytomna
C. omdlenia i braku tętna
D. uszkodzenia kręgosłupa
Osobę po omdleniu, która oddycha, należy ułożyć w pozycji bocznej bezpiecznej. Taka pozycja zapobiega zadławieniu i zapewnia drożność dróg oddechowych, co jest kluczowe dla bezpieczeństwa poszkodowanego.

Pytanie 36

Kolor Pale Green w systemie RGB ma postać RGB(152, 251, 152). Kod szesnastkowy tego koloru wynosi:

A. A0 FE A0
B. A0 FB A0
C. 98 FB 98
D. 98 FE 98
Kolor 'Pale Green' w systemie RGB ma wartości (152, 251, 152). W zapisie szesnastkowym odpowiada to #98FB98. Jest to istotne przy projektowaniu interfejsów i stron internetowych, gdzie kolory są definiowane w formacie hex. Prawidłowe przeliczanie wartości RGB na hex jest kluczowe w zapewnieniu spójnej kolorystyki.

Pytanie 37

Wskaż rodzaj testów, które przeprowadza się podczas fazy tworzenia kodu źródłowego

A. testy jednostkowe
B. testy wdrożeniowe
C. testy kompatybilności
D. testy wydajnościowe
Testy wydajnościowe są wykonywane po zakończeniu kodowania, aby sprawdzić, jak system działa pod obciążeniem. Testy kompatybilności sprawdzają zgodność aplikacji z różnymi środowiskami i urządzeniami. Testy wdrożeniowe są realizowane na końcowym etapie projektu i mają na celu sprawdzenie, czy aplikacja działa poprawnie w rzeczywistym środowisku.

Pytanie 38

Środowiskiem dedykowanym do tworzenia aplikacji mobilnych dla urządzeń Apple i wykorzystującym do tego celu różne języki programowania w tym Java i Objective C jest

A. React Native
B. XCode
C. Android Studio
D. NetBeans
Android Studio – Służy do tworzenia aplikacji na system Android. NetBeans – Jest używany głównie do tworzenia aplikacji w języku Java, ale nie dla urządzeń Apple. React Native – To framework umożliwiający tworzenie aplikacji na wiele platform, ale nie jest natywnym środowiskiem dla Apple.

Pytanie 39

Frameworkiem umożliwiającym programowanie aplikacji desktopowych jest

A. Xamarin
B. Angular
C. Symfony
D. WPF
Symfony to framework PHP do tworzenia aplikacji webowych, a nie desktopowych. Xamarin służy do tworzenia aplikacji mobilnych na platformy iOS i Android. Angular to framework JavaScript do tworzenia aplikacji front-endowych, głównie webowych, a nie desktopowych.

Pytanie 40

Który z wymienionych algorytmów może być zaimplementowany zarówno iteracyjnie, jak i rekurencyjnie?

A. Algorytm wyszukiwania binarnego
B. Algorytm generowania liczb losowych
C. Algorytm mapowania kluczy w tablicach asocjacyjnych
D. Algorytm sortowania bąbelkowego
Sortowanie bąbelkowe to algorytm iteracyjny i nie ma naturalnej wersji rekurencyjnej, ponieważ jego działanie opiera się na powtarzających się pętlach. Algorytm mapowania kluczy w tablicach asocjacyjnych nie korzysta z rekurencji – jest to proces przypisywania wartości do odpowiednich kluczy, który realizowany jest w sposób iteracyjny. Algorytm generowania liczb losowych nie wymaga rekurencji ani iteracji – jest to operacja oparta na wywołaniu odpowiednich funkcji w zależności od użytej biblioteki i języka programowania.