Wyniki egzaminu

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

Egzamin zdany!

Wynik: 26/40 punktów (65,0%)

Wymagane minimum: 20 punktów (50%)

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

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

A. Interpretacja umożliwia tworzenie bibliotek dynamicznych, a kompilacja bibliotek statycznych
B. Kompilacja przekształca cały kod źródłowy przed jego wykonaniem, podczas gdy interpretacja tłumaczy kod na bieżąco
C. Kompilacja wymaga użycia debuggera, natomiast interpretacja tego nie potrzebuje
D. Kompilacja jest stosowana jedynie w programowaniu obiektowym
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 2

Modyfikator dostępu znajdujący się przed definicją metody Dodaj() w klasie Kalkulator sprawia, że:

Ilustracja do pytania
A. nie jest ona dostępna z poziomu klas, które są zaprzyjaźnione z klasą Kalkulator
B. jest ona możliwa do wykorzystania w programie głównym i można ją wywołać na instancji klasy Kalkulator
C. jest ona dostępna zarówno w samej klasie, jak i w klasach dziedziczących po klasie Kalkulator
D. nie jest ona osiągalna w klasach, które dziedziczą po klasie Kalkulator
Modyfikator dostępu w C# to taki fajny element, który pozwala, żeby metoda Dodaj() była dostępna nie tylko w klasie Kalkulator, ale też w klasach, które dziedziczą po niej. To naprawdę ważne w programowaniu obiektowym, bo dzięki temu możesz rozbudowywać funkcje klasy bazowej, nie grzebiąc w jej kodzie. To w sumie daje większą elastyczność i ułatwia ponowne wykorzystywanie fragmentów kodu w różnych częściach aplikacji.

Pytanie 3

Jakie metody umożliwiają przesyłanie danych z serwera do aplikacji front-end?

A. formatu JSON
B. biblioteki jQuery
C. protokołem SSH
D. metody POST
Jest taka sprawa z jQuery – chociaż to super narzędzie do manipulacji DOM i pracy z asynchronicznymi żądaniami HTTP, to jednak nie jest formatem danych. Tak, jQuery świetnie działa z AJAX-em, ale nie definiuje, jak dane powinny być przesyłane. Jak już używasz jQuery do przesyłania danych, to potrzebujesz formatu, na przykład JSON. Dlatego ta odpowiedź jest niepoprawna. Metoda POST umożliwia przesyłanie danych do serwera w protokole HTTP, ale sama w sobie nie mówi, w jakim formacie te dane będą przesyłane. Można używać różnych formatów, w tym JSON, ale sama metoda POST to za mało. A SSH, czyli Secure Shell, to protokół do bezpiecznego logowania i zdalnego zarządzania systemami, a nie do przesyłania danych między aplikacjami webowymi a serwerem. Dlatego tu też mamy błąd. Wszystkie te technologie są ważne, ale nie mówią o przesyłaniu danych w kontekście front-endu tak, jak robi to JSON.

Pytanie 4

Wskaż programowanie, w którym możliwe jest stworzenie aplikacji mobilnej dla systemu Android?

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

Pytanie 5

Jakie narzędzie można wykorzystać do stworzenia mobilnej aplikacji cross-platform w języku C#?

A. platformę Xamarin
B. środowisko XCode
C. bibliotekę React Native
D. środowisko Android Studio
React Native jest oparty na JavaScript, a Xcode to narzędzie do natywnego programowania na iOS. Android Studio służy do tworzenia aplikacji na Androida, ale nie jest narzędziem cross-platformowym dla C#.

Pytanie 6

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

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

Pytanie 7

Którego nagłówka używamy w C++ do obsługi plików?

A.
B.
C.
D.
Nagłówek '' w języku C++ jest używany do pracy z plikami, umożliwiając odczyt i zapis danych na dysku. Biblioteka fstream udostępnia klasy 'ifstream', 'ofstream' i 'fstream', które pozwalają na operacje wejścia i wyjścia plików. 'ifstream' służy do odczytu plików, 'ofstream' do zapisu, a 'fstream' umożliwia zarówno odczyt, jak i zapis. Praca z plikami jest kluczowa w wielu aplikacjach, od prostych narzędzi do przetwarzania danych po złożone systemy zarządzania plikami i bazami danych. Dzięki 'fstream' programiści mogą efektywnie zarządzać danymi na różnych poziomach aplikacji.

Pytanie 8

Który z faz cyklu życia projektu wiąże się z identyfikacją wymagań użytkownika?

A. Etap planowania
B. Analiza
C. Wdrażanie
D. Przeprowadzanie testów
Planowanie koncentruje się na ustaleniu harmonogramu, budżetu i alokacji zasobów, ale nie obejmuje dogłębnej analizy wymagań użytkownika. Implementacja to faza, w której kod jest tworzony na podstawie wcześniejszych ustaleń, ale nie jest to etap zbierania wymagań. Testowanie odbywa się po implementacji i służy wykrywaniu błędów, a nie definiowaniu oczekiwań użytkownika wobec produktu.

Pytanie 9

Z jakiej kolekcji powinno się korzystać, aby przechowywać informacje związane z elementem interfejsu użytkownika w taki sposób, aby ten element był informowany przez kolekcję o dodaniu, usunięciu lub zmianie jej zawartości?

A. KeyedCollection
B. ObservableCollection
C. ReadOnlyCollection
D. Collection
ObservableCollection to taka fajna kolekcja, która potrafi na bieżąco informować interfejs użytkownika, kiedy coś się zmienia, na przykład jak dodasz, usuniesz albo zmienisz element. Dzięki temu wszystko w aplikacji, jak lista czy inne komponenty, od razu się aktualizuje, co naprawdę poprawia synchronizację i wydajność, zwłaszcza w projektach MVVM.

Pytanie 10

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

Ilustracja do pytania
A. Kod 4
B. Kod 2
C. Kod 3
D. Kod 1
Kod 3 jest poprawną implementacją przedstawionego algorytmu. Jego struktura i sposób działania odpowiadają założeniom algorytmu, co prowadzi do uzyskania prawidłowego wyniku.

Pytanie 11

Zalecenia standardu WCAG 2.0 dotyczące percepcji koncentrują się na

A. zrozumieniu i wiarygodności prezentowanych treści na stronie
B. umożliwieniu interakcji między komponentami użytkownika za pomocą klawiatury
C. zapewnieniu odpowiedniej ilości czasu na przeczytanie i zrozumienie treści
D. prezentacji elementów interfejsu użytkownika
Pierwsza z niepoprawnych odpowiedzi odnosi się do zrozumienia i rzetelności w dostarczonych treściach na stronie, co jest ważnym aspektem, ale nie dotyczy bezpośrednio percepcji komponentów interfejsu użytkownika. Zrozumienie treści jest związane z czytelnością tekstu oraz jego strukturalną formą, co nie jest bezpośrednio związane z interfejsem. Kolejna niepoprawna odpowiedź, dotycząca zapewnienia wystarczającej ilości czasu na przeczytanie i przetworzenie treści, odnosi się bardziej do zasad dostępności dotyczących czasu, które są istotne dla użytkowników z różnymi zdolnościami przetwarzania informacji, ale nie dotyczą samej percepcji komponentów interfejsu. Ostatnia odpowiedź, dotycząca zapewnienia interakcji pomiędzy komponentami użytkownika przy użyciu klawiatury, również nie odnosi się bezpośrednio do percepcji, a bardziej do interakcji użytkownika z systemem. Choć interakcja jest istotna, kluczowe jest zrozumienie, że percepcja skupia się na sposobie, w jaki użytkownicy dostrzegają i interpretują te komponenty, a nie na ich interakcji. Dlatego też, te odpowiedzi, choć dotyczą ważnych kwestii dostępności, nie są zgodne z istotą pytania.

Pytanie 12

Jaki jest podstawowy okres ochrony autorskich praw majątkowych w krajach Unii Europejskiej?

A. 75 lat od daty powstania utworu
B. 70 lat od zgonu autora
C. Bezterminowo
D. 50 lat od chwili pierwszej publikacji utworu
Okres 50 lat od pierwszej publikacji utworu odnosi się zazwyczaj do praw pokrewnych, takich jak ochrona nagrań dźwiękowych lub filmowych. Ochrona przez 75 lat od powstania utworu nie jest standardem w UE, choć niektóre kraje mogą mieć takie przepisy w odniesieniu do specyficznych typów dzieł. Bezterminowa ochrona dotyczy wyłącznie autorskich praw osobistych, a nie majątkowych, które zawsze wygasają po określonym czasie.

Pytanie 13

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

Który z podanych algorytmów operujących na jednowymiarowej tablicy posiada złożoność obliczeniową O(n2)?

A. Sortowanie bąbelkowe
B. Wyszukiwanie binarne
C. Sortowanie szybkie
D. Wypisanie elementów
Sortowanie szybkie, znane jako quicksort, to jeden z najbardziej efektywnych algorytmów sortujących, który w przeciętnych przypadkach ma złożoność O(n log n), a w najgorszym przypadku O(n^2) tylko w przypadku, gdy tablica jest już posortowana w sposób odwrotny. Wyszukiwanie binarne jest algorytmem, który wymaga posortowanej tablicy i działa w czasie O(log n), co czyni go znacznie bardziej wydajnym niż sortowanie bąbelkowe. Wypisanie elementów tablicy to operacja o złożoności O(n), gdzie n oznacza liczbę elementów w tablicy. W tej operacji algorytm przegląda każdy element tablicy tylko raz, co czyni ją bardzo efektywną w porównaniu do algorytmów sortujących. Wszelkie złożoności O(log n) oraz O(n) są bardziej optymalne w kontekście operacji na tablicach jednowymiarowych. W związku z tym, jedynie sortowanie bąbelkowe w tej grupie algorytmów charakteryzuje się złożonością O(n^2), co czyni je jedynym właściwym wyborem w kontekście zadanego pytania.

Pytanie 15

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

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

Pytanie 16

Jakie zasady stosuje programowanie obiektowe?

A. Rozwiązywanie problemów poprzez modelowanie ich przy pomocy klas i obiektów
B. Zastosowanie wyłącznie algorytmów heurystycznych
C. Tworzenie aplikacji z wykorzystaniem relacyjnych baz danych
D. Podział kodu na funkcje i procedury
Programowanie obiektowe polega na rozwiązywaniu problemów poprzez modelowanie ich za pomocą klas i obiektów. Klasy definiują strukturę i zachowanie obiektów, które są instancjami tych klas. Obiekty przechowują stan (dane) w polach i realizują funkcjonalność poprzez metody. Programowanie obiektowe pozwala na odwzorowanie rzeczywistych systemów, dziedziczenie cech, polimorfizm oraz hermetyzację danych, co prowadzi do bardziej modułowego i skalowalnego kodu. Przykłady języków obiektowych to C++, Java i Python.

Pytanie 17

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

A. double
B. int
C. float
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 18

Jakie są typowe frameworki/biblioteki używane w aplikacjach webowych?

A. jquery, Joomla!, Wordpress, android Studio, Xamarin
B. ASP.NET Core, Django, Angular, React.js, Node.js
C. Visual Studio, Eclipse, angular, React.js, Node.js
D. ASP.NET Core, jQuery, Joomla!, Wordpress, Angular
Frameworki i biblioteki typowe dla aplikacji webowych to ASP.NET Core, Django, Angular, React.js i Node.js. Umożliwiają one tworzenie dynamicznych aplikacji front-end i back-end, zapewniając szeroką funkcjonalność, skalowalność oraz obsługę nowoczesnych technologii webowych.

Pytanie 19

Jakie jest rozwiązanie dla dodawania binarnego liczb 1011 oraz 110?

A. 11101
B. 11001
C. 10001
D. 10101
Dodawanie binarne to podstawowa operacja w systemie liczbowym, który używa tylko dwóch cyfr: 0 i 1. W przypadku dodawania liczb binarnych, proces ten przypomina dodawanie w systemie dziesiętnym, jednak z pewnymi różnicami ze względu na ograniczony zestaw cyfr. Gdy dodajemy liczby 1011 i 110, należy ustawić je w kolumnach, podobnie jak w dodawaniu dziesiętnym. Zaczynamy od najmniej znaczącej cyfry. W pierwszej kolumnie mamy 1 + 0, co daje 1. W drugiej kolumnie mamy 1 + 1, co daje 0, ale musimy przenieść 1 do następnej kolumny (przeniesienie jest kluczowym elementem w dodawaniu binarnym). W trzeciej kolumnie dodajemy 1 (przeniesienie) + 0 + 1, co daje 0 i przenosimy 1 do następnej kolumny. W czwartej kolumnie dodajemy przeniesienie 1 + 1 (z liczby 1011), co daje 10 w systemie binarnym, co oznacza 0 i przeniesienie 1. Końcowym wynikiem dodawania daje 10001 w systemie binarnym. To podejście jest zgodne z zasadami arytmetyki binarnej, które są fundamentem działania komputerów i systemów cyfrowych, w których operacje na danych są realizowane w systemie binarnym.

Pytanie 20

Programista aplikacji mobilnych pragnie zmienić swoją ścieżkę kariery na Full-Stack Developera. Wskaż kurs, który powinien wybrać, żeby to osiągnąć?

A. Ultimate C# Serier from Beginner to Advanced
B. Complete JavaScript React, SQL, Node.js Cource
C. Raster and Vector Graphics with Adobe
D. Mastering Cross-platform Developping
Kurs dotyczący C# nie obejmuje narzędzi i technologii webowych używanych w full-stack development. Kurs o grafice koncentruje się na narzędziach graficznych, a nie programowaniu. Kurs cross-platform dotyczy aplikacji mobilnych, a nie technologii webowych wymaganych do zostania Full-Stack Developerem.

Pytanie 21

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

A. Układ klas w strukturę, w której klasy pochodne dziedziczą cechy od klas bazowych
B. Zespół metod i pól posiadających ten sam modyfikator dostępu
C. Zbiór klas, które nie mają wspólnych powiązań
D. Układ klas, który ogranicza występowanie dziedziczenia wielokrotnego
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 22

Termin ryzyko zawodowe odnosi się do

A. efektów zagrożeń wypadkowych, jakie występują w miejscu zatrudnienia
B. zagrożenia wypadkowego, które może wystąpić w miejscu pracy
C. prawdopodobieństwa, że zdarzenia niepożądane związane z pracą spowodują straty, w szczególności negatywne skutki zdrowotne dla pracowników
D. ciężkości skutków niepożądanych zdarzeń związanych z pracą
Ryzyko zawodowe to prawdopodobieństwo wystąpienia niepożądanych zdarzeń związanych z pracą, mogących prowadzić do strat zdrowotnych lub materialnych. Ocena ryzyka to kluczowy element zarządzania bezpieczeństwem pracy.

Pytanie 23

Co to jest dokumentacja instruktażowa programu?

A. Kolekcją testów jednostkowych oraz ich wyników
B. Zbiorem szczegółów technicznych dotyczących kodu źródłowego
C. Instrukcją opisującą, jak używać funkcji programu
D. Dokumentem przedstawiającym plany rozwoju oprogramowania
Dokument zawierający szczegóły techniczne kodu źródłowego to część dokumentacji dla programistów, a nie instrukcja pomocy skierowana do użytkownika końcowego. Zbiór testów jednostkowych i wyników to część procesu testowania aplikacji, mająca na celu weryfikację poprawności działania kodu, ale nie wyjaśnia użytkownikom końcowym, jak korzystać z programu. Dokumenty związane z planami rozwoju aplikacji są istotne z punktu widzenia zarządzania projektem, ale nie zawierają instrukcji dotyczących bieżącej obsługi i użytkowania oprogramowania.

Pytanie 24

Jakie z wymienionych narzędzi służy do emulacji mobilnych urządzeń podczas developowania aplikacji?

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

Pytanie 25

Który z wymienionych elementów jest fundamentalny w architekturze klient-serwer?

A. Wyłącznie komunikacja synchroniczna
B. Zdalne wykonywanie aplikacji na urządzeniu klienta
C. Brak podziału na funkcje klienta i serwera
D. Scentralizowane przechowywanie danych
Zdalne wykonywanie aplikacji na urządzeniu klienta oznacza model przetwarzania lokalnego, co nie jest główną cechą architektury klient-serwer. Brak podziału na funkcje klienta i serwera narusza podstawową ideę tego modelu, który zakłada rozdzielenie ról pomiędzy te dwie jednostki. Wyłącznie komunikacja synchroniczna ogranicza elastyczność aplikacji i może prowadzić do opóźnień w przetwarzaniu danych.

Pytanie 26

Klasa Mieszkaniec zawiera atrybuty: imie, nazwisko, ulica, nrDomu, rokUrodzenia. W tej klasie umieszczono opisane poniżej konstruktory (zapisano jedynie typy argumentów). Do tworzenia obiektu za pomocą konstruktora kopiującego wykorzystany będzie konstruktor określony w punkcie

Ilustracja do pytania
A. 4
B. 2
C. 3
D. 1
Zwykłe konstruktory bez parametrów to tak naprawdę nie to samo, co konstruktor kopiujący. One tylko inicjują nową instancję, a kopii to one nie robią. Konstruktory, które dostają typy proste, służą tylko do ustawiania początkowych wartości pól, a więc też nie kopiują nic. Metody, które inicjalizują, są do przypisywania wartości po stworzeniu obiektu, ale to też nie to samo co konstruktor kopiujący.

Pytanie 27

Programem służącym do monitorowania błędów oraz organizacji projektów jest:

A. Jasmine
B. Bugzilla
C. Git
D. Jira
Jira to świetne narzędzie, które pomaga w śledzeniu błędów i zarządzaniu projektami. Dzięki niemu można łatwo prowadzić dokumentację i organizować zadania w zespole. Dlatego wiele zespołów IT wybiera właśnie to rozwiązanie, bo ułatwia pracę i poprawia komunikację.

Pytanie 28

W jakiej topologii sieciowe wszystkie urządzenia są bezpośrednio powiązane z każdym innym?

A. Topologia siatki
B. Topologia magistrali
C. Topologia gwiazdy
D. Topologia pierścienia
Topologia siatki to jedna z najbardziej wydajnych i wszechstronnych struktur sieciowych, w której każde urządzenie (węzeł) jest połączone bezpośrednio z każdym innym węzłem. Tego typu topologia zapewnia wysoką dostępność i odporność na awarie, ponieważ awaria jednego połączenia nie wpływa na komunikację pozostałych węzłów. W praktyce ma to zastosowanie w dużych, zaawansowanych sieciach komputerowych, takich jak sieci miejskie (MAN) czy sieci szerokopasmowe. Istnieją dwie główne formy topologii siatki: siatka pełna, gdzie każde urządzenie ma bezpośrednie połączenia z wszystkimi innymi, oraz siatka częściowa, gdzie nie wszystkie węzły są ze sobą bezpośrednio połączone, ale komunikacja jest możliwa przez inne węzły. Topologia siatki, z uwagi na swoje zalety, jest często wykorzystywana w standardach sieciowych, takich jak Ethernet, oraz w systemach rozproszonych, gdzie kluczowe są niezawodność i efektywność przesyłania danych. Dodatkowo, w kontekście Internetu rzeczy (IoT), topologia siatki umożliwia efektywne zarządzanie dużą liczbą urządzeń, co jest kluczowe w inteligentnych miastach i automatyzacji domowej.

Pytanie 29

Jakie z wymienionych narzędzi służy do testowania aplikacji?

A. WordPress
B. Git
C. Selenium
D. Photoshop
Git to system kontroli wersji, który umożliwia śledzenie zmian w kodzie źródłowym i współpracę w zespołach deweloperskich, ale nie służy do automatycznego testowania aplikacji webowych. Photoshop to narzędzie graficzne do edycji zdjęć i tworzenia grafik, nie ma zastosowania w testowaniu oprogramowania. WordPress to system zarządzania treścią (CMS), który pozwala na tworzenie i zarządzanie stronami internetowymi, ale nie pełni funkcji narzędzia do testowania aplikacji webowych.

Pytanie 30

Która z wymienionych bibliotek pozwala na obsługę zdarzeń związanych z myszą w aplikacjach desktopowych?

A. Qt
B. TensorFlow
C. Django
D. Numpy
Numpy to biblioteka do obliczeń numerycznych w języku Python i nie posiada narzędzi do obsługi zdarzeń graficznych w aplikacjach desktopowych. Django to framework do budowy aplikacji webowych w Pythonie, koncentrujący się na backendzie, a nie na tworzeniu GUI czy interakcji z myszą. TensorFlow to biblioteka do uczenia maszynowego i przetwarzania danych, nieprzystosowana do tworzenia aplikacji desktopowych obsługujących zdarzenia myszki i klawiatury.

Pytanie 31

Która z właściwości przycisków typu Radio-button opisanych w przedstawionym fragmencie dokumentacji jest poprawna?

Ilustracja do pytania
A. Wartość właściwości value grupy radio przechowuje tekst etykiety dla każdego radio-button
B. Przyciski radio-button są organizowane w elemencie o nazwie
C. Etykieta (label) może być umieszczona wyłącznie po przycisku radio-button
D. Właściwość labelPosition może przyjmować jedną z dwóch opcji
Właściwość 'labelPosition' przyjmuje jedną z dwóch wartości, co pozwala na ustawienie pozycji etykiety po lewej lub prawej stronie przycisku radio-button. Jest to kluczowa funkcjonalność, która wpływa na układ i dostępność interfejsu użytkownika.

Pytanie 32

Na przedstawionym obrazie widać fragment emulacji systemu iOS z prostą aplikacją. Górna część ekranu nachodzi na pasek stanu baterii. Który z poniższych zapisów powinien zostać użyty w miejscu znaków zapytania, aby ustawić jedynie marginesy górne tylko dla systemu iOS?

Ilustracja do pytania
A. x:TypeArguments="Thickness"
(0, 20, 0, 0)
B. x:TypeArguments="Thickness"
iOS= "0, 0, 0, 0"
Android= "0, 20, 0, 0"
WinPhone= "0, 0, 0, 0"
C. x:TypeArguments="Thickness"
iOS= 20
D. x:TypeArguments="Thickness"
iOS= "0, 20, 0, 0"
Android= "0, 0, 0, 0"
WinPhone= "0, 0, 0, 0"
W pierwszej opcji zastosowano jednolity margines 20 jednostek dla wszystkich platform, co jest niewłaściwe, ponieważ ignoruje specyficzne potrzeby i ograniczenia każdej platformy. Na przykład, na iOS margines ten kompensuje status bar, ale na innych platformach może nie być wymagany, co może prowadzić do nieestetycznego wyglądu aplikacji. Druga odpowiedź wprowadza margines tylko dla iOS, ale w niewłaściwym formacie, ponieważ same liczby nie są wystarczające bez poprawnego kontekstu struktury XAML. Trzecia opcja jest błędna, ponieważ przypisuje nieprawidłowe wartości platformie Android, co skutkuje odwrotnym efektem niż zamierzony. Traktowanie wszystkich platform identycznie pod względem marginesów pomija specyfikę każdej z nich, co jest częstym błędem początkowych deweloperów. Niezrozumienie różnic między platformami może prowadzić do aplikacji, które nie są optymalnie dostosowane do każdej z nich. Ważne jest, aby projektanci aplikacji wieloplatformowych zrozumieli, jak różne urządzenia i systemy operacyjne wpływają na sposób, w jaki aplikacja powinna wyglądać i działać, aby zapewnić użytkownikom spójne i wysokiej jakości doświadczenia niezależnie od platformy, na której aplikacja jest uruchamiana. Dostosowywanie UI do specyfiki każdej platformy jest kluczem do sukcesu w tworzeniu profesjonalnych aplikacji mobilnych.

Pytanie 33

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

Ilustracja do pytania
A. zm2
B. zm4
C. zm3
D. zm1
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 34

Która z wymienionych zasad jest istotna dla bezpiecznego użytkowania portali społecznościowych?

A. Zgłaszanie treści, które naruszają regulamin
B. Regularne kontrolowanie ustawień prywatności
C. Unikanie stosowania silnych haseł do konta
D. Udostępnianie jak największej ilości informacji osobowych
Regularne sprawdzanie ustawień prywatności jest kluczowym aspektem bezpiecznego korzystania z portali społecznościowych, ponieważ to właśnie te ustawienia decydują o tym, jakie informacje udostępniamy innym użytkownikom. Użytkownicy powinni być świadomi, że domyślne ustawienia prywatności często są skonfigurowane w sposób, który umożliwia szeroką dostępność ich danych osobowych. Przykładowo, wiele platform społecznościowych domyślnie ustawia profile jako publiczne, co oznacza, że każdy może zobaczyć ich zawartość. Zmieniając te ustawienia, użytkownicy mogą ograniczyć widoczność swoich postów, zdjęć, a także informacji osobistych tylko do wybranej grupy osób, co znacząco zwiększa ich bezpieczeństwo. Warto także regularnie aktualizować te ustawienia, ponieważ platformy często wprowadzają nowe funkcje, które mogą zmieniać domyślne zasady dotyczące prywatności. Zgodnie z wytycznymi RODO oraz innymi standardami ochrony danych osobowych, użytkownicy mają prawo do kontrolowania swoich informacji, co czyni regularne sprawdzanie ustawień prywatności nie tylko zaleceniem, ale również obowiązkiem każdego świadomego użytkownika internetu.

Pytanie 35

Co to jest automatyzacja testowania procesów?

A. Sprawdzaniem poprawności działania aplikacji na urządzeniach przenośnych
B. Integracją testów w środowisku deweloperskim
C. Kompilowaniem kodu w celu zwiększenia efektywności
D. Używaniem narzędzi oraz skryptów do wykonywania testów w sposób automatyczny bez udziału człowieka
Automatyzacja procesu testowania to zastosowanie narzędzi, skryptów i technologii do przeprowadzania testów oprogramowania w sposób zautomatyzowany, bez konieczności ciągłej ingerencji człowieka. Automatyzacja pozwala na szybkie i wielokrotne uruchamianie testów regresyjnych, co znacząco zwiększa efektywność testowania, redukuje czas potrzebny na wykrycie błędów i umożliwia jednoczesne testowanie wielu funkcji. Narzędzia takie jak Selenium, JUnit czy TestNG pozwalają na tworzenie skryptów testowych, które automatycznie weryfikują poprawność działania aplikacji na różnych urządzeniach i w różnych środowiskach. Automatyzacja testów to nie tylko oszczędność czasu, ale także wyższa dokładność i powtarzalność testów, co minimalizuje ryzyko przeoczenia krytycznych błędów.

Pytanie 36

Który z wymienionych składników charakteryzuje się typowym wystąpieniem w diagramie Gantta?

A. Wykaz użytkowników w systemie
B. Wykaz błędów w projekcie
C. Oś czasu oraz przedziały czasowe dla zadań
D. Model relacji pomiędzy tabelami w bazie danych
Diagram Gantta zawiera oś czasu i zakresy czasowe dla zadań, co pozwala na wizualizację całego harmonogramu projektu. Każde zadanie jest reprezentowane jako pasek na wykresie, którego długość odzwierciedla czas trwania zadania. Diagram ten jest szczególnie pomocny w zarządzaniu złożonymi projektami, gdzie istnieje wiele współzależnych zadań. Dzięki diagramowi Gantta można łatwo określić, które zadania są krytyczne dla terminowego zakończenia projektu oraz jakie są dostępne bufory czasowe. Jest to jedno z najczęściej używanych narzędzi w zarządzaniu projektami.

Pytanie 37

Jakie jest oznaczenie komentarza wieloliniowego w języku Java?

A. // ... //
B. /* ... */
C. """ ... """
D.
Komentarze wieloliniowe w języku Java są oznaczane za pomocą /* ... */. Pozwalają na komentowanie większych fragmentów kodu, co jest przydatne podczas tymczasowego wyłączania kodu lub dodawania obszernych opisów do funkcji i klas.

Pytanie 38

Kompilator może wygenerować błąd "incompatible types", gdy

A. funkcja zwraca typ void, a w momencie wywołania nie jest przypisana do żadnej zmiennej
B. funkcja oczekuje całkowitej jako argumentu, a została wywołana z napisem jako parametrem
C. do zmiennej typu int przypisano wartość 243
D. w trakcie deklaracji zmiennej wystąpił błąd, zastosowano nieistniejący typ
Błąd 'incompatible types' to dość powszechny problem, kiedy przypisujesz coś do zmiennej, ale typ się nie zgadza. Na przykład, jeśli próbujesz wstawić tekst do miejsca, gdzie oczekiwana jest liczba całkowita, to właśnie wtedy pojawia się ten błąd. W językach jak Java, gdzie typy są mocno zdefiniowane, musisz uważać na takie rzeczy.

Pytanie 39

Wskaż uproszczoną wersję kodu XAML dla elementów w pokazanym oknie dialogowym?

Ilustracja do pytania
A. Kod 4
B. Kod 2
C. Kod 3
D. Kod 1
Kod 2 jest poprawnym uproszczonym kodem XAML dla przedstawionych kontrolek. XAML (Extensible Application Markup Language) jest używany do definiowania interfejsów użytkownika w aplikacjach WPF (Windows Presentation Foundation) i UWP (Universal Windows Platform). Jego czytelność i deklaratywny charakter pozwalają na tworzenie i zarządzanie kontrolkami w sposób przejrzysty i elastyczny, co przyspiesza proces projektowania interfejsów.

Pytanie 40

W jakim celu wykorzystuje się diagram Gantta?

A. do przedstawiania funkcjonalności systemu
B. do wizualizacji powiązań między elementami systemów
C. do planowania i zarządzania projektem
D. do dokładnej analizy czasowo-kosztowej projektu
Diagram Gantta służy do planowania i zarządzania projektami. Umożliwia wizualizację harmonogramu i postępów prac, co jest kluczowe w efektywnym zarządzaniu czasem i zasobami.