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: 10 maja 2026 08:23
  • Data zakończenia: 10 maja 2026 08:41

Egzamin zdany!

Wynik: 32/40 punktów (80,0%)

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

Pokazane pole input pozwala na

<input type="checkbox" name="text1" value="text2">
A. wpisanie dowolnego ciągu znaków
B. wprowadzenie hasła
C. selekcję opcji z listy zawierającej wartości text1 oraz text2
D. wybranie opcji
Pole input typu checkbox to fajna opcja, bo pozwala użytkownikom zaznaczać jedną albo więcej opcji z dostępnych wyborów. Takie checkboxy można zobaczyć na różnych stronach internetowych, są super przydatne, a użytkownik może je odznaczać kiedy chce. W HTML mamy atrybut type, który mówi, co użytkownik może wpisać. W przypadku checkboxa mamy to pole, które można zaznaczyć i dzięki temu dodajemy wartość do formularza, gdy go wysyłamy. Przykładem mogą być formularze zgód, gdzie trzeba potwierdzić kilka polityk prywatności lub warunków korzystania z serwisu. Ważne jest także, żeby każdy checkbox miał odpowiednio przypisane atrybuty name i value, bo dzięki temu łatwiej jest je zidentyfikować, gdy przesyłamy dane. I pamiętajmy, żeby dobrze oznaczać checkboxy etykietami przez element label – to pomaga, zwłaszcza osobom korzystającym z technologii wspomagających. Takie poprawne używanie checkboxów to klucz do budowania intuicyjnych i użytecznych interfejsów użytkowników.

Pytanie 2

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. tr { background-color: Pink; }
B. tr:active { background-color: Pink; }
C. td, th { background-color: Pink; }
D. tr:hover { 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 3

Jaką funkcję pełni funkcja CONCAT() w SQL?

A. łącznienie tekstu wyświetlanego
B. usuwanie określonego tekstu
C. wyodrębnianie podłańcucha znaków z tekstu wejściowego
D. przycinanie tekstu wyświetlanego
Wybór odpowiedzi, która twierdzi, że CONCAT() służy do przycinania tekstu, to typowe nieporozumienie. Ta funkcja wcale nie ma na celu zmniejszania długości łańcuchów tekstowych. Przycinanie to coś innego – tam usuwa się zbędne znaki na początku lub końcu ciągu, i korzysta się z funkcji jak TRIM(), LEFT() albo RIGHT(). Jeśli chcesz dobrze przetwarzać dane, to warto zrozumieć, że różne funkcje działają w różnych celach. Odpowiedź mówiąca o usuwaniu tekstu też jest nietrafiona, bo CONCAT() jedynie łączy ciągi, a usuwanie można zrobić innymi metodami, takimi jak REPLACE() czy SUBSTRING(). Co więcej, wyodrębnianie fragmentów tekstu to już domena funkcji jak SUBSTRING() czy CHARINDEX(), które pozwalają na wyciąganie konkretnych elementów według ustalonych kryteriów. Zrozumienie tych różnic jest kluczowe, żeby dobrze korzystać z funkcji tekstowych i zarządzać danymi w SQL.

Pytanie 4

Czego nie należy brać pod uwagę przy zabezpieczaniu serwera bazy danych przed atakami hakerskimi?

A. Aktywacja zapory
B. Używanie skomplikowanych haseł do bazy
C. Zamykanie portów związanych z bazą danych
D. Defragmentacja dysków
Wszystkie wymienione metody oprócz defragmentacji dysków są kluczowymi elementami strategii zabezpieczeń bazy danych i mają istotne znaczenie w kontekście ochrony przed atakami hakerskimi. Stosowanie złożonych haseł jest absolutnie niezbędne, ponieważ proste hasła mogą być łatwo złamane przy użyciu technik takich jak brute force. Złożone hasła, które są długie i skomplikowane, znacznie zwiększają czas potrzebny na ich złamanie. Blokowanie portów, które nie są wykorzystywane przez bazę danych, pozwala na zredukowanie powierzchni ataku, ograniczając dostęp do systemu tylko do niezbędnych kanałów komunikacyjnych. To podejście jest zgodne z zasadą „minimalnych uprawnień”, która mówi o tym, że system powinien mieć jak najmniej aktywnych punktów dostępu. Włączenie zapory (firewall) jest również nieodzownym elementem ochrony. Zapory chronią przed nieuprawnionym dostępem, filtrując ruch sieciowy i umożliwiając korzystanie tylko z zaufanych źródeł. W praktyce, ignorowanie tych metod zabezpieczeń może prowadzić do poważnych luk w bezpieczeństwie, które hakerzy mogą wykorzystać. Przykłady z życia pokazują, że wiele wycieków danych miało miejsce z powodu słabości w hasłach i niewłaściwej konfiguracji firewalli. Dlatego właściwe zrozumienie i wdrożenie tych praktyk jest kluczowe dla ochrony danych w bazach danych.

Pytanie 5

Który znacznik lub zestaw znaczników nie jest używany do określenia struktury dokumentu HTML?

A. <section>
B. <header>, <footer>
C. <i>, <b>, <u>
D. <div>
Te znaczniki, czyli <i>, <b> i <u>, nie są jakby do tworzenia struktury dokumentu HTML, ale bardziej do formatowania tekstu. Zgodnie z nowymi standardami HTML5, są to elementy semantyczne, które wpływają na to, jak coś wygląda, a nie na to, jak jest zorganizowane. Znacznik <i> używamy, jak chcemy coś napisać kursywą, <b>, żeby coś podkreślić, a <u>, żeby coś podkreślić. Często korzysta się z nich w stylach CSS, ale nie nadają one hierarchii ani kontekstu dokumentu. Jak chcesz wyróżnić jakiś tekst w kontekście kodu czy tytułu rozdziału, lepiej skorzystać z bardziej semantycznych znaczników, jak <em> dla podkreślenia znaczenia albo <strong> dla podkreślenia wagi. W czasach, kiedy dostępność i SEO są coraz ważniejsze, używanie semantycznych elementów to klucz do tworzenia lepszych i bardziej przejrzystych stron.

Pytanie 6

Po uruchomieniu poniższego fragmentu kodu PHP:

echo date("Y");
na ekranie pojawi się bieżąca data zawierająca tylko:
A. rok
B. miesiąc i rok
C. dzień
D. dzień i miesiąc
W odpowiedzi na pytanie, kod PHP echo date("Y"); zwraca aktualny rok, co jest zgodne z jego konstrukcją. Funkcja date() w PHP jest standardowym sposobem na formatowanie daty i czasu. Przekazany argument "Y" oznacza, że chcemy otrzymać rok w czterocyfrowym formacie. Na przykład, jeśli aktualny rok to 2023, wynik będzie wynosił 2023. Tego rodzaju operacje są niezwykle przydatne w różnych aplikacjach, od prostych stron internetowych po bardziej złożone systemy zarządzania treścią, gdzie dane o roku mogą być wykorzystywane do generowania dynamicznych treści, takich jak stopki z roku lub nagłówki z aktualnym rokiem. Użycie funkcji date() w odpowiedni sposób jest zgodne z najlepszymi praktykami programowania w PHP, które zalecają używanie wbudowanych funkcji do zarządzania datami i czasem, co zapewnia większą niezawodność i prostotę w kodzie.

Pytanie 7

W systemie MySQL przyznanie roli o nazwie DBManager umożliwia użytkownikowi wykonywanie

A. wszystkie operacje związane z bazami danych oraz użytkownikami serwera
B. zakładanie użytkowników serwera oraz definiowanie ich haseł
C. wszystkie operacje na bazach danych serwera
D. nadzór nad serwerem
Wybór odpowiedzi, która sugeruje, że rola DBManager przyznaje prawa do monitorowania serwera, tworzenia użytkowników serwera oraz wykonywania wszystkich operacji na bazach danych i użytkownikach, może prowadzić do mylnych wniosków na temat rzeczywistych możliwości tej roli. Monitorowanie serwera jako funkcja nie jest bezpośrednio związane z rolą DBManager. Chociaż monitorowanie jest istotnym aspektem zarządzania bazami danych, odpowiednie uprawnienia związane z tą funkcjonalnością są przyznawane innym rolom lub użytkownikom posiadającym konkretne przywileje, takie jak rola DBMonitor. Tworzenie użytkowników serwera i ustawianie im haseł również wykracza poza standardowe uprawnienia roli DBManager. Zwykle te czynności są przypisane administratorom systemu, którzy mają kontrolę nad bezpieczeństwem całego środowiska bazodanowego. Odpowiedzi sugerujące możliwość wykonywania wszelkich operacji na bazach danych i użytkownikach mogą sugerować, że rola DBManager obejmuje pełne uprawnienia administracyjne, co nie jest zgodne z praktykami bezpieczeństwa, które zalecają ograniczanie uprawnień w oparciu o zasadę najmniejszych uprawnień. Takie zrozumienie jest kluczowe, ponieważ przyznawanie zbyt szerokich uprawnień może prowadzić do luk w zabezpieczeniach i nadużyć, co narusza standardy zarządzania danymi i bezpieczeństwa w organizacjach. Dlatego ważne jest, aby dokładnie rozumieć zakres dostępnych ról i ich odpowiedzialności, aby zapewnić właściwe zarządzanie dostępem i bezpieczeństwem danych.

Pytanie 8

W języku CSS wprowadzono poniższe formatowanie:

p > i { color: blue; }
Oznacza to, że tekst w kolorze niebieskim będzie zapisany:
A. pochylony tekst akapitu
B. cały tekst nagłówków, bez względu na ich formatowanie
C. pogrubiony tekst akapitu
D. cały tekst akapitu, bez względu na jego formatowanie
W języku CSS selektor > jest używany do stylizowania bezpośrednich potomków danego elementu. W podanym przykładzie p > i oznacza, że reguła CSS będzie zastosowana do elementu i będącego bezpośrednim dzieckiem elementu p. To oznacza, że tylko tekst zapisany w tagu i wewnątrz paragrafu p będzie miał kolor niebieski. Jest to powszechnie stosowane podejście do precyzyjnego stylizowania elementów na stronach internetowych, z zachowaniem struktury dokumentu HTML. Takie rozwiązanie pozwala na lepszą kontrolę nad wyglądem i prezentacją dokumentu, co jest istotne przy tworzeniu responsywnych i estetycznych stron. Praktyczne zastosowanie tego stylu można zobaczyć w przypadku, gdy chcemy wyróżnić pewne frazy w paragrafie, na przykład cytaty lub terminy. Warto pamiętać, że używanie selektorów potomstwa poprawia czytelność i efektywność kodu CSS, co jest dobrą praktyką w profesjonalnym kodowaniu frontendowym. Zachowanie spójności i przejrzystości stylów jest kluczowe w większych projektach, gdzie wiele osób pracuje nad kodem.

Pytanie 9

Aby włączyć kaskadowy arkusz stylów zapisany w zewnętrznym pliku, należy zastosować poniższy fragment kodu HTML?

A. <optionvalue="styl.css" type="text/css" />
B. <div id="styl.css" relation="css" />
C. <meta charset="styl.css" />
D. <link rel="stylesheet" type="text/css" href="styl.css" />
Odpowiedź <link rel="stylesheet" type="text/css" href="styl.css" /> jest poprawna, ponieważ jest to standardowy sposób dołączania zewnętrznych arkuszy stylów w HTML. Element <link> jest używany do powiązania dokumentu HTML z zewnętrznym źródłem CSS. Atrybut 'rel' informuje przeglądarkę, że jest to arkusz stylów, natomiast atrybut 'href' wskazuje ścieżkę do pliku CSS. Dzięki temu przeglądarka może załadować stylizacje z pliku, co pozwala na oddzielenie treści od stylu, co jest zgodne z zasadą separacji, kluczową w projektowaniu stron internetowych. Na przykład, dodając ten fragment kodu w sekcji <head> dokumentu HTML, możemy łatwo zarządzać wyglądem wielu stron, zmieniając tylko jeden plik CSS. To podejście zwiększa wydajność i ułatwia konserwację strony, co jest szczególnie ważne w większych projektach. W praktyce, aby załadować różne style dla różnych urządzeń, możemy użyć atrybutu 'media', co pozwoli na bardziej elastyczne podejście do zarządzania stylami.

Pytanie 10

Klucz obcy w bazie danych jest tworzony w celu

A. określenia relacji 1..n łączącej go z kluczem głównym innej tabeli
B. łączenia go z innymi kluczami obcymi w tabeli
C. stworzenia formularza do wprowadzania danych do tabeli
D. umożliwienia jednoznacznej identyfikacji rekordu w bazie danych
Klucz obcy w tabeli jest fundamentalnym elementem w relacyjnych bazach danych, który umożliwia tworzenie relacji pomiędzy tabelami. W szczególności, definiuje relację 1..n, co oznacza, że jeden rekord w tabeli, w której znajduje się klucz główny, może być powiązany z wieloma rekordami w tabeli, która posiada klucz obcy. Taki mechanizm pozwala na strukturalne powiązanie danych, co jest kluczowe dla zapewnienia integralności referencyjnej. Na przykład, w bazie danych zarządzającej informacjami o klientach i ich zamówieniach, klucz obcy w tabeli zamówień może wskazywać na klucz główny w tabeli klientów, co pozwala na łatwe śledzenie, które zamówienia są przypisane do konkretnego klienta. Zastosowanie kluczy obcych wspiera również dobre praktyki projektowania baz danych, takie jak normalizacja, co minimalizuje redundancję danych i poprawia ich spójność. Zgodność z tymi zasadami jest zgodna z wytycznymi organizacji takich jak ISO/IEC 9075 oraz ANSI SQL, które promują efektywne zarządzanie danymi.

Pytanie 11

Jakie kodowanie w języku HTML pozwala na sformatowanie paragrafu dla tekstu

 Tekst może być zaznaczony albo istotny dla autora

należy użyć polecenia?
A. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny dla autora</p>
B. <p>Tekst może być <mark>zaznaczony albo <i>istotny</i> dla autora</mark></p>
C. <p>Tekst może być <mark>zaznaczony albo <em>istotny</em> dla autora</mark></p>
D. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
Wybrana odpowiedź jest poprawna, ponieważ stosuje prawidłowe znaczniki HTML do formatowania tekstu. Użycie <mark> dla słowa 'zaznaczony' wskazuje, że jest to istotna informacja, podczas gdy <em> dla słowa 'istotny' podkreśla jego znaczenie w kontekście treści. Zgodnie z W3C i HTML5, <mark> jest używany do oznaczania części tekstu, która jest wyróżniona w kontekście przeszukiwanym lub istotnym. Oznaczenie tekstu jako <em> nie tylko wskazuje na akcent, ale również ma znaczenie semantyczne, ponieważ może wpłynąć na sposób, w jaki czytniki ekranu interpretują treść, co jest kluczowe dla dostępności. Przykładem zastosowania może być strona internetowa, na której chcemy wyróżnić ważne informacje lub kluczowe definicje, co zwiększa czytelność i funkcjonalność przekazu. Poprawne użycie znaczników HTML jest zgodne z dobrymi praktykami tworzenia stron internetowych, co sprzyja lepszej nawigacji i zrozumieniu tekstu przez użytkowników.

Pytanie 12

Jakie jest zadanie funkcji PHP o nazwie mysql_num_rows()?

A. zwrócić liczbę wierszy znajdujących się w wyniku zapytania
B. zwrócić następny rekord z wynikami zapytania
C. ponumerować rekordy w bazie danych
D. zwrócić rekord o numerze podanym jako parametr funkcji
Funkcja mysql_num_rows() w PHP jest używana do zwracania liczby wierszy w wyniku zapytania SQL, co jest kluczowe w pracy z danymi w bazach danych. Gdy wykonujemy zapytanie, na przykład za pomocą mysql_query(), otrzymujemy wynik w formie zasobu. Funkcja mysql_num_rows() pozwala na określenie, ile wierszy zostało zwróconych przez to zapytanie. To jest szczególnie przydatne w sytuacjach, gdy chcemy wiedzieć, czy dane istnieją, na przykład w aplikacjach webowych, gdzie użytkownik szuka określonych informacji. Oznacza to, że możemy dostosować logikę naszej aplikacji na podstawie liczby wyników. Ponadto, korzystając z tej funkcji, możemy monitorować i optymalizować zapytania, co jest zgodne z najlepszymi praktykami w zakresie wydajności i zarządzania bazami danych. Warto również zauważyć, że mysql_num_rows() działa w kontekście wywołania do bazy danych, co oznacza, że musi być używana w kontekście zasobu wynikowego, aby działać poprawnie.

Pytanie 13

W jaki sposób wykonanie podanej poniżej kwerendy SQL wpłynie na tabelę pracownicy?

ALTER TABLE pracownicy MODIFY plec char9);
A. Zmieni typ danych kolumny plec na znakowy o zmiennej długości 9.
B. Doda kolumnę plec ze znakowym typem danych o zmiennej długości 9.
C. Zmieni typ danych kolumny plec na znakowy o stałej długości 9.
D. Doda kolumnę plec ze znakowym typem danych o stałej długości 9.
Wykonanie kwerendy SQL ALTER TABLE pracownicy MODIFY plec char(9) zmienia typ danych kolumny 'plec' w tabeli 'pracownicy' na typ znakowy o stałej długości wynoszącej 9 znaków. Oznacza to, że każda wartość w tej kolumnie może zajmować do 9 znaków, a system będzie rezerwować dokładnie tę ilość miejsca w bazie danych. Typ char jest używany, gdy znana jest maksymalna długość danych, co pozwala na bardziej efektywne zarządzanie pamięcią i skrócenie czasu dostępu do danych. Przykładem zastosowania tego typu danych może być, na przykład, przechowywanie informacji o płci, gdzie 'M' oznacza mężczyznę, a 'K' kobietę. Przed wprowadzeniem tej kwerendy ważne jest, aby upewnić się, że wszystkie istniejące dane w kolumnie plec są zgodne z nowym formatem, aby uniknąć potencjalnych problemów z utratą danych lub błędami podczas konwersji. Standardy SQL, takie jak ANSI SQL, definiują typy danych i operacje na nich, co zapewnia, że kwerendy są przenośne między różnymi systemami baz danych.

Pytanie 14

Która lista jest interpretacją przedstawionego kodu?

<ol>
    <li>muzyka
        <ul>
            <li>Wpis1</li>
            <li>Wpis2</li>
        </ul>
    </li>
    <li>filmy
        <ul>
            <li>Wpis3</li>
            <li>Wpis4</li>
        </ul>
    </li>
</ol>
A. Lista nieuporządkowana zawierająca wszystkie składniki, jeden za drugim.
B. Lista uporządkowana z dwoma składnikami, z których każdy ma wewnętrzną listę nieuporządkowaną.
C. Lista uporządkowana z sześcioma następującymi elementami.
D. Lista uporządkowana z podpunktami zapisanymi w formie numeracji dziesiętnej (np. 1.1, 1.2).
Przedstawiony kod HTML jest przykładem zagnieżdżonych list uporządkowanych i nieuporządkowanych. Na poziomie głównym użyto listy uporządkowanej oznaczonej tagiem <ol> która tworzy listę numerowaną. Listy zagnieżdżone opisane są za pomocą tagu <ul> co oznacza listy nieuporządkowane punktowane. Wewnętrzna struktura kodu pokazuje jak zagnieżdżać listy aby tworzyć hierarchiczne struktury które są często stosowane na stronach internetowych do organizowania treści. Taka organizacja danych jest szczególnie przydatna w przypadku tworzenia menu rozwijanych lub katalogów. Aby zrozumieć prawidłowość tej struktury należy zapoznać się z zasadą zagnieżdżania elementów w HTML gdzie jeden element może zawierać inne w celu tworzenia bardziej złożonych układów. Popularnymi zastosowaniami są również generowanie drzew katalogów oraz nawigacji w witrynach. Standardy HTML sugerują takie podejście do strukturyzacji danych aby były one semantycznie poprawne a zarazem łatwe do odczytania przez przeglądarki internetowe co zwiększa ich dostępność i użyteczność. Praktyka ta jest zgodna z dobrymi praktykami projektowania webowego gdzie zrozumiałość kodu oraz jego struktura są kluczowe dla dalszego rozwoju czy utrzymania aplikacji.

Pytanie 15

Aby film wyglądał płynnie, liczba klatek (które nie nakładają się na siebie) na sekundę powinna wynosić przynajmniej w przedziale

A. 24-30 fps
B. 20-23 fps
C. 16-19 fps
D. 31-36 fps
Odpowiedź 24-30 fps jest poprawna, ponieważ standardowy zakres klatek na sekundę dla filmów wynosi właśnie 24-30 fps. W praktyce, 24 fps jest uznawane za minimum dla filmów kinowych, co pozwala uzyskać wrażenie ruchu, które ludzie uznają za płynne. Przykładowo, filmy kręcone w tej klatkażu, takie jak klasyczne produkcje Hollywood, często korzystają z techniki zwanej 'motion blur', która dodatkowo poprawia wrażenie płynności. W przypadku telewizji, większa liczba klatek może być stosowana, co pozwala na lepszą jakość obrazu podczas szybkich ruchów, jednak 30 fps to standard dla wielu programów telewizyjnych. Ważne jest również zrozumienie, że zbyt niska liczba klatek, jak na przykład 16-19 fps, może prowadzić do efektu stroboskopowego, co jest nieprzyjemne dla widza. Normy branżowe, takie jak SMPTE (Society of Motion Picture and Television Engineers), potwierdzają, że liczba klatek między 24 a 30 fps jest odpowiednia do uzyskania zamierzonego efektu wizualnego w filmie.

Pytanie 16

Z tabel Artykuly oraz Autorzy należy wyodrębnić tylko nazwiska autorów oraz tytuły ich artykułów, które uzyskały ocenę 5. Odpowiednia kwerenda do pozyskania tych informacji ma postać

Ilustracja do pytania
A. SELECT nazwisko, tytul FROM autorzy, artykuly WHERE ocena == 5;
B. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = artykuly.id;
C. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id;
D. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5;
Odpowiedź SELECT nazwisko tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5; jest poprawna ponieważ precyzyjnie wykorzystuje konstrukcję SQL do połączenia tabel Autorzy i Artykuly. JOIN łączy te tabele na podstawie klucza obcego autorzy_id w tabeli Artykuly który odpowiada kluczowi głównemu id w tabeli Autorzy. To pozwala na uzyskanie pełnej informacji o autorach i ich artykułach. Klauzula WHERE ocena = 5 filtruje wyniki i zwraca jedynie te które mają ocenę równą 5. Jest to standardowe podejście w SQL do pobierania danych na podstawie określonych kryteriów co jest bardzo efektywne w zarządzaniu dużymi zbiorami danych. Praktyczne zastosowanie tego typu kwerend obejmuje na przykład systemy rekomendacji artykułów gdzie tylko dobrze ocenione treści są pokazywane użytkownikom. Stosowanie takich kwerend zgodnie z najlepszymi praktykami pozwala na utrzymanie wydajności bazy danych oraz na zapewnienie integralności danych co jest kluczowe w profesjonalnym zarządzaniu bazami danych.

Pytanie 17

Jakie funkcje należy najpierw wywołać, aby aplikacja PHP mogła nawiązać połączenie z bazą danych?

A. mysql_create_db
B. mysqli_close
C. mysql_select_db
D. mysqli_connect
Odpowiedź 'mysqli_connect' jest prawidłowa, ponieważ to właśnie ta funkcja jest pierwszym krokiem w nawiązywaniu połączenia z bazą danych w PHP. Funkcja ta przyjmuje parametry takie jak nazwa hosta, użytkownik, hasło oraz nazwa bazy danych, co pozwala na zbudowanie komunikacji między aplikacją a bazą danych. Dzięki temu, programista uzyskuje dostęp do danych przechowywanych w bazie, co jest kluczowe dla dynamicznych aplikacji webowych. Przykład użycia tej funkcji to: $link = mysqli_connect('localhost', 'username', 'password', 'database_name');. Warto pamiętać, że dobrym zwyczajem jest również sprawdzenie, czy połączenie zostało nawiązane poprawnie, co można zrobić za pomocą instrukcji if, aby uniknąć błędów w działaniu aplikacji. W kontekście najlepszych praktyk, ważne jest, aby unikać używania przestarzałych funkcji, takich jak mysql_connect, które nie obsługują nowoczesnych standardów bezpieczeństwa. Użycie mysqli_connect zapewnia większą funkcjonalność i bezpieczeństwo, a także jest zgodne z aktualnymi standardami programowania w PHP.

Pytanie 18

Czym jest relacja w bazach danych?

A. kluczem głównym w relacji tabel
B. połączeniem dwóch pól w obrębie jednej tabeli
C. algebraicznym połączeniem tabel
D. logicznym połączeniem tabel
Relacja w bazach danych to logiczne połączenie tabel, które umożliwia organizację i zarządzanie danymi w sposób umożliwiający ich efektywne przetwarzanie. W kontekście baz danych relacyjnych, relacje tworzone są na podstawie kluczy, które pozwalają na łączenie danych z różnych tabel. Na przykład, w bazie danych e-commerce, tabela 'Klienci' może być połączona z tabelą 'Zamówienia' przez klucz klienta. Dzięki temu, gdy zapytamy o zamówienia konkretnego klienta, silnik bazy danych może wykonać zapytanie łączące te obie tabele, dostarczając spójny zestaw danych. Taki model relacyjny oparty jest na teorii zbiorów i algebrze relacyjnej, co pozwala na skomplikowane operacje, takie jak łączenie, filtrowanie i agregowanie danych. W praktyce, relacje w bazach danych są kluczowe dla zapewnienia integralności danych, eliminacji redundancji oraz zwiększenia wydajności operacji na danych. Standardy takie jak SQL oparte są na tych koncepcjach, co czyni je fundamentalnymi w programowaniu baz danych.

Pytanie 19

Zgodnie z zasadami ACID dotyczącymi przeprowadzania transakcji wymóg izolacji (ang. isolation) wskazuje, że

A. pod określonymi warunkami dane modyfikowane przez transakcję mogą być cofnięte
B. po zrealizowaniu transakcji system bazy danych będzie zgodny
C. gdy dwie transakcje działają równocześnie, to zazwyczaj nie dostrzegają zmian wprowadzanych przez siebie
D. w sytuacji konfliktu z inną transakcją obie zmieniają te same dane równocześnie
Izolacja (ang. isolation) jest jednym z kluczowych elementów właściwości ACID, które zapewniają niezawodność transakcji w systemach baz danych. Oznacza ona, że kiedy dwie lub więcej transakcji są wykonywane równolegle, nie powinny one wzajemnie wpływać na swoje wyniki. W praktyce oznacza to, że zmiany wprowadzone przez jedną transakcję nie są widoczne dla innych transakcji, dopóki nie zostaną one zatwierdzone (ang. commit). Przykładem może być sytuacja, w której jedna transakcja aktualizuje stan konta użytkownika, a druga transakcja odczytuje saldo tego konta. Dzięki właściwości izolacji, druga transakcja nie zobaczy zmian wprowadzonych przez pierwszą, co zapobiega niepożądanym efektom, takim jak odczytanie nieaktualnych danych. W praktycznych rozwiązaniach, takich jak bazy danych współczesnych systemów informatycznych, często stosuje się różne poziomy izolacji, takie jak Read Uncommitted, Read Committed, Repeatable Read czy Serializable, które pozwalają na dostosowanie stopnia izolacji do specyficznych wymagań aplikacji. Właściwe skonfigurowanie poziomu izolacji ma kluczowe znaczenie dla zachowania integralności danych oraz wydajności systemu.

Pytanie 20

Dostępna jest tabela uczniowie, która zawiera pól id, imie, nazwisko, data_ur (format rrrr-mm-dd). Które zapytanie w SQL wyświetli tylko imiona oraz nazwiska uczniów urodzonych w roku 2001?

A. SELECT imie, nazwisko FROM uczniowie WHERE data_ur like "2001-%-%"
B. SELECT id, imie, nazwisko, data_ur FROM uczniowie WHERE data_ur like "2001-*-*"
C. SELECT * FROM uczniowie WHERE data_ur == 2001-%-%
D. SELECT * FROM uczniowie WHERE data_ur like "2001"
Wybrana odpowiedź jest prawidłowa, ponieważ wykorzystuje odpowiednią składnię SQL do wyszukania imion i nazwisk uczniów, których data urodzenia przypada na rok 2001. Użycie klauzuli 'LIKE' wraz z wzorcem '2001-%-%' jest kluczowe – znak '%' w SQL reprezentuje dowolny ciąg znaków (w tym również brak znaków). Oznacza to, że jakiekolwiek miesiące i dni mogą występować po roku '2001', co jest zgodne z formatem daty 'rrrr-mm-dd'. Tego typu zapytania są używane w praktycznych zastosowaniach w bazach danych, na przykład przy tworzeniu raportów dotyczących uczniów, którzy urodzili się w określonym roku. Umożliwia to efektywne zarządzanie danymi i przyspiesza proces analizy, co jest zgodne z dobrymi praktykami w zakresie przetwarzania danych. W kontekście SQL, selekcja konkretnych kolumn, takich jak 'imie' i 'nazwisko', jest bardziej efektywna niż pobieranie wszystkich danych, co może być istotne w przypadku większych zestawów danych. Warto również zwrócić uwagę na znaczenie odpowiedniego formatowania dat, co jest kluczowe dla poprawności zapytań do baz danych.

Pytanie 21

Kod

$liczba2 = &$liczba1;
wskazuje, że zmienna $liczba2 jest
A. wskaźnikiem do $liczba1
B. referencją do $liczba1
C. iloczynem logicznym ze zmienną $liczba1
D. negacją logiczną zmiennej $liczba1
Wskaźnik to pojęcie obecne w językach takich jak C/C++, ale w PHP wskaźniki nie są bezpośrednio używane. W PHP mówimy o referencjach, które działają na wyższym poziomie abstrakcji, pozwalając na współdzielenie wartości między zmiennymi bez użycia wskaźników. Twierdzenie, że zmienna \$liczba2 jest wskaźnikiem do \$liczba1, jest błędne, ponieważ PHP nie obsługuje wskaźników w klasycznym rozumieniu. Negacja logiczna oznaczałaby wykorzystanie operatora negacji (!) i zmienienie wartości logicznej zmiennej. W kontekście kodu PHP negacją byłoby użycie wyrażenia typu \"\$liczba2 = !\$liczba1\", co oznacza konwersję wartości na jej przeciwność logiczną. Wreszcie, iloczyn logiczny wymaga użycia operatora koniunkcji (&&) dla dwóch wartości logicznych i nie odnosi się do referencji. Iloczyn logiczny zwraca prawdę tylko wtedy, gdy oba operand są prawdziwe, co w opisie kodu nie ma zastosowania. Każda z tych błędnych interpretacji wynika z mylnego zrozumienia podstawowych mechanizmów języka PHP, które koncentrują się na referencjach jako sposobie efektywnego zarządzania pamięcią i współdzielenia danych.

Pytanie 22

W tabeli produkt znajdują się przedmioty wyprodukowane po roku 2000, z kolumnami nazwa i rok_produkcji. Klauzula SQL pokaże listę przedmiotów wyprodukowanych

SELECT * FROM `produkt` WHERE SUBSTR(rok_produkcji,3,2)=17;
A. przed rokiem 2017
B. w roku 2017
C. w latach innych niż 2017
D. po roku 2017
Wybór odpowiedzi "w roku 2017" jest prawidłowy, ponieważ zapytanie SQL stosuje funkcję SUBSTR do wydobycia części roku produkcji. Funkcja ta zaczyna od trzeciego znaku w łańcuchu reprezentującym rok produkcji i zwraca dwa znaki, co w przypadku roku 2017 daje nam '17'. W związku z tym zapytanie wyświetli jedynie te przedmioty, których rok produkcji kończy się na '17', co obejmuje rok 2017. Zastosowanie funkcji SUBSTR jest częstą praktyką w SQL, gdy chcemy analizować lub filtrować dane tekstowe według określonych wzorców. Na przykład, w przypadku bazy danych produktów, możemy wykorzystać tę metodę do kategoryzowania towarów według roczników lub do analizy sprzedaży w danym roku. Dobrą praktyką jest także zapewnienie, że dane w kolumnie rok_produkcji są przechowywane w jednolitym formacie, co ułatwia ich przetwarzanie i analizę.

Pytanie 23

Liczba 0x142, przedstawiona w skrypcie JavaScript, jest zapisywana w postaci

A. dziesiętnej
B. ósemkowej
C. dwójkowej
D. szesnastkowej
Odpowiedzi sugerujące, że liczba 0x142 jest zapisana w systemie dziesiętnym, dwójkowym lub ósemkowym, są błędne z kilku powodów. System dziesiętny, bazujący na podstawie 10, używa cyfr od 0 do 9. Gdyby 0x142 byłoby w systemie dziesiętnym, nie miałby prefiksu '0x', a jego wartość wynosiłaby 322, co jest całkowicie inną reprezentacją. Z kolei system dwójkowy, znany również jako binarny, używa tylko dwóch cyfr: 0 i 1. Liczba 0x142 w systemie binarnym wynosi 101000010, co jest zupełnie inną formą niż przedstawienie szesnastkowe. Na koniec, system ósemkowy, mający podstawę 8, obejmuje cyfry od 0 do 7. Aby wyrazić 0x142 w systemie ósemkowym, należałoby najpierw przekonwertować ją na dziesiętną, co dałoby 322, a następnie na ósemkowy, co dawałoby 502. Tak więc żadna z tych odpowiedzi nie jest poprawna, ponieważ 0x142 jest jednoznacznie zapisane w systemie szesnastkowym.

Pytanie 24

Który z parametrów obiektu graficznego zmieni się po zmianie wartości kanału alfa?

A. Kolejność wyświetlenia pikseli
B. Przezroczystość
C. Ostrość krawędzi
D. Nasycenie barw
Kanał alfa jest kluczowym parametrem w zarządzaniu przezroczystością obiektów graficznych. Przezroczystość definiuje, w jakim stopniu dany obiekt jest widoczny na tle innych elementów graficznych. W systemach graficznych, takich jak Adobe Photoshop czy GIMP, kanał alfa może przyjmować wartości od 0 (całkowicie przezroczysty) do 255 (całkowicie nieprzezroczysty). Kiedy zmieniamy wartość kanału alfa, manipuluje to stopniem przezroczystości danego obiektu, co ma kluczowe znaczenie w projektowaniu graficznym oraz w tworzeniu efektów wizualnych. Przykładowo, w projektowaniu interfejsów użytkownika często stosuje się przezroczystość do uzyskania efektów wizualnych, które poprawiają estetykę oraz funkcjonalność. Dobrą praktyką jest używanie przezroczystości w celu tworzenia głębi i warstwowości w grafice, co może być przydatne w animacjach oraz w aplikacjach mobilnych, gdzie przejrzystość elementów interfejsu wpływa na użyteczność i doświadczenie użytkownika. Warto pamiętać, że manipulowanie kanałem alfa powinno być wcześniej przemyślane, aby osiągnąć zamierzony efekt wizualny bez negatywnego wpływu na czytelność i odbiór projektu.

Pytanie 25

Jaki zapis znacznika <div> może występować w dokumencie HTML tylko raz, a jego ponowne użycie spowoduje pojawienie się błędów podczas walidacji dokumentu?

A. <div>
B. <div id="identyfikator">
C. <div class="klasa">
D. <div class="klasa1 klasa2">
Zapis <div class="klasa1 klasa2"> nie narusza zasad walidacji HTML, ponieważ atrybut class może występować wielokrotnie w obrębie dokumentu. Dzięki temu, można przypisać wiele klas do jednego elementu, co jest przydatne w przypadku stylizacji CSS, gdzie różne klasy mogą być wykorzystywane do różnych celów. Zastosowanie wielu klas umożliwia elastyczne zarządzanie stylami, jednak nie wpływa na unikalność elementów. Z kolei zapis <div class="klasa"> jest również poprawny i pozwala na przypisanie pojedynczej klasy do elementu. Klasy są przydatne w kontekście grupowania elementów lub stosowania do nich wspólnych stylów, co jest zgodne z zasadami modularności w CSS. Natomiast zapis <div> jest ogólnym rozwiązaniem, które nie wprowadza żadnych specyfikacji, ale również nie generuje błędów walidacyjnych. Zrozumienie różnicy między atrybutem id a atrybutem class jest kluczowe w HTML. Na przykład, stosując id, jesteśmy zobowiązani do jego unikalności, co nie jest wymagane dla klas. Dla wielu początkujących programistów mylenie tych dwóch atrybutów może prowadzić do nieporozumień i problemów z walidacją kodu. Przy projektowaniu stron internetowych należy skupić się na ich strukturyzacji oraz semantyce, aby zapewnić łatwiejsze zarządzanie kodem i jego przyszłą rozbudowę.

Pytanie 26

Które z poniższych poleceń przyznaje użytkownikowi uczen najniższy poziom uprawnień w zakresie zmiany danych i struktury tabel?

A. GRANT INSERT, DROP ON szkola.przedmioty TO uczen;
B. GRANT ALTER, SELECT ON szkola.przedmioty TO uczen;
C. GRANT SELECT ON szkola.przedmioty TO uczen;
D. GRANT DROP ON szkola.przedmioty TO uczen;
Odpowiedź GRANT SELECT ON szkola.przedmioty TO uczen jest poprawna, ponieważ przyznaje użytkownikowi 'uczen' jedynie uprawnienia do odczytu danych w tabeli 'przedmioty' w bazie danych 'szkola'. Uprawnienia SELECT pozwalają na przeglądanie danych, co jest istotne w kontekście nauki czy oceny przedmiotów, ale nie zezwalają na modyfikację danych ani na zmiany w strukturze tabeli. To podejście jest zgodne z zasadą minimalnych uprawnień, co oznacza, że użytkownik powinien mieć tylko te uprawnienia, które są niezbędne do wykonania swoich zadań. W praktyce, przyznawanie tylko uprawnień SELECT jest szczególnie ważne w środowiskach edukacyjnych, gdzie chcemy zapewnić uczniom dostęp do informacji, ale jednocześnie chronić integralność danych. W kontekście dobrych praktyk, ograniczenie dostępu do danych wrażliwych jest kluczowe, a nadawanie zbyt szerokich uprawnień może prowadzić do nieautoryzowanych zmian lub utraty danych.

Pytanie 27

W PHP, aby poprawnie zakończyć połączenie z bazą danych MySQL, ostatnim krokiem powinno być użycie polecenia

A. exit
B. mysqli_close
C. mysql_exit
D. die
Aby prawidłowo obsłużyć połączenie z bazą danych MySQL w języku PHP, kluczowym krokiem jest zamknięcie tego połączenia po zakończeniu operacji na bazie danych. Najlepszą praktyką jest użycie funkcji mysqli_close. Ta funkcja jest częścią rozszerzenia MySQLi (MySQL Improved), które oferuje nowoczesne podejście do komunikacji z bazą danych, w tym zwiększone bezpieczeństwo i wydajność. Po wywołaniu mysqli_close, wszystkie zasoby związane z połączeniem są zwalnianie, co pozwala na uniknięcie potencjalnych wycieków pamięci. Przykładowe użycie: $connection = mysqli_connect('host', 'user', 'password', 'database'); // Po dokonaniu operacji na bazie danych mysqli_close($connection);. Ważne jest, aby zamykać połączenia, szczególnie w aplikacjach działających w środowisku produkcyjnym, aby zapewnić optymalne wykorzystanie zasobów serwera oraz bezpieczeństwo danych. Standardowe zalecenia dokumentacji PHP podkreślają znaczenie użycia mysqli_close w celu zakończenia sesji z bazą danych, co sprzyja stabilności i niezawodności aplikacji.

Pytanie 28

Określ złożoność obliczeniową algorytmu naiwnego (zwykłego) poszukiwania minimum w kolekcji liczb?

A. O(n3)
B. O(n)
C. O(n!)
D. O(n2)
Algorytm naiwnego (zwykłego) wyszukiwania minimum w zbiorze liczb charakteryzuje się złożonością obliczeniową O(n), co oznacza, że jego czas wykonania rośnie liniowo w zależności od liczby elementów w zbiorze. W praktyce oznacza to, że aby znaleźć najmniejszy element w zbiorze liczb, algorytm przeszukuje wszystkie elementy, porównując je ze sobą. W przypadku zbioru zawierającego n elementów, konieczne jest wykonanie n-1 porównań, co skutkuje liniową złożonością. Wyszukiwanie minimum jest użyteczne w wielu aplikacjach, takich jak analiza danych, gdzie może być wykorzystywane do szybkiego lokalizowania najniższej wartości w zestawie wyników. Dobrymi praktykami w tym zakresie są stosowanie tego algorytmu w sytuacjach, gdy zbiór danych jest relatywnie mały lub gdy zależy nam na prostocie i czytelności kodu. Złożoność O(n) jest optymalna dla tego typu operacji, ponieważ nie da się znaleźć minimum bez przeszukania każdego elementu przynajmniej raz, co potwierdza zasadę, że konieczne jest zbadanie wszystkich danych w celu uzyskania poprawnego wyniku.

Pytanie 29

Która z komórek tabeli została sformatowana przedstawionym stylem CSS zakładając, że pozostałe własności przyjmują wartości domyślne?

td {
  border: 1px solid black;
  padding: 15px;
  height: 40px;
  vertical-align: bottom;
}
dane w tabeli


dane w tabelidane w tabelidane w tabeli
Komórka 1Komórka 2Komórka 3Komórka 4
A. Komórka 3.
B. Komórka 1.
C. Komórka 4.
D. Komórka 2.
Gratulacje, to jest prawidłowa odpowiedź! Styl CSS, który został podany, określa, że komórka tabeli ma obramowanie o grubości 1px i kolorze czarnym, wewnętrzny margines (padding) o wielkości 15px, wysokość 40px oraz wyrównanie tekstu do dołu (vertical-align: bottom). Komórka 3. jest jedyną, która spełnia te kryteria - tekst jest wyrównany do dołu, a komórka ma widoczne obramowanie i odpowiednią wysokość. Formatowanie CSS jest kluczowym aspektem projektowania stron internetowych, które pozwalają na personalizację wyglądu elementów na stronie. Kiedy formatujesz komórkę tabeli w CSS, musisz zwrócić uwagę na szczegóły, takie jak wysokość, wewnętrzny margines, narożniki i wyrównanie tekstu. Wszystko to wpływa na ostateczny wygląd i doświadczenie użytkownika na stronie. Pamiętaj, że praktyka jest kluczem do zrozumienia, jak te elementy razem pracują, dlatego zawsze warto eksperymentować z różnymi ustawieniami.

Pytanie 30

Możliwość utworzenia konta użytkownika jan z hasłem janPass można osiągnąć przy pomocy polecenia

A. CREATE USER 'jan'@'localhost' PASSWORD EXPIRE;
B. CREATE USER 'jan'@'%localhost' IDENTIFIED VIA mysql_native_password USING 'janPass';
C. CREATE USER 'jan'@'localhost';
D. CREATE USER 'jan'@'localhost' IDENTIFIED BY 'janPass';
Odpowiedź ta jest poprawna, ponieważ prawidłowo wykorzystuje składnię polecenia SQL do tworzenia użytkownika w bazie danych MySQL. Polecenie 'CREATE USER 'jan'@'localhost' IDENTIFIED BY 'janPass';' tworzy nowego użytkownika o nazwie 'jan' z hasłem 'janPass', które jest wymagane do autoryzacji. Użycie 'IDENTIFIED BY' jest zgodne z najlepszymi praktykami w zakresie bezpieczeństwa, ponieważ pozwala na bezpośrednie zdefiniowanie hasła w momencie tworzenia konta użytkownika. W praktyce, stworzenie użytkownika z odpowiednim hasłem jest kluczowym krokiem w zarządzaniu bazą danych, zwłaszcza w kontekście bezpieczeństwa danych. Umożliwia to ograniczenie dostępu do zasobów bazy danych tylko do autoryzowanych użytkowników. Dodatkowo, w codziennej pracy należy regularnie aktualizować hasła użytkowników oraz stosować złożone hasła, aby zwiększyć poziom bezpieczeństwa. Warto również zaznaczyć, że w nowoczesnych wersjach MySQL możliwe jest użycie dodatkowych opcji, takich jak 'REQUIRE SSL', dla podniesienia poziomu zabezpieczeń przy nawiązywaniu połączeń.

Pytanie 31

Do jakich zadań można wykorzystać program FileZilla?

A. kompilowania skryptu na stronie
B. sprawdzania poprawności strony internetowej
C. analizowania skryptu na stronie
D. publikacji strony internetowej
Walidacja strony internetowej polega na sprawdzaniu poprawności kodu HTML lub CSS, co zapewnia, że witryna jest zgodna z określonymi standardami, takimi jak W3C. Narzędzia do walidacji, takie jak W3C Validator, służą do analizy kodu źródłowego, wskazując błędy, które mogą wpłynąć na wyświetlanie strony w różnych przeglądarkach. W kontekście FileZilla, to oprogramowanie nie jest zaprojektowane do tego celu, a jego użycie w tej roli byłoby mylnym podejściem. Debugowanie skryptu na stronie, na przykład w językach JavaScript czy PHP, wymaga zastosowania narzędzi takich jak debugger w przeglądarkach internetowych lub IDE. FileZilla nie oferuje żadnych funkcji debugowania, co sprawia, że jest to nieodpowiedni wybór dla programistów zajmujących się rozwiązywaniem problemów w kodzie. Podobnie, kompilacja skryptu, jak w przypadku języków programowania, takich jak C++ czy Java, wymaga narzędzi kompilacyjnych, a nie klienta FTP. FileZilla nie przetwarza ani nie kompiluje kodu, więc nie może być użyta w tym kontekście. Typowym błędem myślowym jest mylenie narzędzi używanych do transferu plików z tymi, które są używane do programowania i rozwoju aplikacji webowych. Właściwe zrozumienie ról poszczególnych narzędzi w ekosystemie tworzenia stron internetowych jest kluczowe dla efektywnej pracy i unikania nieporozumień.

Pytanie 32

DOM oferuje funkcje i atrybuty, które w JavaScript umożliwiają

A. wykonywanie operacji na zmiennych przechowujących wartości liczbowe
B. manipulowanie łańcuchami zadeklarowanymi w kodzie
C. przesyłanie danych formularza bezpośrednio do bazy danych
D. pobieranie i modyfikowanie elementów strony załadowanej w przeglądarce
DOM (Document Object Model) to interfejs programistyczny, który umożliwia manipulację strukturą dokumentu HTML lub XML za pomocą języka JavaScript. Odpowiedź dotycząca pobierania i modyfikowania elementów strony jest poprawna, ponieważ DOM dostarcza zestaw metod, takich jak getElementById, getElementsByClassName, czy querySelector, które pozwalają programistom na selekcję, edytowanie, dodawanie lub usuwanie elementów w drzewie DOM. Na przykład, używając metody document.getElementById('example'), możemy uzyskać dostęp do konkretnego elementu na stronie oraz zmienić jego zawartość, styl czy atrybuty. Takie manipulacje są kluczowe w tworzeniu interaktywnych aplikacji webowych, które reagują na działania użytkownika, co jest zgodne z najlepszymi praktykami w zakresie programowania front-end. Zmiany w DOM mogą także wpływać na wydajność strony, dlatego stosowanie odpowiednich metod i technik, takich jak unikanie zbyt częstych reflowów czy repaints, jest niezbędne dla optymalizacji. Warto również zaznaczyć, że stosowanie bibliotek, takich jak jQuery, może uprościć proces manipulacji DOM.

Pytanie 33

Jakie informacje z ośmiu wpisanych rekordów w tabeli zwierzęta zostaną przedstawione w wyniku wykonania wskazanej instrukcji SQL?

Ilustracja do pytania
A. Dika, Fuks
B. Anna Kowalska, Jan Nowak
C. Fafik, Brutus, Dika, Fuks
D. Figaro, Dika, Fuks
Zapytanie SQL SELECT imie FROM zwierzeta WHERE rodzaj = 2 AND szczepienie = 2016; filtruje wyniki według dwóch kryteriów: rodzaj musi być równy 2 i rok szczepienia musi być 2016. W danych mamy kilka zwierząt, ale tylko Dika i Fuks spełniają oba te warunki. Dika i Fuks mają rodzaj równy 2 oraz rok szczepienia 2016, co czyni je jedynymi zwierzętami w tabeli spełniającymi te kryteria. Zrozumienie tego typu zapytań wymaga znajomości składni SQL oraz logiki warunkowej. W praktyce stosowanie filtrów WHERE to jedna z podstawowych technik selekcji danych umożliwiająca precyzyjne wyciąganie rekordów z dużych zbiorów danych. Warto również zaznaczyć, że poprawne używanie takich zapytań w pracy zawodowej jest niezbędne dla zapewnienia jakości i wydajności procesów związanych z bazami danych. Wiedza ta jest kluczowa w wielu branżach, w których przetwarzanie dużych ilości danych jest codziennością.

Pytanie 34

W języku CSS, aby zdefiniować marginesy zewnętrzne o wartościach: margines górny i dolny 20 px, lewy i prawy 40 px należy użyć kodu

A. margin: 20px 20px 40px 40px;
B. margin: 20px 40px 40px 20px;
C. margin: 40px 20px;
D. margin: 20px 40px;
Poprawny zapis margin: 20px 40px; wynika z tzw. skróconej (shorthand) składni własności margin w CSS. Gdy podajemy dwie wartości, przeglądarka interpretuje je zawsze w ten sam sposób: pierwsza wartość dotyczy marginesu górnego i dolnego (top i bottom), a druga wartość dotyczy marginesu lewego i prawego (left i right). Czyli dokładnie tak, jak w treści pytania: 20 px góra/dół i 40 px lewo/prawo. To jest zgodne ze specyfikacją CSS (CSS Box Model) i działa we wszystkich współczesnych przeglądarkach. Moim zdaniem warto zapamiętać ogólny schemat dla margin i padding: – 1 wartość: wszystkie cztery strony jednakowe (margin: 20px;) – 2 wartości: góra/dół, lewo/prawo (margin: 20px 40px;) – 3 wartości: góra, lewo/prawo, dół (margin: 10px 20px 30px;) – 4 wartości: góra, prawo, dół, lewo – zgodnie z ruchem wskazówek zegara (margin: 10px 20px 30px 40px;) W praktyce zapis z dwiema wartościami jest bardzo często używany w layoutach responsywnych, np. przy centrowaniu kontenera: .container { margin: 20px auto; width: 80%; }. Zamiast podawać osobno margin-top, margin-right, margin-bottom i margin-left, używamy jednego, czytelnego skrótu. To nie tylko skraca kod, ale też ułatwia jego późniejsze utrzymanie. Dobrą praktyką jest też świadome korzystanie z jednostek. W przykładach szkolnych często pojawiają się piksele, ale w prawdziwych projektach produkcyjnych często stosuje się rem, em czy jednostki procentowe, żeby łatwiej skalować interfejs. Sama zasada działania shorthand margin pozostaje jednak identyczna, niezależnie od jednostki. Jeśli rozumiesz ten mechanizm, dużo łatwiej będzie Ci później ogarniać spacing w bardziej złożonych layoutach i frameworkach CSS, typu Bootstrap czy Tailwind, które bazują na tych samych regułach box modelu.

Pytanie 35

Kanał alfa jest wykorzystywany do określenia

A. podstawowych właściwości obiektu graficznego
B. jasności oraz kontrastu barw
C. przezroczystości grafiki obiektu
D. wybranego fragmentu grafiki obiektu
Kanał alfa w grafice komputerowej odnosi się do przezroczystości obiektów graficznych, co jest kluczowym elementem w zarządzaniu warstwami i efektami wizualnymi. Przezroczystość pozwala na tworzenie złożonych kompozycji, gdzie jeden obiekt może częściowo lub całkowicie ukrywać inny. Funkcja ta jest niezwykle istotna w aplikacjach graficznych, takich jak Photoshop czy GIMP, które obsługują kanały alfa w formatach obrazów takich jak PNG. Umożliwia to projektantom łatwe łączenie zdjęć i grafik, zachowując ich naturalną przezroczystość. W standardzie RGBA, kanał alfa przyjmuje wartości od 0 (pełna przezroczystość) do 255 (pełna nieprzezroczystość), co pozwala na precyzyjne dostosowanie efektów wizualnych. Dobre praktyki sugerują, aby zrozumieć działanie kanału alfa, aby efektywnie zarządzać przezroczystością i wpływać na postrzeganie wizualne w projektach graficznych, co jest szczególnie istotne w branży projektowania interfejsów użytkownika oraz gier komputerowych.

Pytanie 36

Aby na stronie internetowej wyświetlić logo, którego tło jest przezroczyste, należy zastosować format

A. BMP
B. JPG
C. PNG
D. CDR
Poprawnie – w przypadku logo z przezroczystym tłem na stronach WWW standardem jest format PNG. Ten format obsługuje tzw. kanał alfa, czyli dodatkową informację o przezroczystości każdego piksela. Dzięki temu możesz mieć np. białe logo, które „leży” na kolorowym lub zdjęciowym tle strony i nie ma wokół niego brzydkiego kwadratowego prostokąta. W praktyce wygląda to tak: projektant zapisuje logo z wyciętym tłem (bez tła lub z częściową przezroczystością), eksportuje je do PNG i potem w HTML wstawiasz `<img src="logo.png" alt="Logo">`. Przeglądarka sama poprawnie wyrenderuje przezroczystość. Moim zdaniem PNG to taki złoty środek dla elementów interfejsu: logo, ikony, przyciski. Format ten stosuje bezstratną kompresję, więc ostre krawędzie, tekst i cienkie linie wyglądają dużo lepiej niż w JPG. Przy logo ma to ogromne znaczenie, bo rozmazane logo firmy wygląda po prostu nieprofesjonalnie. Dodatkowo PNG jest wspierany przez wszystkie współczesne przeglądarki i systemy, więc nie trzeba kombinować z żadnymi dodatkowymi wtyczkami. W odróżnieniu od JPG, PNG nie generuje artefaktów kompresji wokół krawędzi, co jest kluczowe przy płaskiej grafice, typografii i ikonografii. Z mojego doświadczenia w projektach webowych przyjmuje się prostą zasadę: zdjęcia – JPG (lub nowoczesne formaty typu WebP/AVIF), grafika z przezroczystością i ostre elementy UI – PNG lub SVG. Dla logo rastrowego PNG z przezroczystym tłem to po prostu dobra praktyka branżowa i bezpieczny wybór, jeśli nie korzystasz z wektorowego SVG.

Pytanie 37

Tworzenie struktury logicznej strony internetowej polega na

A. umiejscowieniu elementów w wyznaczonych lokalizacjach witryny
B. określeniu zawartości witryny
C. określeniu adresów URL dla podstron serwisu
D. stworzonym zestawie grafik dla strony
Wiesz, wiele osób myli projektowanie witryny z robieniem grafik czy pisaniem treści. Całkiem to zrozumiałe, bo jest sporo różnych rzeczy związanych z tworzeniem stron. Jasne, grafiki są istotne, ale to nie wszystko, na czym się skupiamy, bo sama estetyka nie wystarczy, żeby strona była funkcjonalna. No i ustalanie adresów URL dla podstron też jest ważne, ale bardziej dotyczy struktury strony niż samego układu. Definiowanie treści to jedno, ale najważniejsze jest to, jak je prezentujemy. Często ludzie myślą, że układ i treść to to samo, a w rzeczywistości układ to to, jak treści są ułożone i jakie działania ułatwiają. Żeby dobrze zaprojektować stronę, trzeba spojrzeć na całość i zrozumieć, jakie funkcje ma spełniać, nie tylko skupiać się na pojedynczych grafikach czy tekstach. W moim odczuciu kluczowe jest, żeby myśleć o interakcji użytkownika z witryną - to wymaga umiejętności projektowania i analizy, by stworzyć efektywny interfejs.

Pytanie 38

Czy możliwa jest przedstawiona transformacja obrazu rastrowego dzięki funkcji?

Ilustracja do pytania
A. ustawienia jasności i kontrastu
B. barwienie
C. zmniejszenie liczby kolorów
D. odcienie szarości
Barwienie to proces edycji obrazu rastrowego, który polega na modyfikacji istniejących kolorów poprzez nałożenie nowego odcienia na całość lub część obrazu. Dzięki temu możemy uzyskać efekt jak na przedstawionym obrazie, gdzie oryginalne kolory zostały zastąpione jednolitą barwą. Barwienie jest powszechnie stosowane w grafice komputerowej do nadawania dramatyzmu lub zmiany nastroju obrazu, co jest szczególnie przydatne w fotografii artystycznej czy projektach reklamowych. Narzędzia takie jak Adobe Photoshop czy GIMP oferują funkcje barwienia, pozwalając artystom na twórcze eksperymenty z kolorami. Technika ta może być stosowana również w procesie tworzenia materiałów wizualnych w branży marketingowej, gdzie spójna kolorystyka jest kluczowa dla budowania rozpoznawalności marki. Ważne jest, aby pamiętać o zachowaniu naturalnego balansu i harmonii w barwach, co jest zgodne z zasadami dobrych praktyk w projektowaniu graficznym. Barwienie umożliwia również korektę kolorystyczną, co jest istotne w procesie przygotowania materiałów do druku, gdzie kolory muszą być dostosowane do specyfikacji technicznych drukarni.

Pytanie 39

Jakim zapisem w dokumencie HTML można stworzyć element, który wyświetli obrazek kotek.jpg z tekstem alternatywnym "obrazek kotka"?

A. <img href="kotek.jpg" alt="obrazek kotka">
B. <img href="kotek.jpg" title="obrazek kotka">
C. <img src="kotek.jpg" alt="obrazek kotka">
D. <img src="kotek.jpg" title="obrazek kotka">
Odpowiedź <img src="kotek.jpg" alt="obrazek kotka"> jest poprawna, ponieważ zgodnie z standardem HTML do wyświetlania obrazów należy używać atrybutu 'src', który wskazuje źródło obrazu. Atrybut 'alt' jest również niezbędny, ponieważ zapewnia tekst alternatywny dla obrazów, co jest kluczowe dla dostępności strony internetowej. Użytkownicy, którzy korzystają z technologii wspomagających, takich jak czytniki ekranu, będą mogli zrozumieć zawartość obrazu poprzez ten tekst. Dobrą praktyką jest również stosowanie odpowiednich nazw plików obrazów oraz opisowych tekstów alternatywnych, co poprawia SEO i użyteczność strony. Na przykład, jeśli w przyszłości planujesz dodać więcej obrazów kotów, warto, aby każdy z nich miał unikalny opis w atrybucie 'alt', co pomoże w lepszym zrozumieniu kontekstu przez użytkowników i roboty wyszukiwarek. W ten sposób poprawiasz zarówno dostępność, jak i indeksowalność swojej strony.

Pytanie 40

Instrukcja REVOKE SELECT ON nazwa1 FROM nazwa2 w SQL pozwala na

A. przyznawanie praw dostępu do tabeli
B. pozbawianie użytkownika uprawnień
C. usuwanie konta użytkownika z bazy danych
D. przyznawanie uprawnień za pomocą ustalonego schematu
Polecenie REVOKE SELECT ON nazwa1 FROM nazwa2 w SQL służy do cofnięcia uprawnień, które wcześniej przyznaliśmy jakiejś osobie albo roli. W kontekście baz danych, uprawnienia SELECT to po prostu możliwość oglądania danych w tabeli (nazwa1). To dosyć ważna sprawa, jeśli mówimy o bezpieczeństwie bazy. Dzięki temu możesz kontrolować, kto ma dostęp do jakich danych, co jest szczególnie istotne w przypadku różnych regulacji prawnych, jak RODO. Przykładowo, jeśli użytkownik (nazwa2) miał dostęp do tej tabeli, a później uznaje się, że nie powinien go mieć, to używasz REVOKE, żeby to cofnąć. To normalne podejście w administrowaniu bazami danych, bo bezpieczeństwo danych to bardzo ważny aspekt. Warto również czasami przeglądać, kto ma jakie uprawnienia, żeby zminimalizować ryzyko, że ktoś niepowołany dostanie się do wrażliwych informacji.