Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 29 kwietnia 2026 20:04
  • Data zakończenia: 29 kwietnia 2026 20:17

Egzamin zdany!

Wynik: 21/40 punktów (52,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Do stworzenia stron internetowych w sposób graficzny należy zastosować

A. aplikację typu WYSIWYG
B. program do przeglądania stron
C. oprogramowanie MS Office Picture Manager
D. narzędzie do edycji CSS
Edytory CSS, mimo że są istotnym narzędziem w tworzeniu stron internetowych, nie są programami graficznymi. Edytory te, takie jak Sublime Text czy Visual Studio Code, pozwalają na pisanie i edytowanie arkuszy stylów CSS, które definiują wygląd strony, ale nie oferują wizualnej reprezentacji tego, co użytkownik finalnie zobaczy w przeglądarce. Oznacza to, że chociaż edytory CSS są niezbędne do stylizacji stron, nie umożliwiają one tworzenia stron w sposób graficzny. Przeglądarki internetowe, z kolei, są narzędziami do przeglądania już stworzonych stron, a nie do ich tworzenia. Choć pozwalają na podgląd efektów pracy, nie oferują funkcji edycyjnych ani twórczych. Użytkownik nie jest w stanie stworzyć strony bezpośrednio w przeglądarce. Program MS Office Picture Manager jest zupełnie nieodpowiedni do graficznego tworzenia stron internetowych, ponieważ jest to narzędzie do zarządzania obrazami, a nie do tworzenia treści webowej. Umożliwia jedynie edytowanie zdjęć i grafik, co jest zupełnie innym procesem niż projektowanie stron internetowych. W kontekście tworzenia witryn, narzędzia te nie spełniają wymaganych funkcji, takich jak edytowanie kodu czy wizualne układanie elementów na stronie, co czyni je nieodpowiednimi do tego zadania.

Pytanie 2

Na stronie WWW umieszczono obrazek, a następnie akapit. Aby obrazek był wyświetlany przez przeglądarkę w tej samej linii co akapit, po lewej stronie tekstu akapitu, w stylu CSS dla obrazka należy ustawić formatowanie

A. float: left;
B. style: left;
C. align: left;
D. alt: left;
Odpowiedź "float: left;" jest poprawna, ponieważ właściwość CSS "float" służy do określenia, w jaki sposób elementy są rozmieszczane na stronie. Ustawienie "float: left;" dla rysunku sprawia, że zostaje on umieszczony po lewej stronie swojego kontenera, a pozostałe elementy, takie jak akapit, mogą układać się obok niego. Jest to powszechnie stosowana technika w układach stron internetowych, pozwalająca na osiągnięcie płynnych i responsywnych rozkładów treści. Na przykład, w przypadku gdy mamy obrazek i akapit, stosując float, obrazek zostanie wypchnięty w lewo, a tekst akapitu automatycznie dostosuje się, zajmując dostępną przestrzeń obok rysunku. Warto również dodać, że po zastosowaniu float, należy zadbać o usunięcie efektu 'zatrzymywania się' rysunków, co można osiągnąć poprzez stosowanie właściwości "clear" w odpowiednich miejscach, aby nie zakłócać układu sąsiednich elementów. Tego typu techniki są fundamentem projektowania stron, zgodnie z zasadami dobrych praktyk UX/UI oraz standardami W3C. W przypadku bardziej złożonych układów warto również rozważyć zastosowanie Flexbox lub Grid Layout, które oferują większą elastyczność i kontrolę nad położeniem elementów w nowoczesnych projektach.

Pytanie 3

W instrukcji warunkowej w JavaScript powinno się zweryfikować sytuację, w której zmienne a oraz b są większe od zera, przy czym zmienna b jest mniejsza od 100. Taki warunek należy zapisać w następujący sposób:

A. if ( a > 0 || (b > 0 && b < 100))
B. if ( a > 0 && b > 0 && b < 100)
C. if ( a > 0 && b > 0 || b > 100)
D. if ( a > 0 || b > 0 || b > 100)
W analizowanych odpowiedziach pojawia się kilka koncepcji, które nie spełniają wymagań dotyczących sprawdzenia warunków dla zmiennych a i b. Odpowiedź if ( a > 0 || b > 0 || b > 100) jest błędna, ponieważ użycie operatora OR (||) wskazuje, że wystarczy, aby przynajmniej jeden z warunków był spełniony. Taki zapis wpłynąłby na logikę programu, prowadząc do sytuacji, w której program uznałby, że warunki są spełnione, nawet jeśli b jest większe lub równe 100, co całkowicie ignoruje kluczowy wymóg dotyczący tej zmiennej. W drugiej analizowanej opcji, if ( a > 0 && b > 0 || b > 100), znowu mamy do czynienia z niewłaściwym połączeniem operatorów, które może prowadzić do błędnych wyników. Tu z kolei program będzie mógł uznać warunek za prawdziwy, jeśli b przekroczy 100, nawet jeżeli a i b nie są dodatnie, co narusza zasady logicznego myślenia. Argumenty w if ( a > 0 || (b > 0 && b < 100)) również nie są zgodne z wymaganiami, ponieważ zastosowanie operatora OR sprawia, że program uzna warunek za prawdziwy, jeżeli tylko a jest dodatnie, co nie jest zgodne z zasadą, że obie zmienne powinny spełniać warunki. Przykładowo, w kontekście aplikacji bankowej, takie niepoprawne sprawdzenie mogłoby prowadzić do nieautoryzowanych transakcji, co byłoby poważnym zagrożeniem dla bezpieczeństwa użytkowników.

Pytanie 4

Jakie pojęcia są wykorzystywane do opisu interfejsu użytkownika serwisu internetowego?

A. Przyciski, menu, interakcja użytkownika z aplikacją
B. Szkic strony, mapa witryny, diagram przepływu informacji
C. Wysyłanie zapytań do bazy, skrypty PHP
D. Przetwarzanie danych, system zarządzania treścią, projektowanie informacji
Odpowiedź "Przyciski, menu, interakcja użytkownika z aplikacją" jest prawidłowa, ponieważ odnosi się bezpośrednio do kluczowych elementów interfejsu użytkownika (UI) na stronach internetowych. Interfejs użytkownika to zespół wszystkich punktów kontaktowych między użytkownikiem a systemem, a przyciski i menu są podstawowymi składnikami, które umożliwiają interakcję z aplikacją. Dobre praktyki projektowania UI opierają się na zapewnieniu intuicyjności i dostępności tych elementów, co jest podstawą pozytywnego doświadczenia użytkownika (UX). Na przykład, przyciski powinny być jasno oznaczone i łatwo rozpoznawalne, a menu powinno być zorganizowane w sposób logiczny, aby użytkownicy mogli szybko znaleźć potrzebne informacje. W kontekście standardów, warto zwrócić uwagę na wytyczne WCAG, które dotyczą dostępności treści internetowych, oraz zasady heurystyki Jakobsona, które pomagają w ocenie interfejsu użytkownika. Dobry design UI powinien również uwzględniać responsywność, co oznacza, że interfejs powinien być użyteczny na różnych urządzeniach i rozmiarach ekranów.

Pytanie 5

Podczas definiowania koloru w formacie RGBA, na przykład rgba(100, 40, 50, 0.2), ostatnia liczba odnosi się do

A. saturacji barw RGB
B. nasycenia koloru czarnego
C. przezroczystości, gdzie 1 oznacza pełną przezroczystość, a 0 jej brak
D. przezroczystości, gdzie 0 oznacza pełną przezroczystość, a 1 jej brak
Wybór wartości, które nie odnoszą się do przezroczystości, może prowadzić do nieporozumień w zakresie interpretacji koloru w grafice komputerowej. Nasycenie koloru czarnego lub saturacja barw RGB są terminami, które odnoszą się do intensywności koloru lub jego czystości, ale nie mają nic wspólnego z przezroczystością. Saturacja określa, jak bardzo dany kolor jest odległy od szarości; im wyższa saturacja, tym kolor jest bardziej intensywny. Wartości takie jak nasycenie i jasność są kluczowe w kontekście modelu HSL (Hue, Saturation, Lightness), który jest alternatywną metodą reprezentacji kolorów, ale nie mają zastosowania w notacji RGBA. Często występującym błędem w myśleniu jest mylenie przezroczystości z intensywnością koloru; należy pamiętać, że stopień przezroczystości dotyczy widoczności koloru na tle innych elementów, a nie jego czystości czy głębokości. Użycie niewłaściwych terminów w kontekście grafiki komputerowej może prowadzić do błędnych rozwiązań w procesie projektowania, dlatego tak ważne jest zrozumienie podstawowych pojęć związanych z kolorami oraz znajomość standardów i dobrych praktyk w branży.

Pytanie 6

W standardzie HDTV wykorzystywana jest rozdzielczość

A. 704 x 576 px
B. 1920 x 1080 px
C. 720 x 480 px
D. 1280 x 1024 px
Rozdzielczości 1280 x 1024 px, 704 x 576 px oraz 720 x 480 px nie spełniają kryteriów standardu HDTV, co jest kluczowe do zrozumienia. Rozdzielczość 1280 x 1024 px jest typowa dla monitorów komputerowych, a jej proporcje wynoszą 4:3, co już nie odpowiada współczesnym standardom wideo, które preferują szerokoekranowe proporcje 16:9. W przypadku 704 x 576 px, to rozdzielczość ta była stosowana w analogowej telewizji PAL, która nie oferuje tej samej jakości obrazu co cyfrowe standardy. Z kolei 720 x 480 px to rozdzielczość standardu DVD, który, mimo że był powszechnie używany, nadal nie osiąga jakości Full HD. Błędne rozumienie standardów rozdzielczości może prowadzić do niezadowolenia z jakości obrazu, gdy użytkownik oczekuje wyraźniejszego i bardziej szczegółowego obrazu. W dobie wzrostu popularności treści wideo w rozdzielczości Full HD, wybór niższych rozdzielczości, które są niezgodne z wymaganiami HDTV, może ograniczać przyjemność z oglądania. Zrozumienie tych rozdzielczości oraz ich zastosowania w różnych technologiach jest kluczowe dla świadomego wyboru sprzętu oraz treści, które chcemy konsumować.

Pytanie 7

W języku PHP zapis // służy do

A. używania tablicy superglobalnej
B. zastosowania operatora dzielenia bez reszty
C. dodawania komentarza jednoliniowego
D. dodawania komentarza wieloliniowego
Znak // w języku PHP jest używany do wstawiania komentarzy jednoliniowych. Oznacza to, że wszystko, co znajduje się po tym znaku na danej linii, zostanie zignorowane przez interpreter PHP. Komentarze są istotnym elementem programowania, ponieważ umożliwiają programistom dodawanie wyjaśnień i notatek do kodu, co znacznie ułatwia jego późniejsze zrozumienie i konserwację. Przykładowo, możesz użyć komentarza jednoliniowego, aby wyjaśnić określoną funkcjonalność w kodzie: // To jest funkcja obliczająca sumę. Warto również pamiętać, że stosowanie komentarzy jest standardową praktyką w branży, która zwiększa czytelność i jakość kodu. Dobrą praktyką jest stosowanie komentarzy, aby wyjaśniać bardziej złożone fragmenty kodu, co wpływa na łatwiejsze współdzielenie pracy w zespołach programistycznych, a także na przyszłe modyfikacje kodu przez innych programistów. Warto zaznaczyć, że PHP obsługuje także komentarze wieloliniowe, które zaczynają się od /* i kończą na */. Jednak dla prostych, jednozdaniowych notatek znak // jest najbardziej odpowiedni.

Pytanie 8

Jakim poleceniem można uzyskać konfigurację serwera PHP, w tym dane takie jak: wersja PHP, system operacyjny serwera oraz wartości przedefiniowanych zmiennych?

A. echo phpversion();
B. phpcredits();
C. phpinfo();
D. print_r(ini_get_all());
Funkcja phpinfo() jest standardowym narzędziem w PHP, które dostarcza szczegółowych informacji o konfiguracji serwera oraz wersji PHP, która jest aktualnie używana. Wywołanie tej funkcji generuje stronę HTML z informacjami o ustawieniach PHP, w tym o zainstalowanych rozszerzeniach, włączonych opcjach oraz wartości przedefiniowanych zmiennych. Dodatkowo, phpinfo() prezentuje szczegóły dotyczące środowiska serwera, takie jak system operacyjny, serwer WWW oraz zmienne środowiskowe. Praktycznie, jest to niezwykle przydatne narzędzie dla programistów oraz administratorów serwerów, które umożliwia szybkie zdiagnozowanie problemów z konfiguracją czy identyfikację, które rozszerzenia PHP są dostępne. W kontekście bezpieczeństwa najlepiej jest używać tej funkcji tylko w środowisku developerskim lub lokalnym, aby uniknąć wycieku szczegółowych informacji o serwerze na produkcji. Zgodnie z najlepszymi praktykami, po zakończeniu diagnostyki, powinno się dezaktywować dostęp do tego typu informacji.

Pytanie 9

Aby zainstalować system CMS Joomla!, potrzebne jest środowisko

A. Apache, PHP i MySQL
B. PHP oraz MySQL
C. IIS, PERL i MySQL
D. Apache oraz PHP
Aby uruchomić system CMS Joomla!, konieczne jest zainstalowanie i skonfigurowanie serwera WWW, interpreter PHP oraz systemu zarządzania bazą danych, którym najczęściej jest MySQL. Apache to najpopularniejszy serwer WWW, który zapewnia środowisko dla aplikacji internetowych, oferując elastyczność i wsparcie dla wielu protokołów. PHP jest językiem skryptowym, który umożliwia dynamiczne generowanie treści na stronach internetowych. MySQL jako system zarządzania bazą danych pozwala na przechowywanie, zarządzanie i pobieranie danych, co jest kluczowe w kontekście zarządzania treścią w Joomla!. Przykładem zastosowania tych technologii może być stworzenie witryny internetowej, która korzysta z bazy danych do przechowywania artykułów, użytkowników oraz innych zasobów, a następnie dynamicznie je wyświetla za pomocą PHP. Warto również pamiętać, że stosowanie tych technologii to standardowa praktyka w branży, co zapewnia kompatybilność oraz wsparcie społeczności deweloperów.

Pytanie 10

Który z wariantów znacznika jest poprawny pod względem użytych atrybutów?

A. <meta name = "!DOCTYPE">
B. <meta title = "Strona dla hobbystów">
C. <meta name = "description" content = "Masz jakieś hobby? To jest strona dla Ciebie! ">
D. <meta background = blue>
Zarówno znacznik <meta name = "!DOCTYPE">, jak i <meta title = "Strona dla hobbystów"> nie są poprawnymi zapisami ze względu na nieodpowiednie użycie atrybutów i elementów w kontekście HTML. Element <!DOCTYPE> jest używany do zadeklarowania typu dokumentu HTML, a nie jako znacznik <meta>. Oznacza to, że próba użycia go w kontekście znacznika <meta> nie ma sensu i jest błędna. Właściwe umiejscowienie <!DOCTYPE> znajduje się na początku dokumentu HTML. Kolejnym błędnym podejściem jest użycie znacznika <meta> do definiowania tytułu strony. Tytuł powinien być zdefiniowany w znaczniku <title>, który znajduje się w sekcji <head> dokumentu HTML, a nie jako atrybut w znaczniku <meta>. W przypadku czwartego przykładu, <meta background = blue> jest całkowicie błędnym zapisem, ponieważ znacznik <meta> nie obsługuje atrybutu 'background'. Właściwe style i kolory tła powinny być definiowane za pomocą CSS, a nie w metadanych. To błędne zrozumienie ról i zastosowań różnych znaczników HTML prowadzi do niewłaściwego ich użycia, co może mieć negatywny wpływ na strukturę i interpretację strony przez przeglądarki oraz wyszukiwarki.

Pytanie 11

Oprogramowaniem typowym do obróbki grafiki wektorowej jest

A. Brasero
B. Inkscape
C. Audacity
D. Paint
Inkscape to profesjonalne oprogramowanie do edycji grafiki wektorowej, które jest szeroko stosowane przez projektantów i artystów. Program ten umożliwia tworzenie i edytowanie grafiki wektorowej, co oznacza, że obrazy są zbudowane z linii i kształtów, które można skalować bez utraty jakości. Inkscape obsługuje popularne formaty plików wektorowych, takie jak SVG (Scalable Vector Graphics), a także pozwala na eksport do różnych formatów rastrowych. Praktyczne zastosowania Inkscape obejmują projektowanie logo, ilustracji, infografik oraz elementów interfejsu użytkownika. Biorąc pod uwagę standardy branżowe, Inkscape wspiera wiele narzędzi i funkcji, takich jak warstwy, filtry, gradienty oraz teksty, co czyni go wszechstronnym narzędziem w rękach profesjonalnych grafików. Dodatkowo, dzięki aktywnej społeczności, użytkownicy mogą korzystać z licznych dodatków i zasobów, co zwiększa funkcjonalność programu i pozwala na dostosowanie go do specyficznych potrzeb projektowych.

Pytanie 12

Jakie polecenie wykonane w systemowej konsoli umożliwi przywrócenie bazy danych?

A. mysqldump -u root -p baza > kopia.sql
B. mysql -u root -p baza < kopia.sql
C. mysqldump -u root -p baza < kopia.sql
D. mysql -u root -p baza > kopia.sql
Wszystkie inne odpowiedzi są niepoprawne, ponieważ z użyciem niewłaściwych poleceń z systemu MySQL. Pierwsze z tych poleceń, zamiast przywracać bazę danych, tworzy jej kopię zapasową, co nie odpowiada na zadane pytanie. Użycie 'mysqldump' z parametrami '-u root -p baza > kopia.sql' jest sposobem na eksport danych z bazy do pliku SQL, a nie na ich import. Kolejne polecenie sugeruje zastosowanie 'mysqldump' w kontekście przywracania, co jest również błędne, ponieważ 'mysqldump' jest narzędziem służącym do zrzutów, a nie importu. Z kolei ostatnie polecenie 'mysql -u root -p baza > kopia.sql' ponownie nie wykonuje przywracania, lecz zapisuje dane z bazy danych do pliku, co jest odwrotnością oczekiwanej operacji. W praktyce, błędne zastosowanie tych poleceń może prowadzić do poważnych konsekwencji, takich jak utrata danych czy niewłaściwe zarządzanie bazą danych. Dlatego kluczowe jest zrozumienie roli każdego z narzędzi dostępnych w MySQL oraz ich poprawne zastosowanie w różnych scenariuszach administracyjnych.

Pytanie 13

W języku HTML kolor biały można przedstawić przy użyciu wartości

A. rgb(255,255,255)
B. rgb(FFFF,FF)
C. #255255
D. #000000
Biały kolor w HTML zapisujemy jako rgb(255,255,255). W systemie RGB kolory tworzą się z trzech podstawowych barw: czerwonej, zielonej i niebieskiej. Każda z nich ma wartość od 0 do 255, więc maksymalna intensywność danego koloru to 255, a najniższa to 0. W przypadku białego koloru wszystkie trzy barwy są na maksa, stąd właśnie rgb(255,255,255) oznacza pełną moc czerwonego, zielonego i niebieskiego, co razem daje kolor biały. Wartości RGB są super ważne w CSS i w różnych programach do grafiki. Moim zdaniem, warto je znać, bo to podstawy przy robieniu stron internetowych. Warto też zwrócić uwagę na standardy W3C dotyczące kolorów w HTML, bo pomagają zadbać o estetykę i dostępność stron.

Pytanie 14

Fragmenty kodu JavaScript w dokumencie HTML mogą być umieszczone

A. wyłącznie w sekcji <head>, w znaczniku <script>
B. zarówno w sekcji <head>, jak i <body>, w znaczniku <script>
C. zarówno w sekcji <head>, jak i <body>, w znaczniku <java>
D. wyłącznie w sekcji <body>, w znaczniku <java>
Wstawianie kodu JavaScript w dokumenty HTML to naprawdę istotna sprawa. Dzięki temu możemy dodawać różne interaktywne funkcje do naszych stron. Warto wiedzieć, że umiejscowienie tego kodu ma ogromne znaczenie dla tego, jak szybko strona się ładowała. Możemy wstawić skrypty w sekcji <head> albo w <body>, ale zawsze muszą być w znaczniku <script>. Kiedy wrzucamy kod do <head>, skrypty ładują się przed resztą zawartości, co może trochę spowolnić ładowanie strony, bo przeglądarka musi najpierw załadować skrypty. Z drugiej strony, jeśli wstawimy je na dole w <body>, strona ładowana jest szybciej, bo najpierw widzimy zawartość, co jest lepsze dla użytkownika. Dobrze też korzystać z atrybutów async lub defer, żeby poprawić wydajność ładowania. Zgodnie z wytycznymi W3C, używanie znacznika <script> to najlepszy sposób na zapewnienie, że wszystko działa, a skrypty są kompatybilne z przeglądarkami. Można to zobaczyć na przykład, gdy chcemy użyć biblioteki jQuery lub dodać jakieś interaktywne elementy na stronie.

Pytanie 15

Dana jest tabela firmy zawierająca następujące kolumny: nazwa, adres, NIP, obrot (obrót w ostatnim miesiącu), rozliczenie, status. Wykonanie kwerendy SQL SELECT sprawi, że zostaną wyświetlone

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
A. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
B. wszystkie dane firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
C. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
D. wszystkie dane firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
Twoja odpowiedź jest poprawna. Przy wykonywaniu zapytań SQL często wybieramy nie wszystkie, a jedynie niektóre kolumny z tabeli. W tym przypadku, pytanie dotyczyło wybrania tylko nazwy i NIPu firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł. Do realizacji tego zadania użyliśmy kwerendy SELECT z określeniem kolumn oraz warunku w klauzuli WHERE. Jest to częsty scenariusz w praktyce, gdy potrzebujemy wyfiltrować dane według określonych kryteriów. Ważne jest zrozumienie, że instrukcja SELECT jest używana do wybrania jednej lub wielu kolumn, które chcemy zobaczyć w wynikach, a klauzula WHERE służy do definiowania warunków, które muszą spełniać dane wyświetlane w wynikach.

Pytanie 16

Baza danych MySQL została uszkodzona. Które z poniższych działań nie przyczyni się do jej naprawy?

A. Odtworzenie bazy z kopii zapasowej
B. Utworzenie nowej bazy i przeniesienie do niej tabel
C. Wykonanie replikacji bazy danych
D. Próba naprawy za pomocą polecenia REPAIR
Próba naprawy bazy danych za pomocą polecenia REPAIR może wydawać się sensownym rozwiązaniem, jednak nie zawsze jest skuteczna. REPAIR działa jedynie na tabelach, które są w formacie MyISAM, a w przypadku tabel InnoDB, które są bardziej powszechne w nowoczesnych aplikacjach, to polecenie jest bezsilne. Działania związane z naprawą w przypadku uszkodzeń bazy powinny skupiać się na odpowiednich narzędziach i procedurach specyficznych dla silnika bazy danych. Odtworzenie bazy z kopii bezpieczeństwa to proces, który jest kluczowy w zarządzaniu danymi. Jeśli mamy aktualną kopię zapasową, możemy szybko wrócić do stanu sprzed uszkodzenia, co jest najskuteczniejszym sposobem na wyeliminowanie problemów z danymi. Stworzenie nowej bazy i przeniesienie do niej tabel również nie rozwiązuje problemu, jeżeli tabele te zawierają uszkodzone dane. Tylko przeniesienie struktury tabeli nie naprawi błędów, które już występują w danych. W każdym przypadku, kluczowym krokiem przed podjęciem jakiejkolwiek akcji powinna być analiza przyczyn uszkodzenia oraz zabezpieczenie istniejących danych, zanim podejmie się dalsze kroki.

Pytanie 17

Testy aplikacji webowej, których celem jest ocena wydajności aplikacji oraz bazy danych, a także architektury serwera i konfiguracji, określane są mianem testów

A. bezpieczeństwa
B. funkcjonalności
C. użyteczności
D. kompatybilności
Testy bezpieczeństwa koncentrują się na ocenie, jak dobrze aplikacja chroni dane użytkowników oraz jak reaguje na próby nieautoryzowanego dostępu. W tym kontekście testy te mają na celu identyfikację luk bezpieczeństwa, które mogłyby być wykorzystane przez atakujących. Testy te nie koncentrują się na aspektach skalowalności ani architektury serwera, a ich celem jest zapewnienie, że aplikacja jest odporna na zagrożenia. Z kolei testy funkcjonalności mają na celu weryfikację, czy wszystkie elementy aplikacji działają zgodnie z wymaganiami. Obejmują one testowanie poszczególnych funkcji i ich interakcji, ale nie badają wydajności systemu w warunkach dużego obciążenia ani nie analizują architektury bazy danych. Funkcjonalność aplikacji może być poprawna, ale nieprzystosowana do obsługi wzrastającej liczby użytkowników, co jest istotne w kontekście skalowalności. Testy użyteczności oceniają, jak łatwo użytkownicy mogą korzystać z aplikacji, koncentrując się na interfejsie, ergonomii oraz ogólnym doświadczeniu użytkownika. Choć te aspekty są niezwykle ważne, nie mają one bezpośredniego związku z testowaniem architektury serwera czy skalowalności systemu, co jest kluczowe dla odpowiedzi na postawione pytanie.

Pytanie 18

Element lub grupa elementów, która w jednoznaczny sposób identyfikuje każdy pojedynczy rekord w tabeli w bazie danych, nazywa się kluczem

A. obcy
B. przestawny
C. podstawowy
D. inkrementacyjny
Klucz inkrementacyjny to termin, który może być mylnie stosowany w kontekście kluczy podstawowych. Choć klucz podstawowy może być inkrementacyjny, co oznacza, że jego wartość rośnie w miarę dodawania nowych rekordów, nie jest to jego jedyna możliwa forma. Klucz podstawowy może być również złożony z kilku pól (klucz złożony) lub oparty na wartościach, które nie są inkrementowane. Z kolei klucz przestawny (ang. pivot key) to termin nieznany w klasycznej terminologii baz danych; nie odnosi się on do identyfikacji wierszy, a raczej do organizacji danych w tabelach przestawnych, które służą do agregacji danych. Klucz obcy (ang. foreign key) jest innym pojęciem, oznaczającym pole, które wskazuje na klucz podstawowy w innej tabeli i służy do zapewnienia powiązań między danymi, ale nie identyfikuje ono pojedynczych rekordów w danej tabeli. Typowe błędy w rozumieniu tych pojęć to mylenie ich ról oraz funkcji, co prowadzi do niewłaściwego projektowania baz danych, w którym integralność oraz relacje pomiędzy danymi są niewłaściwie zaimplementowane. Kluczowe jest, aby zrozumieć, że klucz podstawowy jest podstawowym komponentem dla każdej tabeli, a inne typy kluczy pełnią różne funkcje w kontekście relacji między danymi.

Pytanie 19

Na listingu kodu JavaScript w wykropkowanej części definicji obiektu osoba należy wpisać kod, który prawidłowo obsłuży instrukcję osoba.j = "PL"; Który to będzie kod?

 var osoba = {
    imie: "Jan",
    jezyk: "EN",
    set j(nazwa) {  ...  }
};
A. return this.j;
B. return this.jezyk;
C. this.j = nazwa;
D. this.jezyk = nazwa;
Niepoprawne odpowiedzi w tym pytaniu wynikają z niezrozumienia roli setterów i sposób, w jaki są one używane do zarządzania stanem obiektu w JavaScript. Odpowiedź 'this.j = nazwa;' jest nieprawidłowa, ponieważ próbuje przypisać wartość bezpośrednio do właściwości 'j', która nie istnieje w obiekcie 'osoba'. Z kolei 'return this.j;' i 'return this.jezyk;' nie są prawidłowe, ponieważ setter nie powinien zwracać wartości. Jego zadaniem jest ustawienie wartości, a nie jej zwrócenie. Zrozumienie roli setterów w zarządzaniu stanem obiektu jest kluczowe dla prawidłowego używania JavaScript. Setter powinien zawsze przypisywać wartość do właściwości obiektu, a nie próbować zwrócić wartość lub przypisać wartość do nieistniejącej właściwości.

Pytanie 20

Którego formatu należy użyć do zapisu zdjęcia z kompresją stratną?

A. JPEG
B. GIF
C. PCX
D. PNG
Wybór formatu GIF, PNG lub PCX zamiast JPEG wskazuje na niepełne zrozumienie różnic między typami kompresji stosowanymi w grafice rastrowej. GIF (Graphics Interchange Format) jest formatem, który obsługuje kompresję bezstratną, co oznacza, że ​​nie traci jakości przy zapisywaniu, ale jest ograniczony do 256 kolorów. Z tego powodu nie jest odpowiedni do zapisu złożonych obrazów lub zdjęć, gdzie wymagane są szersze gamy kolorów. Z kolei PNG (Portable Network Graphics) również stosuje kompresję bezstratną, co sprawia, że ​​jest idealny dla obrazów z przezroczystością oraz dla grafik, w których każdy szczegół jest istotny, na przykład w przypadku logotypów. Jednak PNG nie jest optymalnym wyborem do przechowywania zdjęć ze względu na większe rozmiary plików w porównaniu do JPEG. Co więcej, format PCX, będący starszym formatem graficznym, jest rzadko używany w nowoczesnych aplikacjach i ma ograniczone wsparcie dla kolorów oraz kompresji, co czyni go mało praktycznym rozwiązaniem. Kluczowym błędem jest brak zrozumienia, że JPEG został stworzony z myślą o zastosowaniach, w których rozmiar pliku ma kluczowe znaczenie, a niewielka utrata jakości jest akceptowalna. W sytuacjach wymagających zachowania pełnej jakości obrazu lepszym wyborem mogą być formaty bezstratne, ale nie są one odpowiednie dla zadań, gdzie kompresja i szybkość są kluczowe.

Pytanie 21

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. tr:hover { background-color: Pink; }
B. tr:active { background-color: Pink; }
C. td, th { background-color: Pink; }
D. tr { background-color: Pink; }
Poprawny selektor to tr:hover { background-color: Pink; }, bo dokładnie opisuje sytuację pokazaną na filmie: efekt pojawia się dopiero po najechaniu kursorem na cały wiersz tabeli. Pseudo-klasa :hover w CSS służy właśnie do definiowania stylów w momencie, gdy użytkownik „najeżdża” myszką na dany element. Jeśli więc chcemy, żeby podświetlał się cały rząd tabeli, logiczne i zgodne z dobrymi praktykami jest przypięcie efektu do znacznika tr, a nie do pojedynczych komórek. W praktyce taki zapis stosuje się bardzo często w interfejsach webowych: w panelach administracyjnych, listach zamówień, tabelach z uczniami, produktami, logami systemowymi itd. Dzięki temu użytkownik łatwiej śledzi, który wiersz właśnie ogląda. To niby detal, ale z punktu widzenia UX robi sporą różnicę. Z mojego doświadczenia to jeden z tych prostych trików CSS, które od razu poprawiają „odczuwalną” jakość strony. Ważne jest też to, że :hover jest częścią standardu CSS (opisane m.in. w specyfikacji CSS Selectors Level 3/4) i działa w praktycznie wszystkich współczesnych przeglądarkach. Nie trzeba do tego żadnego JavaScriptu, żadnych skomplikowanych skryptów – czysty CSS. Dobrą praktyką jest również używanie bardziej stonowanych kolorów niż Pink w prawdziwych projektach, np. #f5f5f5 albo lekki odcień niebieskiego, tak żeby kontrast był czytelny i nie męczył wzroku. Warto też pamiętać, że podobny mechanizm możesz zastosować na innych elementach: np. a:hover dla linków, button:hover dla przycisków czy nawet div:hover dla całych kafelków w layoutach. Kluczowe jest to, żeby pseudo-klasa :hover była przypięta dokładnie do tego elementu, który ma reagować na interakcję użytkownika.

Pytanie 22

W języku PHP zapis

// 
pozwala na:
A. dodanie komentarza jednoliniowego
B. użycie tablicy superglobalnej
C. dodanie komentarza wieloliniowego
D. użycie operatora dzielenia bez reszty
W języku PHP zapis <pre>//</pre> służy do wstawiania komentarzy jednoliniowych. Komentarze są istotnym elementem kodu, ponieważ pozwalają programistom na dokumentowanie i wyjaśnianie fragmentów kodu, co ułatwia jego zrozumienie i utrzymanie. W PHP, komentarze jednoliniowe zaczynają się od dwóch ukośników i rozciągają się do końca danej linii. Przykładowo, zapis <pre>// To jest komentarz jednoliniowy</pre> informuje innych programistów, że dany tekst jest komentarzem, który nie zostanie wykonany przez interpreter PHP. Stosowanie komentarzy jest zgodne z najlepszymi praktykami programowania, ponieważ poprawia czytelność kodu oraz pozwala na szybszą analizę struktury i logiki aplikacji. Dobrą praktyką jest dokumentowanie nie tylko skomplikowanych fragmentów, ale również takich, które mogą wydawać się oczywiste, aby zminimalizować ryzyko nieporozumień w przyszłości. Komentarze pomagają także w pracy zespołowej, gdzie wiele osób może pracować nad tym samym projektem.

Pytanie 23

Jednoznacznym identyfikatorem rekordu w bazie danych jest pole

A. wyłącznie typu tekstowego.
B. klucza głównego.
C. klucza obcego.
D. wyłącznie typu logicznego.
Poprawna jest odpowiedź dotycząca klucza głównego, bo to właśnie pole (lub zestaw pól) oznaczone jako PRIMARY KEY w tabeli pełni rolę jednoznacznego identyfikatora rekordu. W praktyce oznacza to, że dla każdej krotki (wiersza) w tabeli wartość klucza głównego musi być unikalna i nie może być pusta (NULL). Systemy baz danych, takie jak MySQL, PostgreSQL, SQL Server czy Oracle, egzekwują te zasady automatycznie – jeśli spróbujesz wstawić drugi rekord z tą samą wartością klucza głównego, dostaniesz błąd naruszenia unikalności. Moim zdaniem to jedna z kluczowych zasad normalnego projektowania baz danych: zawsze projektujemy tabelę zaczynając od przemyślania klucza głównego. W aplikacjach webowych bardzo często używa się prostego klucza głównego typu liczbowego (np. INT AUTO_INCREMENT lub SERIAL), który jest technicznym identyfikatorem rekordu. Dzięki temu łatwo się odwołać do konkretnego użytkownika, zamówienia czy produktu po jego ID. Klucz główny jest też podstawą do definiowania kluczy obcych w innych tabelach – relacje typu 1:N czy N:M opierają się właśnie na odwołaniach do wartości PRIMARY KEY. Z mojego doświadczenia wynika, że stosowanie sztucznych (surrogate) kluczy głównych, zamiast kombinowania z wieloma polami naturalnymi, upraszcza później zapytania SQL, modyfikacje struktury i integrację z kodem w PHP czy JavaScript. W dobrze zaprojektowanej bazie danych każda tabela relacyjna powinna mieć jasno zdefiniowany klucz główny, bo bez tego trudno mówić o porządnym zarządzaniu danymi, spójności referencyjnej i wydajnym indeksowaniu.

Pytanie 24

W SQL polecenie INSERT INTO służy do

A. tworzenia nowej tabeli
B. dodawania danych do tabeli
C. wprowadzania nowych pól do tabeli
D. zmiany rekordów na wskazaną wartość
Wprowadzenie do polecenia INSERT INTO często prowadzi do nieporozumień, szczególnie w kontekście funkcji, jakie pełni w SQL. Nieodpowiednie rozumienie tego polecenia może skutkować błędami w projektowaniu baz danych oraz w wykonywaniu operacji na danych. Na przykład, stwierdzenie, że INSERT INTO aktualizuje rekordy, jest nieprecyzyjne. W rzeczywistości, do aktualizacji istniejących danych używa się polecenia UPDATE, które zmienia wartości w określonych rekordach na podstawie podanych kryteriów. Ponadto, w SQL nie można dodawać nowych pól do tabeli za pomocą INSERT INTO; do tego służy polecenie ALTER TABLE. To ostatnie jest niezbędne, gdyż pozwala na modyfikację struktury tabeli, co jest kluczowe w przypadku zmieniających się wymagań aplikacji. Podobnie, stwierdzenie, że INSERT INTO dodaje tabelę, jest również błędne, ponieważ do tego używa się polecenia CREATE TABLE. Ważne jest, aby zrozumieć, że różne polecenia SQL mają swoje specyficzne zastosowania i nie można ich ze sobą mylić. Typowe błędy myślowe w tym zakresie mogą wynikać z nieznajomości języka SQL lub z braku zrozumienia różnicy pomiędzy operacjami na danych a operacjami na strukturze bazy danych. Zrozumienie tych podstawowych różnic jest kluczowe dla efektywnego zarządzania danymi oraz dla poprawnego projektowania baz danych.

Pytanie 25

Który kod HTML zapewni identyczny efekt formatowania jak na przedstawionym obrazku?

W tym paragrafie zobaczysz sposoby formatowania tekstu w HTML
A. <p>W tym <b>paragrafie <i>zobaczysz</i> sposoby formatowania</b> tekstu w HTML</p>
B. <p>W tym <i>paragrafie <b>zobaczysz</b> sposoby formatowania</i> tekstu w HTML</p>
C. <p>W tym <i>paragrafie </i><b>zobaczysz</b><i> sposoby formatowania</i> tekstu w HTML</p>
D. <p>W tym <i>paragrafie zobaczysz sposoby formatowania</i> tekstu w HTML</p>
Odpowiedź numer 2 jest poprawna, ponieważ używa odpowiednich znaczników HTML do formatowania tekstu. Znacznik <i> stosowany jest do oznaczania tekstu kursywą, a znacznik <b> do pogrubienia. W tym przypadku tekst 'paragrafie' i 'sposoby formatowania' są otoczone znacznikiem <i>, co zgodnie z HTML oznacza kursywę. Natomiast słowo 'zobaczysz' jest otoczone zarówno <b> jak i <i>, co skutkuje pogrubieniem i kursywą jednocześnie. Taka struktura jest zgodna z konwencją hierarchii znaczników, która mówi, że znaczniki mogą być zagnieżdżane, aby uzyskać różne efekty formatowania. HTML pozwala na takie zagnieżdżanie, co jest częścią elastyczności tego języka w prezentowaniu treści. Dobrą praktyką jest także zapewnienie dostępności, gdzie znaczniki semantyczne mają szczególne znaczenie. Wykorzystanie <b> i <i> zamiast odpowiednio <strong> i <em> jest bardziej stylistyczne niż semantyczne, co ma swoje uzasadnienie w kontekście projektowym, ale w nowoczesnych praktykach powinno się również rozważyć znaczenie semantyczne i używać <strong> i <em> dla lepszego zrozumienia przez czytniki ekranowe.

Pytanie 26

Jedną z charakterystyk relacyjnej bazy danych jest

A. używanie języka zapytań OQL
B. obecność klas, obiektów i metod
C. zdefiniowanie jej stanu według obiektowego modelu danych
D. stosowanie kluczy głównych do identyfikacji rekordów w tabelach
Odpowiedzi, które wskazują na stosowanie języka zapytań OQL, występowanie klas, obiektów i metod, oraz określenie stanu zgodnie z obiektowym modelem danych, nie odnoszą się do kluczowych cech relacyjnych baz danych. OQL (Object Query Language) jest językiem zapytań używanym w kontekście baz danych obiektowych, a nie relacyjnych. W relacyjnych bazach danych głównym językiem zapytań jest SQL (Structured Query Language), który został zaprojektowany do pracy z tabelami i relacjami między nimi. Przypisanie klas, obiektów i metod jest charakterystyczne dla obiektowych baz danych, które różnią się od relacyjnych, gdzie dane są organizowane w struktury tabelaryczne, a nie w obiektach. Ponadto, określenie stanu bazy danych zgodnie z obiektowym modelem danych nie jest praktyką występującą w relacyjnych bazach danych, które są zorganizowane wokół relacji między tabelami. Typowymi błędami myślowymi, które prowadzą do takich niepoprawnych wniosków, są mylenie różnych modeli baz danych oraz ich specyfikacji. Właściwe zrozumienie różnic między modelami obiektowymi a relacyjnymi jest kluczowe dla efektywnego projektowania baz danych i unikania problemów związanych z nieoptymalnym przechowywaniem oraz zarządzaniem danymi. W kontekście projektowania baz danych, ogólna zasada to, że należy dostosować używane technologie do specyficznych potrzeb aplikacji, co w przypadku relacyjnych baz danych oznacza korzystanie z zasad normalizacji i kluczy głównych dla poprawy integralności danych.

Pytanie 27

Jakie oznaczenie wykorzystuje się do jednoliniowego komentarza w skryptowym języku PHP?

A. /*
B. #
C. --
D. $
Oznaczenie jednoliniowego komentarza w języku PHP realizuje się za pomocą znaku '#'. Komentarze są niezwykle ważnym elementem kodu, ponieważ pozwalają programistom na dodawanie wyjaśnień, notatek lub przypomnień dotyczących implementacji. Umożliwiają one innym programistom (lub nawet samym sobie w przyszłości) zrozumienie kontekstu i logiki stosowanych rozwiązań. Przykładowo, można umieścić komentarz w kodzie w taki sposób: '# To jest komentarz, który wyjaśnia, co robi poniższy kod'. Warto pamiętać, że stosowanie komentarzy zgodnie z najlepszymi praktykami programowania zwiększa czytelność kodu oraz ułatwia jego utrzymanie. PHP pozwala również na stosowanie komentarzy wieloliniowych z użyciem znaków '/* ... */', jednak w przypadku komentarzy jednoliniowych preferowanym podejściem jest użycie znaku '#', szczególnie w kontekście prostych, krótkich notatek. Przykład: echo 'Hello World!'; # Ta linia wyświetla powitanie.

Pytanie 28

W systemie kolorów RGB kolor żółty uzyskuje się przez zmieszanie dwóch barw: zielonej i czerwonej. Jaki kod szesnastkowy reprezentuje kolor żółty?

A. #F0F0F0
B. #00FFFF
C. #FF00FF
D. #FFFF00
Nieprawidłowe odpowiedzi mogą sugerować brak zrozumienia podstawowych zasad tworzenia kolorów w modelu RGB. Kod #FF00FF reprezentuje kolor fioletowy. Składa się on z maksymalnej wartości czerwonego (FF), braku zielonego (00) i maksymalnej wartości niebieskiego (FF). Umożliwia to powstawanie kolorów o różnych odcieniach, ale nie żółtego. Kolejnym błędnym wyborem jest kod #00FFFF, który oznacza kolor cyjan (turkusowy). W tym przypadku wartości czerwonej są zerowe (00), zielona ma wartość 255 (FF), a niebieska także 255 (FF). Ostatni kod, #F0F0F0, to odcień szarości, w którym wszystkie trzy składniki RGB mają dość wysokie wartości, ale nie w wystarczającej kombinacji, aby uzyskać żółty. Zrozumienie kolorów RGB wymaga zrozumienia, że każdy kolor tworzony jest poprzez mieszanie odpowiednich wartości podstawowych. Typowym błędem myślowym, prowadzącym do wyboru niewłaściwej odpowiedzi, jest niepoprawne łączenie wartości kolorów lub mylenie ich składników. Praktyka tworzenia palet kolorów powinna opierać się na znajomości standardów branżowych, co pozwala uniknąć pomyłek i zapewnić lepszą jakość wizualną projektów. Dobrze jest również znać zastosowanie kolorów w kontekście dawania informacji; na przykład, kolor żółty jest często używany do oznaczania ostrzeżeń, co podkreśla znaczenie zrozumienia jego kodu szesnastkowego w praktyce.

Pytanie 29

Model barw o parametrach: odcień, nasycenie, jasność i przezroczystość, to

A. SRGB
B. HSLA
C. CMYK
D. RGBA
W tym pytaniu chodzi o model barw, w którym występują dokładnie cztery parametry: odcień, nasycenie, jasność i przezroczystość. Kluczowe są tu trzy pierwsze słowa: odcień, nasycenie, jasność. To już samo w sobie powinno kierować myślenie w stronę rodziny HSL/HSV, a nie klasycznego RGB czy modeli drukarskich takich jak CMYK. Typowym błędem jest patrzenie tylko na obecność kanału przezroczystości i automatyczne kojarzenie go z RGBA, bo wiele osób zapamiętuje po prostu „A = alpha, czyli przeźroczystość”, bez zwracania uwagi na to, jakie są pozostałe składowe. W modelu RGBA mamy składniki Red, Green, Blue plus Alpha. Nie ma tam odcienia, nasycenia i jasności jako osobnych parametrów, tylko trzy liczby opisujące natężenie podstawowych składowych RGB. To oczywiście też może zawierać informację o kolorze, ale w zupełnie inny sposób. Jeżeli w pytaniu pojawia się słowo „odcień”, to z mojego doświadczenia w zadaniach testowych prawie zawsze chodzi o HSL/HSLA albo HSV/HSVA, bo tam kolor opisuje się kołem barw i procentami. Samo SRGB to nie jest model z parametrami odcień–nasycenie–jasność–przezroczystość, tylko standardowa przestrzeń barw RGB dla monitorów, zdefiniowana m.in. przez konsorcjum W3C i Microsoft. W CSS co prawda używamy funkcji `rgb()` czy `rgba()`, ale to tylko zapisy w przestrzeni sRGB, a nie osobny czteroparametrowy model jak w treści pytania. Wybranie SRGB często wynika z tego, że ktoś kojarzy skrót z „kolorami w przeglądarce”, ale to za mało, bo pytanie precyzyjnie opisuje właściwości. Z kolei CMYK jest modelem typowo poligraficznym: Cyan, Magenta, Yellow, Key (Black). Stosuje się go w druku, a nie w definicjach kolorów w CSS i nie ma tam żadnego kanału alpha ani parametrów odcień/nasycenie/jasność. Mylenie CMYK z HSL/HSLA to zwykle wynik tego, że ktoś kojarzy „inny niż RGB, więc może ten”. W projektowaniu stron WWW i interfejsów użytkownika, zgodnie z dobrymi praktykami front-end, warto rozróżniać: RGB/RGBA – składowe podstawowych barw światła, HSLA – odcień, nasycenie, jasność plus alpha, CMYK – druk, a sRGB – nazwa przestrzeni, nie czteroelementowego modelu H+S+L+A.

Pytanie 30

Aby właściwie przystosować stronę internetową dla osób niewidomych, należy przypisać wyświetlanym za pomocą znacznika img obrazom atrybut

A. text
B. alt
C. src
D. style
Atrybut 'alt' w znaczniku <img> to naprawdę ważny element, jeśli chodzi o dostępność stron internetowych dla osób niewidomych. Głównie chodzi o to, żeby zapewnić opis obrazka, który mogą zrozumieć technologie asystujące, tak jak czytniki ekranu. Dzięki temu, osoby niewidome mają możliwość dowiedzieć się, co znajduje się na zdjęciu. Na przykład, jeśli mamy zdjęcie czerwonego swetra w sklepie internetowym, to warto wpisać coś takiego jak 'Czerwony sweter z wełny' w tym atrybucie. To też pomaga w SEO, bo wyszukiwarki lubią takie opisy. W skrócie, dobrze jest stosować atrybut 'alt' przy każdym obrazie, by każdy użytkownik mógł zrozumieć treść strony.

Pytanie 31

Jaką funkcję pełni CONCAT w języku SQL?

A. określenie podłańcucha znaków z tekstu wejściowego
B. przycinanie wyświetlanego tekstu
C. łączenie tekstu do wyświetlenia
D. usuniecie określonego tekstu
Funkcja CONCAT w języku SQL jest używana do łączenia dwóch lub więcej ciągów tekstowych w jeden. Jest to bardzo przydatne narzędzie w zarządzaniu danymi, gdyż pozwala na tworzenie bardziej złożonych i informacyjnych komunikatów tekstowych z pojedynczych elementów. Funkcja ta przyjmuje jako argumenty dowolną liczbę ciągów znakowych, a jej wynik to jeden skonsolidowany ciąg. Na przykład, jeżeli mamy dwie kolumny, 'imię' i 'nazwisko', używając CONCAT możemy stworzyć pełne imię i nazwisko: SELECT CONCAT(imię, ' ', nazwisko) AS pełne_imie FROM użytkownicy; W wyniku tego zapytania otrzymamy pełne imiona i nazwiska użytkowników. Funkcja ta jest zgodna z normami ANSI SQL i jest wspierana przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL, czy Microsoft SQL Server, co sprawia, że jest bardzo uniwersalnym narzędziem w świecie baz danych.

Pytanie 32

Który z typów formatów oferuje największą kompresję pliku dźwiękowego?

A. CD-Audio
B. WAV
C. MP3
D. PCM
Format MP3 jest algorytmem kompresji stratnej, który umożliwia znaczną redukcję rozmiaru plików dźwiękowych przy zachowaniu akceptowalnej jakości dźwięku. W przeciwieństwie do formatów takich jak WAV, PCM czy CD-Audio, które są formatami bezstratnymi, MP3 wykorzystuje techniki psychoakustyczne do eliminacji dźwięków, które są mniej słyszalne dla ludzkiego ucha. Dzięki temu, pliki MP3 mogą być nawet dziesięciokrotnie mniejsze od swoich odpowiedników bezstratnych, co czyni je idealnymi do zastosowań w streamingach, pobierania muzyki oraz na urządzenia mobilne. Użytkownicy mogą z łatwością przechowywać większe ilości muzyki na swoich urządzeniach, co wpływa na komfort korzystania z technologii audio. Warto również zaznaczyć, że standard MP3 stał się de facto normą w branży muzycznej, co potwierdzają liczne platformy dystrybucji muzyki, które preferują ten format. Dobrą praktyką jest dostosowywanie bitrate'u przy kompresji do potrzeb użytkownika, aby równoważyć rozmiar pliku z jakością audio.

Pytanie 33

Tabela Pracownicy zawiera informacje o zatrudnionych w różnych działach, co jest określone przez pole liczbowe dzial. Z uwagi na to, że zazwyczaj wykonuje się kwerendy jedynie dla działu równego 2, można uprościć zapytania do tej tabeli, tworząc wirtualną tabelę o nazwie Prac_dzial2 przy użyciu zapytania

A. VIEW Prac_dzial2 SELECT FROM Pracownicy WHERE dzial=2
B. CREATE VIEW Prac_dzial2 AS SELECT * FROM Pracownicy WHERE dzial=2
C. CREATE VIEW Prac_dzial2 FROM Pracownicy WHERE dzial=2
D. VIEW Prac_dzial2 FROM Pracownicy WHERE dzial=2
Pozostałe odpowiedzi są błędne z różnych powodów. Przede wszystkim, brak słowa kluczowego 'AS' w odpowiedziach, które twierdzą, że mają na celu stworzenie widoku, skutkuje nieprawidłową składnią. W SQL, podczas definiowania widoku, kluczowe jest użycie 'AS' po nazwie widoku, aby określić, że następujące zapytanie jest definicją źródła danych tego widoku. Ponadto, użycie słowa kluczowego 'VIEW' bez 'CREATE' jest niepoprawne, ponieważ struktura SQL wymaga, aby przed utworzeniem widoku zawsze były używane polecenia 'CREATE VIEW'. Również pominięcie 'SELECT *' w kontekście tworzenia widoku ogranicza elastyczność, ponieważ pozwala na wybranie tylko niektórych kolumn z tabeli, co nie jest zgodne z wymaganiami przedstawionymi w pytaniu. Zrozumienie tych zasad jest kluczowe, aby uniknąć typowych pułapek w pracy z SQL, a także pozwala na tworzenie bardziej złożonych i wydajnych strukturyzacji danych. Użycie nieprawidłowej składni może prowadzić do błędów wykonania, co w praktyce może skutkować zamieszaniem i wydłużonym czasem reakcji na wyciąganie danych. Dlatego kluczowe jest przestrzeganie standardów i dobrych praktyk w pisaniu zapytań SQL.

Pytanie 34

W jakim bloku powinien być umieszczony warunek pętli?

Ilustracja do pytania
A. Opcja B
B. Opcja D
C. Opcja A
D. Opcja C
Odpowiedź C jest prawidłowa ponieważ blok w kształcie rombu jest powszechnie stosowany w schematach blokowych do przedstawiania warunków decyzyjnych W kontekście pętli programistycznych warunek decyzyjny kontroluje jej wykonanie określając kiedy pętla powinna się zakończyć lub kontynuować Romb jako symbol decyzyjny umożliwia zadanie pytania logicznego którego wynik decyduje o dalszym przebiegu algorytmu Na przykład w pętli while warunek jest oceniany przed każdym wykonaniem bloków kodu w pętli co zapewnia że pętla działa dopóki warunek jest spełniony Podobnie w pętli for warunek kontroluje liczbę iteracji poprzez ocenę wyrażenia logicznego przed każdą iteracją Stosowanie rombu do przedstawiania warunków pętli jest zgodne ze standardami modelowania procesów i zwiększa czytelność oraz zrozumiałość schematów blokowych dla programistów i analityków Właściwe umiejscowienie warunku w rombie w strukturze pętli pokazuje zdolność do logicznego modelowania algorytmów co jest kluczowe dla tworzenia efektywnego i niezawodnego oprogramowania

Pytanie 35

Która komenda algorytmu odpowiada graficznej wizualizacji bloku przedstawionego na ilustracji?

Ilustracja do pytania
A. Wykonaj podprogram sortowania tablicy t
B. n <- n + 5
C. Wypisz n
D. n > 20
Analizując dostępne opcje należy zrozumieć że poprawna identyfikacja elementów algorytmu zależy od znajomości symboli używanych w schematach blokowych. Wybór n>20 jako poprawnej odpowiedzi wynika z rozpoznania rombu jako symbolu decyzji. Opcja Wypisz n sugeruje operację wyjściową która w schematach blokowych zwykle reprezentowana jest przez prostokąt z zakrzywionymi narożnikami co oznacza wyświetlanie wartości zmiennej. Instrukcja n <- n + 5 jest przykładem operacji przypisania lub inkrementacji która zazwyczaj oznacza modyfikację wartości zmiennej i byłaby przedstawiona jako prostokąt oznaczający proces. Natomiast Wykonaj podprogram sortowania tablicy t to wywołanie funkcji które także mieści się w zakresie standardowego bloku procesowego. Wybór tych opcji wskazuje na brak poprawnego zrozumienia jakie typy operacji reprezentują różne kształty w schematach blokowych co może prowadzić do błędów w projektowaniu algorytmów. Zrozumienie znaczenia każdego bloku jest kluczowe w procesie tworzenia dokładnych i funkcjonalnych modeli algorytmicznych które są podstawą efektywnego rozwiązywania problemów w informatyce i inżynierii oprogramowania. Warto zwrócić uwagę na standardy takie jak UML czy BPMN które także definiują podobne symbole i konwencje co ułatwia komunikację i dokumentację w zespołach projektowych.

Pytanie 36

Którego polecenia JavaScript należy użyć, aby w oknie przeglądarki wyświetliło się okno przedstawione na obrazie?

Ilustracja do pytania
A. document.write(’Ile masz lat?’)
B. confirm(’Ile masz lat?’)
C. alert(’Ile masz lat?’)
D. prompt(’Ile masz lat?’)
W tym zadaniu chodzi o rozróżnienie trzech podstawowych funkcji okien dialogowych w JavaScript i zwykłego wypisywania tekstu w dokumencie. Obrazek pokazuje okno z polem do wprowadzania danych, przyciskiem „OK” i przyciskiem „Anuluj”. Takie zachowanie zapewnia tylko funkcja prompt(). Częsty błąd polega na wrzucaniu do jednego worka wszystkich „wyskakujących okienek” i traktowaniu alert(), confirm() i prompt() jak równoważnych, a one pełnią różne role w interakcji z użytkownikiem. alert('Ile masz lat?') tworzy wyłącznie prosty komunikat z jednym przyciskiem, zazwyczaj „OK”. Nie ma żadnego pola tekstowego, nie można nic wpisać, a funkcja nie służy do pobierania danych od użytkownika, tylko do informowania go o czymś lub debugowania. W testach i zadaniach szkolnych mylenie alert z prompt wynika często z tego, że widać po prostu „popup” i tyle, bez zwracania uwagi na szczegóły interfejsu. confirm('Ile masz lat?') również nie jest poprawne, bo confirm tworzy okno z dwoma przyciskami (np. „OK” i „Anuluj” lub „Tak” i „Nie”), ale bez pola edycji. Zwraca wartość logiczną true/false w zależności od tego, który przycisk został kliknięty. Używa się go do prostych pytań typu „Czy na pewno chcesz usunąć plik?”, a nie do wpisywania konkretnej odpowiedzi tekstowej. Ostatnia propozycja, document.write('Ile masz lat?'), w ogóle nie tworzy okna dialogowego. To polecenie po prostu wpisuje podany tekst bezpośrednio do dokumentu HTML. Co gorsza, wywołane po załadowaniu strony nadpisuje całą zawartość dokumentu, więc w praktyce jest uznawane za złą praktykę i w nowoczesnym kodzie raczej się go unika. Jeśli chcemy wyświetlać treść na stronie, stosuje się manipulację DOM, np. element.textContent, innerHTML czy nowoczesne frameworki. Kluczowe jest więc kojarzenie: alert – tylko komunikat, confirm – wybór tak/nie, prompt – pytanie z polem do wpisania danych. Świadome rozróżnianie tych funkcji to podstawa dalszej pracy z interfejsem użytkownika w JavaScript i fundament do późniejszego tworzenia własnych, bardziej zaawansowanych komponentów dialogowych.

Pytanie 37

W deklaracji w języku JavaScript:```var x=true;``` zmienna x przyjmuje typ

A. liczbowym
B. wyliczeniowym
C. logicznym
D. ciąg znaków
Odpowiedź logicznego jest poprawna, ponieważ w języku JavaScript wyrażenie `var x = true;` przypisuje do zmiennej `x` wartość typu boolean, która jest jednym z dwóch stanów: `true` lub `false`. Typ boolean jest kluczowym elementem programowania, służącym do wykonywania logiki warunkowej, co jest niezbędne w większości aplikacji. Na przykład, używając warunków if-else, możemy podejmować decyzje na podstawie wartości boolean. W praktyce, po przypisaniu `x`, możemy używać go w instrukcjach warunkowych, jak w poniższym przykładzie: `if (x) { console.log('X jest prawdą'); } else { console.log('X jest fałszem'); }`. Ponadto, dobrym standardem jest oznaczanie zmiennych typem boolean poprzez użycie prefiksów, jak `is` lub `has`, co poprawia czytelność kodu. Wspieranie logiki programowania przy użyciu typów prostych jest kluczowe w inżynierii oprogramowania, co czyni tę wiedzę istotną.

Pytanie 38

W języku JavaScript, aby zweryfikować, czy liczba leży w zakresie (100, 200>, należy użyć następującego zapisu:

A. If (liczba > 100 || liczba <=200)
B. If (liczba < 100 && liczba <=200)
C. If (liczba < 100 || liczba >=200)
D. If (liczba > 100 && liczba <=200)
Wyrażenie warunkowe 'if (liczba > 100 && liczba <= 200)' jest całkiem dobrze skonstruowane. Precyzyjnie wskazuje, że interesują nas liczby od 101 do 200, z tym że 200 jest uwzględniona, a 100 już nie. Operator '&&' (AND) działa tutaj, bo musi być spełniony zarówno pierwszy, jak i drugi warunek, co jest bardzo istotne w tym przypadku. W praktyce takie warunki można często spotkać w aplikacjach webowych, szczególnie przy walidacji danych. Na przykład w formularzach, gdzie użytkownicy muszą podać wartości mieszczące się w danym zakresie. Umiejętne korzystanie z operatorów logicznych to dobra praktyka w programowaniu. Dzięki temu kod jest bardziej czytelny oraz łatwiejszy do utrzymania. Warto też pamiętać, że różne biblioteki i frameworki mają własne metody walidacji, ale znajomość podstawowych zasad programowania w JavaScript jest kluczowa, żeby móc je dobrze wykorzystywać.

Pytanie 39

char str1[30] = 'Ala ma kota';
printf("%s", str1);
Wskaż, gdzie tkwi błąd w powyższym kodzie napisanym w języku C++?
A. W funkcji printf nie można używać formatowania %s.
B. Tekst powinien mieć dokładnie 30 znaków.
C. Tekst powinien być zawarty w cudzysłowie.
D. Do funkcji printf przekazano za mało argumentów.
Podane odpowiedzi zawierają kilka powszechnych nieporozumień dotyczących języka C/C++. Użycie 30 znaków do definiowania napisu nie jest kluczowe, ponieważ długość napisu może być zmienna, a w przypadku napisu \"Ala ma kota\" jego długość wynosi 13 znaków, co jest znacznie mniej niż 30. Definiowanie napisu w taki sposób nie stwarza problemu, o ile tablica jest wystarczająco duża, aby pomieścić cały napis wraz z terminatorem '\0'. Koncepcja przekazywania argumentów do funkcji printf również jest źle zrozumiana, ponieważ funkcja ta przyjmuje jako argument wskaźnik do napisu, a nie liczbę argumentów. Wspomnienie o formacie %s w funkcji printf jest mylące, ponieważ format procentowy %s jest poprawny i stosowany w celu wyświetlenia łańcucha tekstowego. To są standardowe praktyki w C/C++, a ich nieznajomość może prowadzić do błędnych wniosków. Istotne jest rozumienie, że każdy z tych błędów wynika z niepełnego zrozumienia zasad działania języka, co może prowadzić do trudności w pisaniu poprawnego kodu. Właściwa interpretacja tych zasad jest niezbędna do skutecznego programowania.

Pytanie 40

Funkcja pg_connect w PHP pozwala na nawiązanie połączenia z bazą danych

A. mySQL
B. MS SQL
C. PostgreSQL
D. MS ACCESS
Polecenie pg_connect w języku PHP jest używane do nawiązywania połączenia z bazą danych PostgreSQL. PostgreSQL to zaawansowany system zarządzania relacyjnymi bazami danych, który obsługuje wiele zaawansowanych funkcji, takich jak transakcje, złożone zapytania czy wsparcie dla różnych typów danych. Funkcja pg_connect przyjmuje jako argumenty łańcuch połączenia, w którym określamy host, port, nazwę bazy danych, użytkownika oraz hasło. Przykładowe użycie polecenia to: $conn = pg_connect("host=localhost dbname=mydb user=myuser password=mypass");. Przy prawidłowym połączeniu, zmienna $conn będzie zawierała uchwyt do bazy danych, który można używać w dalszych operacjach, takich jak wykonywanie zapytań SQL. PostgreSQL jest często wybierany ze względu na swoje możliwości dostosowywania, silne wsparcie dla standardów SQL oraz szeroką społeczność. Warto zauważyć, że pg_connect jest częścią rozszerzenia PHP o nazwie pgsql, które musi być włączone, aby umożliwić korzystanie z tej funkcji.