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: 12 kwietnia 2026 18:53
  • Data zakończenia: 12 kwietnia 2026 19:05

Egzamin zdany!

Wynik: 25/40 punktów (62,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

Podczas walidacji witryn internetowych nie analizuje się

A. zgodności z różnymi przeglądarkami
B. źródła pochodzenia narzędzi edycyjnych
C. działania hiperlinków
D. błędów w składni kodu
W procesie walidacji stron internetowych, źródło pochodzenia narzędzi edytorskich nie jest przedmiotem analizy, ponieważ walidacja koncentruje się na technicznych aspektach kodu HTML, CSS i JavaScript, które wpływają na funkcjonalność oraz dostępność strony. Główne obszary walidacji obejmują zgodność z przeglądarkami, co oznacza, że strona powinna działać poprawnie w różnych środowiskach przeglądarkowych. Działania linków są również monitorowane, aby zapewnić, że wszystkie odnośniki kierują do właściwych lokalizacji oraz nie prowadzą do błędów 404. Błędy składni kodu są kluczowe, ponieważ mogą znacząco wpłynąć na sposób, w jaki strona jest renderowana przez przeglądarki. Przykładowo, walidatory HTML, takie jak W3C Validator, pomagają identyfikować błędy i ostrzegają o problemach, które mogą wpłynąć na dostępność i SEO strony. Dobre praktyki wymuszają, aby każda strona internetowa była nie tylko estetyczna, ale przede wszystkim funkcjonalna i zgodna z obowiązującymi standardami, co przekłada się na lepsze doświadczenia użytkowników.

Pytanie 2

Rodzaj programowania, w którym seria poleceń (sekwencja instrukcji) jest traktowana jako program, nazywa się programowaniem

A. imperatywnym
B. funkcyjnym
C. logicznym
D. stanowym
Programowanie imperatywne to podejście, w którym programy są definiowane jako ciąg instrukcji, które komputer wykonuje w określonej kolejności. W tym modelu programista precyzyjnie określa kroki, które należy wykonać, aby osiągnąć zamierzony cel. Kluczowym elementem programowania imperatywnego jest zmiana stanu programu, co odnosi się do manipulacji danymi i kontrolowania przepływu wykonania. Przykładem mogą być języki programowania takie jak C, Java czy Python, które umożliwiają wykorzystanie zmiennych, pętli i instrukcji warunkowych. W praktyce, programowanie imperatywne jest często wykorzystywane w tworzeniu aplikacji, które wymagają precyzyjnego sterowania przepływem danych, na przykład w systemach operacyjnych czy oprogramowaniu sterującym. Zgodnie z zasadami dobrych praktyk, programowanie imperatywne promuje modularność, dzięki czemu kod jest bardziej zrozumiały i łatwiejszy w utrzymaniu. To podejście jest fundamentem dla wielu technik programistycznych, jak na przykład programowanie obiektowe, które rozszerza te zasady poprzez organizowanie kodu w oparciu o obiekty i klasy.

Pytanie 3

W kodzie HTML stworzono link do strony internetowej. Aby otworzyć tę stronę w nowym oknie lub zakładce przeglądarki, należy dodać do definicji linku atrybut

<a href="http://google.com" >strona Google</a>
A. target = "_blank"
B. target = "_parent"
C. rel = "next"
D. rel = "external"
Atrybut target w języku HTML służy do określenia, w jaki sposób ma otworzyć się dokument, do którego prowadzi odnośnik. Użycie wartości '_blank' dla atrybutu target jest standardowym sposobem na otwarcie nowej strony w nowym oknie lub zakładce przeglądarki. Przykład zastosowania to: <a href="http://google.com" target="_blank">strona Google</a>. Jest to niezwykle przydatne w kontekście UX, ponieważ pozwala użytkownikom na łatwe porównanie informacji bez utraty dostępu do oryginalnej strony. Warto również zauważyć, że użycie tego atrybutu jest zgodne z najlepszymi praktykami w tworzeniu stron internetowych, gdyż umożliwia użytkownikom zachowanie kontekstu przeglądania. W HTML5 atrybut target pozostaje wspierany, co czyni go istotnym elementem w projektowaniu interfejsów użytkownika. Oprócz '_blank' istnieją inne wartości, takie jak '_self', '_parent' i '_top', które również spełniają różne funkcje w zależności od potrzeb nawigacyjnych w aplikacji webowej.

Pytanie 4

Jakie znaki będą przechowywane w zmiennej $napis po uruchomieniu poniższego kodu PHP?

$napis = "Programowanie w PHP";
$napis = substr($napis, 3, 5);
A. gr
B. og
C. gramo
D. ogram
Gratulacje, dobrze zrozumiałeś działanie funkcji substr w języku PHP. Ta funkcja jest używana do wyodrębnienia części ciągu znaków. W tym przypadku, wyodrębnienia 5 znaków zaczynając od czwartego znaku (indeks 3) w napisie. W rezultacie, otrzymujemy ciąg 'gramo'. Warto zwrócić uwagę, że indeksowanie w PHP (podobnie jak w większości języków programowania) zaczyna się od zera, a nie od jeden. Dlatego 'czwarty' znak ma indeks 3. Używanie funkcji substr jest częstą praktyką przy manipulacji ciągami znaków w PHP, więc zrozumienie jej działania jest bardzo ważne. Przykładowo, jeżeli chcemy wyodrębnić fragment tekstu od pewnego miejsca do końca, możemy tego dokonać nie podając trzeciego parametru funkcji substr.

Pytanie 5

Efekt przedstawiony na obrazie, wykonany za pomocą edytora grafiki rastrowej, to

Ilustracja do pytania
A. rozmycie Gaussa.
B. szum RGB.
C. pikselizacja.
D. grawerowanie.
Twoja odpowiedź jest prawidłowa! Wybrany efekt to pikselizacja. Pikselizacja polega na zmniejszeniu rozdzielczości obrazu do poziomu, gdy każdy piksel staje się widoczny dla oka. Efekt ten charakteryzuje się wyraźnymi, dużymi blokami pikseli tworzącymi obraz. Jest to efekt często stosowany w grafice komputerowej, szczególnie w celu nadania grafice stylu retro. Pikselizacja była też kluczowym elementem estetyki gier wideo z lat 80. i 90., kiedy to technologiczne ograniczenia sprzętowe wymuszały korzystanie z niskiej rozdzielczości obrazu. W dzisiejszych czasach efekt pikselizacji jest często stosowany celowo, dla uzyskania określonego efektu artystycznego lub dla celów nostalgicznych. Warto jednak pamiętać, że nadmierne pikselizowanie obrazu może prowadzić do utraty szczegółów, dlatego zawsze warto dobrze przemyśleć zastosowanie tego efektu.

Pytanie 6

Normalizacja tabel to proces, którego celem jest

A. dodanie danych do bazy
B. sprawdzenie i optymalizację bazy danych
C. wizualizacja bazy
D. wyłącznie stworzenie tabel oraz relacji w bazie
Normalizacja tabel jest kluczowym procesem w projektowaniu baz danych, który ma na celu usprawnienie struktury danych poprzez eliminację redundancji i zapewnienie integralności danych. Proces ten składa się z kilku kroków, które prowadzą do stworzenia dobrze zorganizowanej bazy danych. Głównym celem normalizacji jest zminimalizowanie powielania danych, co w rezultacie prowadzi do optymalizacji przestrzeni dyskowej oraz zwiększenia wydajności zapytań. Przykładem zastosowania normalizacji jest podział tabeli zawierającej informacje o klientach i zamówieniach na dwie odrębne tabele. W ten sposób, każdy klient ma swoje unikalne dane w jednej tabeli, natomiast w drugiej tabeli zapisywane są tylko odniesienia do klientów zamiast ich powtórzeń. Dobre praktyki związane z normalizacją uwzględniają różne formy normalne, z których każda ma swoje zasady, np. pierwsza forma normalna (1NF) wymaga, aby każda kolumna w tabeli zawierała tylko atomowe wartości. Wysoka jakość projektowania baz danych, w tym normalizacja, znacząco wpływa na późniejsze zarządzanie danymi oraz ich analizy.

Pytanie 7

W HTML-u atrybut shape w znaczniku area, który definiuje kształt obszaru, może przyjąć wartość

A. poly, square, circle
B. rect, poly, circle
C. rect, triangle, circle
D. rect, square, circle
Atrybut shape znacznika area w języku HTML jest wykorzystywany do określenia kształtu obszaru, który jest aktywny w mapie obrazów. Przyjmuje on wartości rect (prostokąt), poly (wielokąt) oraz circle (okrąg). Każda z tych wartości definiuje sposób, w jaki kształt obszaru jest interpretowany przez przeglądarkę. Na przykład, wartość 'rect' wymaga czterech parametrów, które określają lewy górny i prawy dolny róg prostokąta. W przypadku 'circle', musimy podać współrzędne środka oraz promień okręgu, a 'poly' wymaga podania współrzędnych wszystkich punktów wierzchołków wielokąta. Praktyczne zastosowanie atrybutu shape pozwala na tworzenie interaktywnych map obrazów, gdzie użytkownik może klikać w różne obszary, co zwiększa dostępność i użyteczność strony. Warto pamiętać, że korzystanie z map obrazów i odpowiedniego atrybutu shape powinno być zgodne z aktualnymi standardami W3C, co wpływa na poprawność i wydajność strony internetowej.

Pytanie 8

Przedstawiona linia kreskowa w stylu obramowania CSS jest określona własnością

Ilustracja do pytania
A. doted
B. double
C. dashed
D. solid
Dobrze zrozumiałeś temat. Linia kreskowa w stylu CSS jest określana właściwością 'dashed'. Jest to jedna z kilku wartości, które można przypisać właściwości 'border-style' w języku CSS, aby manipulować wyglądem obramowania elementu. Stosowanie różnych styli linii pozwala na tworzenie bardziej skomplikowanych i estetycznie przyjemnych projektów. Na przykład, styl 'dashed' może być używany do zaznaczania linków lub przycisków, aby zwrócić uwagę użytkownika. Ważne jest jednak, aby zawsze pamiętać o utrzymaniu konsekwencji w projektowaniu stron internetowych. Dobre praktyki zalecają, aby wybierać styl obramowania, który najlepiej pasuje do ogólnego stylu strony. Podsumowując, właściwość 'border-style' jest kluczowym narzędziem w projektowaniu stron internetowych.

Pytanie 9

Barwy kolorów reprezentowane na stożku można uzyskać w modelu

A. CMYK
B. HSV
C. CIEXYZ
D. RGB
W tym pytaniu haczyk polega na tym, że różne modele barw mają zupełnie inną logikę i geometrię przedstawiania kolorów. Pomylenie ich jest bardzo częste, bo w praktyce ciągle przewijają się te same skróty: RGB, CMYK, CIEXYZ, HSV. Warto je sobie dobrze poukładać. Model RGB opisuje kolor jako kombinację trzech składowych: czerwonej, zielonej i niebieskiej. Geometrycznie przedstawia się go jako sześcian: każdy wymiar to jedna składowa, od 0 do 255 (lub 0–1 w zapisie znormalizowanym). To jest model addytywny, typowy dla monitorów, telewizorów, ekranów smartfonów. Można go wizualizować na różne sposoby, ale klasycznie nie jako stożek barw, tylko właśnie jako kostkę przestrzeni kolorów. CMYK to z kolei model subtraktywny, wykorzystywany głównie w druku – Cyan, Magenta, Yellow, Key (Black). Tutaj myśli się raczej o nałożeniu farb drukarskich niż o intuicyjnej percepcji koloru. Geometria prezentacji CMYK też nie jest stożkiem, tylko wielowymiarową bryłą, a sam model słabo nadaje się do „ludzkiego” doboru kolorów na ekranie, dlatego nie stosuje się go jako podstawy kolor-pickerów do WWW czy interfejsów. CIEXYZ jest jeszcze inną historią: to matematyczny, ustandaryzowany przez CIE model przestrzeni barw, który ma dobrze odwzorowywać ludzkie postrzeganie koloru i służy jako punkt odniesienia do kalibracji, profilowania kolorów, ICC itp. On jest fundamentem kolorometrii, ale w codziennej pracy grafika czy web developera rzadko ktoś bezpośrednio „maluje” w CIEXYZ. Typowy błąd polega na tym, że skoro każdy z tych modeli opisuje kolory, to wydaje się, że można je dowolnie przedstawić w formie stożka. Jednak stożek barw to specyficzna wizualizacja modelu o parametrach: odcień, nasycenie i jasność (lub podobne), czyli właśnie HSV/HSL. Dopiero taki podział pozwala wygodnie ułożyć barwy wokół osi (Hue) i wzdłuż wysokości (Value). Dlatego tylko HSV z podanych odpowiedzi pasuje do opisu barw reprezentowanych na stożku.

Pytanie 10

W CSS, poniższy zapis spowoduje, że czerwony kolor zostanie zastosowany do

h1::first-letter {color:red;}
A. pierwsza linia akapitu
B. pierwsza litera nagłówka pierwszego poziomu
C. tekst nagłówka pierwszego poziomu
D. pierwsza litera nagłówka drugiego poziomu
Wiesz, użycie selektora CSS ::first-letter w połączeniu z stylem h1 to fajny sposób na zmianę wyglądu pierwszej litery w nagłówku. Kiedy używasz tego, kolor czerwony sprawi, że ta litera będzie się wyróżniać, co jest super, zwłaszcza w przypadku nagłówków czy akapitów. To technika, którą często stosuje się w projektowaniu stron, żeby nadać im trochę typograficznego stylu, jak w książkach z dużymi inicjałami. Ale pamiętaj, że ten selektor działa tylko z blokowymi elementami, takimi jak <p> czy <h1>, więc jeżeli spróbujesz zastosować go z elementami liniowymi, to niestety efekty nie będą takie, jak się spodziewasz. Zawsze warto też mieć na uwadze standardy W3C, bo one pomagają w tworzeniu dostępnych stron. No i ten selektor jest częścią specyfikacji CSS Pseudo-Elements Level 3, więc przeglądarki go dobrze wspierają. Zrozumienie, jak i kiedy stosować takie selektory, to klucz do tworzenia nowoczesnych stron.

Pytanie 11

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

A. Wysyłanie zapytań do bazy, skrypty PHP
B. Przetwarzanie danych, system zarządzania treścią, projektowanie informacji
C. Szkic strony, mapa witryny, diagram przepływu informacji
D. Przyciski, menu, interakcja użytkownika z aplikacją
Wybór odpowiedzi związanej z "Szkicem strony, diagramem witryny, diagramem przepływu informacji" wskazuje na pewne nieporozumienie dotyczące definicji interfejsu użytkownika. Szkice i diagramy są narzędziami służącymi do planowania i wizualizacji struktury i funkcji strony internetowej, ale same w sobie nie definiują, co stanowi interfejs użytkownika. Te pojęcia dotyczą bardziej fazy projektowania i architektury informacji, co jest istotne, ale nie odnosi się do interakcji z użytkownikiem. Podobnie, odpowiedzi związane z "wysyłaniem kwerend do bazy" oraz "skryptami PHP" również nie definiują interfejsu użytkownika. Te elementy dotyczą backendu, czyli serwera i logiki aplikacji, które są oddzielone od bezpośredniego doświadczenia użytkownika. Często pojawia się mylne założenie, że wszystkie aspekty technologii webowej są ze sobą powiązane, jednak istotne jest rozróżnienie pomiędzy frontendem a backendem. Właściwe zrozumienie tych ról jest kluczowe dla efektywnego projektowania stron internetowych, gdzie interfejs użytkownika odgrywa fundamentalną rolę w osiąganiu zamierzonych celów użytkownika i organizacji. Właściwa separacja tych koncepcji jest istotna dla efektywności procesu projektowania i tworzenia stron internetowych.

Pytanie 12

Który z przedstawionych obrazów został przetworzony przy użyciu podanego stylu CSS?

Ilustracja do pytania
A. Rys. C
B. Rys. A
C. Rys. B
D. Rys. D
Wybór Rys. A jako poprawnej odpowiedzi jest uzasadniony zastosowaniem właściwości CSS, które są użyte w stylu. Styl CSS określa padding na 5 pikseli, co oznacza, że wokół obrazu powinna być przestrzeń wynosząca dokładnie 5 pikseli. Właściwość border ustawia obramowanie na 1 piksel, w kolorze szarym i o stylu solid, co oznacza ciągłą linię otaczającą obraz. Z kolei border-radius o wartości 10 pikseli zaokrągla rogi obramowania, co nadaje całości bardziej zaokrąglony kształt. Wszystkie te cechy są widoczne na obrazie Rys. A. W praktyce stosowanie właściwości takich jak border-radius jest często używane w projektach webowych, aby uzyskać bardziej estetyczne i nowoczesne efekty wizualne. Zaokrąglone krawędzie są estetycznie przyjemniejsze dla użytkownika i mogą poprawić czytelność oraz odbiór wizualny strony. Znajomość tych właściwości CSS jest niezbędna dla każdego front-end developera, który dąży do tworzenia nowoczesnych i funkcjonalnych interfejsów użytkownika. Praktyczne zastosowanie tego stylu może być widoczne w projektach stron internetowych, aplikacjach sieciowych oraz w tworzeniu elementów UI, które zachowują spójność wizualną z resztą projektu.

Pytanie 13

W jaki sposób funkcjonuje instrukcja do łączenia wyników zapytań INTERSECT w SQL?

A. Zwraca te wiersze, które wystąpiły w wyniku pierwszego zapytania, jednak nie były obecne w wyniku drugiego zapytania
B. Zwraca zbiór wyników z pierwszego zapytania oraz zbiór wyników z drugiego zapytania, automatycznie eliminując powtarzające się wiersze
C. Zwraca część wspólną wyników dwóch zapytań
D. Zwraca te wiersze, które wystąpiły w wyniku drugiego zapytania, natomiast nie było ich w wyniku pierwszego zapytania
Wszystkie niepoprawne odpowiedzi nie oddają istoty działania instrukcji INTERSECT. Opis dotyczący zwracania listy wyników z obu zapytań oraz usuwania powtarzających się wierszy jest mylący, ponieważ INTERSECT nie łączy wyników, lecz filtruje je, ograniczając się tylko do wspólnych wierszy. Ponadto wskazanie, że instrukcja ta zwraca wiersze z pierwszego zapytania, które nie znajdują się w drugim, jest błędne, ponieważ dotyczy to operatora EXCEPT, który działa na zasadzie różnicy zbiorów. Również stwierdzenie, że INTERSECT zwraca wiersze z drugiego zapytania, które nie występują w pierwszym, również jest mylące i nie ma podstaw w rzeczywistości działania tej instrukcji. W rzeczywistości, INTERSECT nie operuje na zasadzie różnic, lecz na zasadzie przecięcia zbiorów, co oznacza, że korzysta z logiki logicznego AND, a nie OR. Podsumowując, kluczowym elementem użycia INTERSECT jest zrozumienie, że jego zadaniem jest wyodrębnienie wspólnych elementów, co czyni go narzędziem do porównywania i analizy danych, a nie do łączenia ich czy analizy różnic.

Pytanie 14

Jakiego wyniku można się spodziewać po wykonaniu zapytania na przedstawionej tabeli?

SELECTCOUNT(DISTINCT wykonawca)
FROM`muzyka`;
IDtytul_plytywykonawcarok_nagraniaopis
1Czas jak rzekaCzesław Niemen2005Przyjdź W Taka Noc itp.
2IkonaStan Borys2014
3AerolitCzesław Niemen2017Winylowa reedycja płyty "Aerolit"
4JourneyMikołaj Czechowski2013
A. 3
B. 4
C. 1
D. 0
Zapytanie SQL SELECT COUNT(DISTINCT wykonawca) FROM muzyka; służy do zliczenia unikalnych wartości w kolumnie wykonawca w tabeli muzyka. W kontekście dostarczonej tabeli istnieje trzech różnych wykonawców: Czesław Niemen Stan Borys i Mikołaj Czechowski. Funkcja COUNT w połączeniu z DISTINCT pozwala na zliczenie jedynie unikalnych wystąpień wartości co oznacza że pomimo dwukrotnego wystąpienia Czesława Niemena zostanie on policzony tylko raz. Takie podejście jest kluczowe w analizie danych gdzie istotne jest rozważenie jedynie niepowtarzających się wartości na przykład w analizach raportów dotyczących różnorodności portfolio wykonawców w wytwórni muzycznej. Dobre praktyki w SQL zalecają użycie DISTINCT w sytuacjach wymagających precyzyjnego określenia różnorodności danych w kolumnie co nie tylko wspiera dokładność analiz ale również optymalizuje wydajność zapytań poprzez redukcję ilości danych do przetworzenia. Zrozumienie tego mechanizmu jest istotne w zarządzaniu bazami danych oraz w analizach biznesowych.

Pytanie 15

Definicja formularza została użyta na stronie internetowej, która przesyła dane do pliku napisanego w języku PHP. W jakiej tablicy będą dostępne dane z tego formularza?

Ilustracja do pytania
A. $_COOKIE
B. $_ACTION
C. $_POST
D. $_GET
Tablica $_POST w PHP służy do przechwytywania danych przesyłanych za pomocą metody POST. Jest to standardowa praktyka w przypadku formularzy, które zawierają dane wrażliwe lub dużą ilość informacji. Metoda POST przesyła dane w treści żądania HTTP, co oznacza, że nie są one widoczne w adresie URL, co zwiększa bezpieczeństwo w porównaniu do metody GET. Przykładem zastosowania mogą być formularze logowania czy przesyłania plików. W PHP dostęp do danych z formularza można uzyskać poprzez prostą składnię, na przykład $_POST['nazwa_pola']. Ważne jest, aby zawsze walidować i filtrować dane wejściowe, aby zabezpieczyć aplikację przed atakami typu SQL Injection czy XSS. Zastosowanie metody POST jest zgodne z ogólnymi zasadami bezpieczeństwa i standardami projektowania aplikacji webowych, które zalecają ograniczanie widoczności danych przesyłanych przez użytkownika. Dobre praktyki obejmują również stosowanie HTTPS, aby dodatkowo zaszyfrować dane przesyłane pomiędzy klientem a serwerem.

Pytanie 16

Który z poniższych kodów HTML odpowiada przedstawionej tabeli? Dla uproszczenia pominięto zapis dotyczący stylu obramowania tabeli oraz komórek?

Ilustracja do pytania
A. Rys. C
B. Rys. B
C. Rys. D
D. Rys. A
Rysunek A jest niepoprawny ponieważ zawiera osobne komórki dla każdego numeru telefonu co prowadzi do nieprawidłowego renderowania tabeli w kontekście prezentowanego układu Rysunek C również nie spełnia wymagań gdyż używa atrybutu colspan="2" w ostatnim wierszu co jest błędne z perspektywy przedstawionego układu ponieważ próbuje połączyć komórki w poziomie zamiast w pionie Rysunek D stosuje colspan w wierszach gdzie numer telefonu powinien być wyświetlany oddzielnie co prowadzi do problemów w wyświetlaniu danych w wierszach Tę sytuację można uznać za powszechny błąd popełniany przez osoby które nie mają doświadczenia w zarządzaniu strukturą tabel HTML Wybierając nieprawidłowe podejście łatwo można wprowadzić chaos w logice prezentacji danych co wpływa na czytelność i użyteczność strony internetowej Użytkownicy często mylnie interpretują funkcje colspan i rowspan co prowadzi do nieprawidłowego układu wizualnego i funkcjonalnego w tabelach HTML Właściwe zrozumienie różnicy między colspan a rowspan oraz ich zastosowania w różnych scenariuszach jest kluczowe dla tworzenia profesjonalnych i zgodnych ze standardami stron internetowych Poprawna odpowiedź wymaga rozumienia semantyki HTML i umiejętności praktycznego zastosowania tej wiedzy do tworzenia struktur tabelowych które są efektywne i estetyczne

Pytanie 17

W języku JavaScript, w celu przekształcenia specjalnie przygotowanego tekstu w tablicę, można wykorzystać metodę

A. slice()
B. trim()
C. split()
D. replace()
Metoda split() w języku JavaScript jest niezwykle użyteczna do dzielenia łańcucha tekstowego na elementy tablicy na podstawie określonego separatora. Gdy weźmiemy pod uwagę kontekst przetwarzania tekstu, na przykład możemy mieć ciąg znaków reprezentujący listę imion oddzielonych przecinkami, taki jak "Jan,Kasia,Piotr". Używając funkcji split(',', 2), możemy uzyskać tablicę ['Jan', 'Kasia'], co pozwala nam na łatwe manipulowanie i przetwarzanie tych danych. Metoda ta jest zgodna z zasadami programowania funkcyjnego, umożliwiając praktyczne podejście do przetwarzania danych. Warto również zauważyć, że split() może być wykorzystywana w różnorodnych kontekstach, takich jak praca z danymi z formularzy, analizowanie tekstów czy rozdzielanie argumentów w funkcjach. Stosując tę metodę, programiści powinni pamiętać o dobrych praktykach, takich jak walidacja danych wejściowych oraz zarządzanie sytuacjami, gdy ciąg wejściowy jest pusty lub nie zawiera separatora, co można osiągnąć poprzez dodatkowe sprawdzenia. W kontekście nowoczesnych aplikacji webowych, efektywne zarządzanie danymi tekstowymi jest kluczowe dla optymalizacji wydajności oraz poprawy UX, co czyni metodę split() fundamentalnym narzędziem w arsenale programisty JavaScript.

Pytanie 18

W JavaScript metoda getElementById odnosi się do

A. zmiennej numerycznej
B. znacznika HTML o podanej nazwie klasy
C. klasy zdefiniowanej w CSS
D. znacznika HTML o wskazanym id
Metoda getElementById w JavaScript jest kluczowym narzędziem do interakcji z modelowaniem DOM (Document Object Model). Służy do uzyskiwania dostępu do pojedynczego elementu HTML na podstawie jego atrybutu id, co jest zgodne z zasadą unikalności identyfikatorów w dokumencie HTML. Dzięki temu programiści mogą stosunkowo łatwo manipulować pojedynczymi elementami, co jest istotne w dynamicznych aplikacjach internetowych. Przykładem zastosowania tej metody może być zmiana tekstu w elemencie <h1>, gdzie używamy getElementById('myHeader').innerHTML = 'Nowy nagłówek';. Zgodnie z dobrymi praktykami, powinno się unikać używania zduplikowanych id w dokumencie, aby zapewnić, że metoda ta zawsze zwraca jeden, a nie wiele elementów. Warto również pamiętać, że w przypadku braku elementu o podanym id, metoda zwróci null, co powinno być uwzględnione w logice aplikacji, aby uniknąć błędów. Użycie tej metody jest standardem w programowaniu JavaScript i stanowi fundament dla wielu bardziej zaawansowanych technik manipulacji DOM.

Pytanie 19

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. grupowania.
B. wykluczenia.
C. części wspólnej.
D. sumy.
W tym zadaniu łatwo się pomylić, bo w grafice wektorowej mamy kilka różnych funkcji, które na pierwszy rzut oka wyglądają podobnie: łączą obiekty w coś, co zachowuje się jak jeden element. Jednak ich działanie „pod maską” jest zupełnie inne. Funkcje typu suma, wykluczenie czy część wspólna to klasyczne operacje boolowskie na kształtach. One zmieniają geometrię obiektów, czyli tworzą nową ścieżkę wynikową na podstawie przecięcia lub połączenia istniejących. W praktyce oznacza to, że jeśli zastosujesz sumę na tekście i wielokącie, program najczęściej zamieni tekst na krzywe i połączy wszystko w jedną ścieżkę. Efekt wizualny może być fajny, ale edytowalność tekstu przepada. Nie możesz już po prostu zmienić czcionki czy liter, bo to nie jest tekst, tylko zestaw węzłów. Podobnie z wykluczeniem: ta operacja tworzy „dziurę” jednego obiektu w drugim. Używa się jej np. do wycinania napisu z tła lub tworzenia maski. To jest typowy trik przy projektach logotypów albo efektach dekoracyjnych. Ale z punktu widzenia pytania – to działanie jest destrukcyjne dla tekstu, bo znowu zamienia go na kształt i łączy z wielokątem w sposób nieodwracalny (poza cofnięciem operacji). Część wspólna działa jeszcze ostrzej: zostawia tylko obszar, w którym obiekty się nakładają. Reszta jest tracona. To też jest operacja geometryczna, a nie organizacyjna. Typowy błąd myślowy polega na założeniu, że „skoro po operacji mam jeden obiekt, to znaczy, że to jest to samo co grupowanie”. Niestety nie. Grupowanie nie modyfikuje kształtów, tylko tworzy kontener logiczny – tak jakbyś w folderze trzymał kilka plików. Możesz je potem rozgrupować i wszystko wraca do stanu sprzed grupowania. Operacje suma, wykluczenie, część wspólna są destrukcyjne względem oryginalnych obiektów, bo generują nową ścieżkę zamiast starych. W kontekście dobrych praktyk w grafice komputerowej i multimediach przyjmuje się, że dopóki chcesz zachować pełną edytowalność (szczególnie tekstów), używasz grupowania, warstw i wyrównywania, a dopiero na późnym etapie projektu stosujesz operacje boolowskie, i to świadomie, wiedząc, że cofasz się już tylko historią edycji. Dlatego w pytaniu, gdzie mowa jest wprost o połączeniu tekstu i wielokąta w jeden obiekt w sposób odwracalny, jedyną sensowną odpowiedzią jest funkcja grupowania, a nie suma, wykluczenie czy część wspólna.

Pytanie 20

Przedstawiony w ramce fragment kwerendy SQL ma za zadanie wybrać

SELECT COUNT(wartosc) FROM ...
A. średnią w kolumnie wartosc.
B. liczbę kolumn.
C. liczbę wierszy.
D. sumę w kolumnie wartosc.
Poprawnie: wyrażenie SELECT COUNT(wartosc) ma za zadanie zwrócić liczbę wierszy, w których kolumna wartosc nie jest pusta (czyli nie ma wartości NULL). Funkcja agregująca COUNT() w SQL właśnie do tego służy – zlicza rekordy. W wersji COUNT(nazwa_kolumny) zliczane są tylko te wiersze, gdzie w tej kolumnie znajduje się jakaś konkretna wartość. To jest ważne rozróżnienie: COUNT(*) liczy wszystkie wiersze w tabeli lub wyniku kwerendy, natomiast COUNT(wartosc) pomija rekordy z NULL w tej kolumnie. Moim zdaniem to jedna z podstawowych rzeczy, które trzeba mieć „w ręku”, pracując z bazami danych. W praktyce używa się tego np. do sprawdzenia, ilu klientów podało numer telefonu, ilu pracowników ma przypisaną premię, ile zamówień ma ustawioną datę realizacji itd. Zamiast ręcznie przeglądać dane, odpalasz prostą kwerendę: SELECT COUNT(telefon) FROM klienci; i od razu wiesz, ile jest uzupełnionych pól. Dobre praktyki mówią też, żeby świadomie wybierać pomiędzy COUNT(*) a COUNT(kolumna), bo dają one różne wyniki przy brakach danych. W raportowaniu biznesowym to ma ogromne znaczenie, bo łatwo wyciągnąć złe wnioski, jeśli ktoś nie rozumie, co dokładnie liczy dana funkcja. W projektach komercyjnych COUNT() jest jedną z najczęściej używanych funkcji agregujących obok SUM(), AVG(), MIN() i MAX(), więc warto od razu nauczyć się jej poprawnej interpretacji i stosowania w połączeniu z klauzulą WHERE oraz GROUP BY, żeby liczyć wiersze spełniające konkretne warunki, np. ilu użytkowników aktywowało konto w danym miesiącu.

Pytanie 21

Jednym z atrybutów tabeli ksiazki jest status czyWypozyczona, który może przyjmować dwie wartości: true lub false. Jaki typ danych będzie najbardziej odpowiedni dla tego atrybutu?

A. DOUBLE
B. VARCHAR(5)
C. BOOLEAN
D. CHAR
Odpowiedź BOOLEAN jest optymalnym wyborem dla pola status czyWypozyczona, ponieważ reprezentuje typ danych logicznych, które mogą przyjmować jedynie dwie wartości: prawda (true) lub fałsz (false). W kontekście systemów baz danych, typ BOOLEAN jest używany do efektywnego przechowywania informacji, które mają tylko dwa możliwe stany, co pozwala na oszczędność miejsca oraz przyspieszenie operacji zapytań. Na przykład, przy tworzeniu zapytań SQL, możemy łatwo filtrować wyniki na podstawie statusu wypożyczenia, co znacząco zwiększa czytelność i wydajność kodu. Warto również zauważyć, że wiele systemów baz danych, takich jak MySQL, PostgreSQL, czy SQLite, oferują dedykowane wsparcie dla typu BOOLEAN, co czyni go zgodnym z najlepszymi praktykami w projektowaniu baz danych, w których dąży się do maksymalnej klarowności i wydajności. Dzięki temu, stosując typ BOOLEAN, nie tylko upraszczamy model danych, ale także ułatwiamy jego dalsze wykorzystanie i konserwację.

Pytanie 22

Które ze znaczników HTML umożliwią wyświetlenie na stronie tekstu w jednym wierszu, jeżeli żadne formatowanie CSS nie zostało zdefiniowane?

Dobre strony mojej strony

A. <div>Dobre strony </div><div style=”letter-spacing:3px”>mojej strony</div>
B. <h3>Dobre strony </h3><h3 style=”letter-spacing:3px”>mojej strony</h3>
C. <span>Dobre strony </span><span style=”letter-spacing:3px”>mojej strony</span>
D. <p>Dobre strony </p><p style=”letter-spacing:3px”>mojej strony</p>
Niestety, Twoja odpowiedź nie była prawidłowa. Wybrałeś jedną z odpowiedzi zawierających znaczniki blokowe: <p>, <h3> lub <div>. Te znaczniki domyślnie zaczynają nowy wiersz przed i po swoim zakończeniu, co oznacza, że tekst zawarty w kolejnych takich znacznikach będzie wyświetlany w oddzielnych wierszach. To jest dobre podejście, kiedy chcemy utworzyć strukturę dokumentu z wyraźnie zdefiniowanymi sekcjami. Jednak w przypadku pytania, które polegało na wyświetlaniu tekstu w jednym wierszu bez dodatkowego formatowania CSS, odpowiedzi z użyciem tych znaczników są niepoprawne. W takim przypadku powinniśmy skorzystać z znacznika liniowego <span>, który nie wprowadza nowych linii. Ważne jest, aby dobrze rozumieć różnice między znacznikami liniowymi i blokowymi, ponieważ mają one istotne znaczenie dla struktury i wyglądu naszej strony internetowej.

Pytanie 23

W języku JavaScript, deklaracja: ```var x=true;``` sprawia, że zmienna x ma typ

A. łańcuch znaków
B. logiczy
C. numeryczny
D. enumeracyjny
Zmienna x w JavaScript, która została zadeklarowana jako 'var x=true;', to typ logiczny, czyli boolean. W tym języku mamy dwie możliwe wartości: true (prawda) i false (fałsz). Ten typ jest naprawdę ważny, zwłaszcza gdy mówimy o warunkach w programach, bo to właśnie one są bazą dla programowania strukturalnego i obiektowego. Kiedy piszesz instrukcje if albo pętle, typ logiczny odgrywa kluczową rolę w tym, co się dzieje w programie. Fajnie jest korzystać z zmiennych logicznych, by kontrolować, co się dzieje w kodzie, a także sprawiać, że warunki są czytelniejsze. Ciekawe jest też to, że w JavaScript inne typy, jak liczby czy ciągi znaków, mogą być używane w kontekście wartości prawdziwych i fałszywych. To czyni typ logiczny bardzo elastycznym i wszechstronnym. Im lepiej rozumiesz ten typ, tym lepiej potrafisz tworzyć dynamiczne aplikacje, które dobrze reagują na różne sytuacje.

Pytanie 24

Dodanie ograniczenia klucza obcego w taki sposób, aby kolumna Klasy_id z tabeli Uczniowie była powiązana z kolumną id w tabeli Klasy zostanie wykonane przy użyciu polecenia

Ilustracja do pytania
A. ALTER TABLE Uczniowie ADD CONSTRAINT FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
B. ALTER TABLE Uczniowie ADD FOREIGN KEY FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
C. ALTER TABLE Uczniowie DROP CONSTRAINT FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
D. ALTER TABLE Uczniowie DROP FOREIGN KEY FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);
Poprawnie wskazana składnia polecenia `ALTER TABLE Uczniowie ADD CONSTRAINT FKKlasy FOREIGN KEY(Klasy_id) REFERENCES Klasy(id);` dokładnie odpowiada temu, co chcemy osiągnąć: dodać ograniczenie klucza obcego do już istniejącej tabeli. W SQL (np. w standardowym podejściu stosowanym w SQL Server, Oracle, wielu innych systemach) dodawanie klucza obcego odbywa się właśnie przez `ALTER TABLE ... ADD CONSTRAINT ... FOREIGN KEY ... REFERENCES ...`. Najpierw wskazujemy modyfikowaną tabelę (`Uczniowie`), potem nazwę nowego ograniczenia (`FKKlasy`), następnie kolumnę w tabeli podrzędnej (`Klasy_id`), a na końcu tabelę oraz kolumnę, do której się odwołujemy (`Klasy(id)`). Dzięki temu silnik bazy danych wie, że każda wartość w `Uczniowie.Klasy_id` musi mieć odpowiadający rekord w `Klasy.id`. To jest właśnie istota referencyjnej integralności danych. W praktyce takie powiązanie uniemożliwia np. dopisanie ucznia do nieistniejącej klasy albo usunięcie klasy, do której nadal przypisani są uczniowie (chyba że jawnie zdefiniujemy `ON DELETE CASCADE` czy inne zachowanie). Moim zdaniem warto też zwracać uwagę na nazewnictwo: prefiks `FK` w nazwie ograniczenia (`FKKlasy`) to dobra praktyka, bo od razu widać, że to klucz obcy, a nie np. unikalny indeks. W większych projektach przyjęcie spójnej konwencji, typu `FK_Uczniowie_Klasy`, bardzo ułatwia debugowanie błędów i analizę schematu. W codziennej pracy z bazami danych takie polecenie wykorzystuje się często po wczytaniu danych testowych albo po przebudowie tabel, gdy chcemy najpierw stworzyć strukturę bez ograniczeń, a potem krok po kroku dokładać klucze główne i obce. Warto też pamiętać, że przed dodaniem klucza obcego kolumna `Klasy_id` powinna mieć ten sam lub kompatybilny typ co `Klasy.id` (np. oba `INT`) i nie może zawierać wartości, które nie istnieją w tabeli `Klasy`, bo wtedy polecenie zakończy się błędem i klucz obcy nie zostanie utworzony.

Pytanie 25

W CSS wartości takie jak: underline, overline, line-through oraz blink odnoszą się do właściwości

A. font-decoration
B. text-decoration
C. text-align
D. font-style
Właściwość CSS 'text-decoration' jest używana do określenia dekoracji tekstu. Do jej wartości zaliczają się między innymi: 'underline' (podkreślenie), 'overline' (nadpisanie), 'line-through' (przekreślenie) oraz 'blink' (miganie), chociaż ostatnia z nich jest obecnie rzadko używana z powodu problemów z dostępnością i wsparciem w nowoczesnych przeglądarkach. W praktyce, użycie 'text-decoration' pozwala na poprawę czytelności tekstu oraz jego wyróżnienie w kontekście estetyki strony internetowej. Na przykład, stosując 'text-decoration: underline;' możemy podkreślić linki, co jest powszechną praktyką w projektowaniu stron. Zgodnie z wytycznymi W3C, stosowanie dekoracji tekstu powinno być przemyślane, aby nie wprowadzać zamieszania w interpretacji treści przez użytkowników. Przykładowo, nadpisanie może być użyte w kontekście wskazywania błędów, co wprowadza dodatkowe znaczenie do przekazu. Zrozumienie i umiejętne stosowanie 'text-decoration' jest kluczowe dla tworzenia profesjonalnych i funkcjonalnych interfejsów użytkownika.

Pytanie 26

Metainformacja “Description" zawarta w pliku źródłowym HTML powinna zawierać

<head>
    <meta name="Description" content="..." >
</head>
A. wyrazy kluczowe, z których korzystają wyszukiwarki sieciowe.
B. opis, co znajduje się na stronie.
C. nazwę programu, przy użyciu którego została stworzona strona.
D. informację, kto jest autorem strony.
Poprawna odpowiedź to 'opis, co znajduje się na stronie'. Metainformacja 'Description' w pliku źródłowym HTML jest wykorzystywana przez wyszukiwarki internetowe do wyświetlania opisu strony w wynikach wyszukiwania. Dzięki temu użytkownik może zobaczyć na pierwszy rzut oka, czy strona jest związana z jego zapytaniem, czy też nie. Jest to jedno z kluczowych narzędzi w SEO (Search Engine Optimization), które ma na celu zwiększenie widoczności strony w wynikach wyszukiwania. W praktyce, opis powinien być krótki, zwięzły i zawierać ważne informacje o treści strony. Dobrą praktyką jest również uwzględnienie kluczowych słów, na które użytkownicy mogą szukać. Opis ten powinien być zrozumiały dla użytkowników, a także jest to miejsce, gdzie można wykorzystać strategie marketingowe, aby zachęcić do odwiedzenia strony.

Pytanie 27

Najłatwiejszym i najmniej czasochłonnym sposobem na przetestowanie funkcjonowania strony internetowej w różnych przeglądarkach oraz ich wersjach jest

A. skorzystanie z narzędzia do walidacji kodu HTML
B. testowanie strony w programie Internet Explorer, zakładając, że inne przeglądarki będą kompatybilne
C. użycie emulatora przeglądarek internetowych, np. Browser Sandbox
D. zainstalowanie na kilku maszynach różnych przeglądarek i przeprowadzenie testu witryny
Wykorzystywanie walidatora języka HTML do testowania witryny w różnych przeglądarkach nie jest wystarczającą metodą. Walidatory są narzędziami, które sprawdzają poprawność kodu HTML pod kątem zgodności ze standardami W3C, ale nie oceniają, jak rzeczywiście strona będzie działać w różnych przeglądarkach. Możliwe jest, że strona przejdzie test walidacji, ale w rzeczywistości może wyświetlać się inaczej w różnych przeglądarkach z powodu różnych silników renderujących. Instalowanie różnych przeglądarek na wielu komputerach również nie jest efektywnym rozwiązaniem, gdyż wymaga znacznych nakładów czasu i zasobów, a także trudności w utrzymaniu aktualizacji i wersji. Testowanie jedynie w programie Internet Explorer, zakładając, że inne przeglądarki będą działać podobnie, jest mylne, gdyż różnice w implementacji standardów HTML, CSS i JavaScript w różnych przeglądarkach mogą prowadzić do nieoczekiwanych błędów. Takie podejście może skutkować poważnymi problemami z użytecznością, a także obniżyć jakość doświadczenia użytkownika. Istnieje zatem ryzyko, że aplikacja webowa nie będzie działać prawidłowo na kluczowych platformach, co w dzisiejszym zróżnicowanym środowisku przeglądarek stanowi istotne zagrożenie dla reputacji i funkcjonalności witryny.

Pytanie 28

Jakiego zdarzenia należy użyć, aby funkcja JavaScript była uruchamiana za każdym razem, gdy użytkownik wprowadzi jakikolwiek znak w polu edycji?

A. onclick
B. onmouseout
C. onload
D. onkeydown
Zdarzenie 'onclick' jest używane do wykrywania kliknięć myszą, a nie do monitorowania wprowadzania tekstu. Dlatego nie jest odpowiednie dla tego kontekstu, gdzie istotne jest reagowanie na każde naciśnięcie klawisza. Kiedy użytkownik klika w pole edycji, nie oznacza to, że wprowadza tekst; to zdarzenie jedynie wskazuje na interakcję myszą. Z tego powodu poleganie na 'onclick' nie pozwoli na prawidłowe reagowanie na wprowadzanie danych przez użytkownika. Z drugiej strony, 'onmouseout' jest zdarzeniem, które wywoływane jest, gdy kursor myszki opuszcza element, co również nie ma zastosowania w sytuacji, gdy chcemy monitorować tekst wprowadzany przez użytkownika. Takie podejście może prowadzić do nieporozumień, ponieważ 'onmouseout' nie dotyczy interakcji związanej z klawiaturą. Z kolei 'onload' jest stosowane do wykrywania momentu, gdy strona internetowa lub element na niej załadują się całkowicie. To zdarzenie również nie ma zastosowania w kontekście wprowadzania tekstu, ponieważ nie jest związane z interakcją użytkownika. Kluczowe jest zrozumienie, że każde z tych zdarzeń ma swoje specyficzne zastosowania, a wybór niewłaściwego zdarzenia może prowadzić do nieefektywnego działania aplikacji oraz utrudnienia w interakcji z użytkownikiem. Dlatego istotne jest zrozumienie różnicy pomiędzy tymi zdarzeniami oraz ich kontekstem użycia.

Pytanie 29

Jakie polecenie pozwala na dodanie kolumny zadaniekompletne do tabeli zadania?

A. INSERT INTO zadania VALUES zadaniakompletne
B. ALTER TABLE zadania ADD COLUMN zadaniekompletne int
C. CREATEINDEX zadania ADD COLUMN zadaniekompletne int
D. ADD COLUMN zadaniekompletne WITH zadania
Odpowiedź 'ALTER TABLE zadania ADD COLUMN zadaniekompletne int' jest rzeczywiście na miejscu. To polecenie ALTER TABLE to standardowy sposób na zmiany w tabelach w SQL. Dzięki niemu możemy dodawać, usuwać czy zmieniać kolumny, a także wprowadzać różne ograniczenia. W tym przypadku dodajemy nową kolumnę 'zadaniekompletne', która będzie przyjmować wartości całkowite (int). Fajnym przykładem zastosowania tego polecenia może być śledzenie postępu zadań w projekcie. Kolumna 'zadaniekompletne' mogłaby oznaczać, czy zadanie jest skończone (np. 0 dla nieukończonego, 1 dla ukończonego). Zawsze warto pomyśleć o tym, jak takie zmiany mogą wpłynąć na istniejące dane oraz aplikacje korzystające z tej tabeli, żeby nie narazić się na różne problemy z danymi.

Pytanie 30

W systemie baz danych dla sklepu znajduje się tabela artykuly, która zawiera kolumnę o nazwie nowy. Jak należy skonstruować zapytanie, aby przypisać wartość TRUE dla tego pola w każdym rekordzie?

A. INSERT INTO nowy FROM artykuly SET TRUE
B. UPDATE nowy FROM artykuly VALUE TRUE
C. INSERT INTO artykuly VALUE nowy=TRUE
D. UPDATE artykuly SET nowy=TRUE
Odpowiedzi sugerujące użycie UPDATE nowy FROM artykuly VALUE TRUE; oraz INSERT INTO nowy FROM artykuly SET TRUE; są błędne z kilku powodów. Pierwsza z nich jest nieprawidłowa, ponieważ nie spełnia składni SQL. W SQL nie można bezpośrednio użyć 'FROM' w kontekście aktualizacji wartości w tabeli. Prawidłowa składnia wymaga wskazania tabeli, której kolumny mają być aktualizowane, a nie pole 'nowy' jako osobnej jednostki. Z kolei, odpowiedź bazująca na INSERT INTO nowy FROM artykuly SET TRUE; jest również błędna, ponieważ INSERT INTO jest używane do dodawania nowych rekordów do tabeli, a nie do aktualizacji ich wartości. W tej sytuacji nie jest możliwe dodanie wartości do kolumny 'nowy' bez wskazania konkretnej tabeli i odpowiednich wartości. Kolejna odpowiedź, INSERT INTO artykuly VALUE nowy=TRUE; nie jest zgodna ze składnią SQL, ponieważ wymaga podania zarówno kolumn, do których mają być wprowadzane wartości, jak i wartości dla innych kolumn, które mogą być obecne w tabeli. Typowe błędy myślowe prowadzące do takich odpowiedzi obejmują brak znajomości odpowiednich klauzul SQL i mylenie pojęć związanych z aktualizacją danych oraz dodawaniem nowych rekordów. Dlatego ważne jest, aby podczas pracy z SQL dokładnie zrozumieć różnice między tymi operacjami, co jest fundamentalne dla efektywnego zarządzania danymi w bazach danych.

Pytanie 31

W HTML5 semantycznym znacznikiem, który służy do określenia dwóch sekcji widocznych po prawej stronie na rysunku, zawierających wiadomości oraz aktualności, jest

Ilustracja do pytania
A. &lt;nav&gt;
B. &lt;article&gt;
C. &lt;footer&gt;
D. &lt;main&gt;
Bardzo często osoby uczące się HTML5 mylą znaczniki semantyczne, szczególnie gdy chodzi o takie elementy jak <nav>, <main>, <footer> czy <article>. To w sumie zrozumiałe, bo na pierwszy rzut oka mogą się wydawać podobne, ale każdy z nich ma swoje konkretne zadanie. <nav> to sekcja nawigacyjna – zawiera odnośniki do innych części serwisu, więc zwykle stosuje się go do menu, bocznych pasków z linkami czy paneli nawigacyjnych. Umieszczenie w <nav> sekcji z wiadomościami czy aktualnościami to klasyczny przykład złego zrozumienia przeznaczenia tego elementu – w praktyce taka struktura zaburza logikę nawigacji i dostępność strony. <main> z kolei oznacza główną i unikalną treść dokumentu, tej, która jest najważniejsza dla danej podstrony. Jednak <main> używamy tylko raz na stronie – nie powinno się go powielać ani używać do oznaczania pojedynczych sekcji, takich jak wiadomości, bo to prowadzi do błędnej interpretacji przez wyszukiwarki i czytniki ekranowe. <footer> odpowiada za stopkę strony lub sekcji, czyli miejsce na informacje jak prawa autorskie, dane kontaktowe, linki do polityk czy podsumowania – wrzucenie tam wiadomości czy aktualności byłoby mocno nielogiczne. Wybierając niewłaściwy znacznik, można popełnić błąd, który potem utrudnia rozwój strony, jej pozycjonowanie czy poprawność dostępności. Najczęstszy błąd to kierowanie się wyglądem, a nie semantyką – a w HTML5 to właśnie semantyka daje najwięcej korzyści na dłuższą metę.

Pytanie 32

W jakiej technologii nie zachodzi możliwość przetwarzania danych wprowadzanych przez użytkowników na stronach internetowych?

A. AJAX
B. CSS
C. JavaScript
D. PHP
CSS (Cascading Style Sheets) to język stylów, który służy do opisywania wyglądu i formatu dokumentów HTML. Jego głównym celem jest kontrolowanie układu, kolorów, czcionek oraz innych aspektów wizualnych strony internetowej. CSS nie ma możliwości przetwarzania danych wprowadzanych przez użytkowników, gdyż nie posiada funkcji logiki programistycznej ani operacji na danych. Przykładowo, CSS może zmieniać kolor tła lub rozmiar tekstu, ale nie może zbierać informacji z formularzy ani reagować na interakcje użytkownika w sposób, w jaki robią to języki programowania takie jak JavaScript czy PHP. Może to prowadzić do mylnych przekonań, że CSS jest bardziej wszechstronny, niż jest w rzeczywistości, jednak jego zastosowanie ogranicza się wyłącznie do aspektów stylistycznych. W praktyce, aby przetwarzać dane użytkownika, niezbędne są inne technologie, które mogą współpracować z CSS, ale same w sobie nie są w stanie tego zrobić.

Pytanie 33

Jakie zdarzenie należy wykorzystać, aby funkcja JavaScript była aktywowana za każdym razem, gdy użytkownik wprowadza jakikolwiek znak w polu tekstowym?

A. onkeydown
B. onmouseout
C. onload
D. onclick
Odpowiedzi onload, onclick oraz onmouseout nie są odpowiednie do zadania, ponieważ każde z tych zdarzeń ma inne zastosowanie i nie odpowiada wymaganiom związanym z rejestrowaniem wprowadzania tekstu przez użytkownika. Zdarzenie 'onload' jest wywoływane, gdy strona internetowa lub element zasobu (np. obraz) jest w pełni załadowany. Jest to idealne do inicjalizacji skryptów lub stylów, ale nie reaguje na interakcje użytkownika w czasie rzeczywistym. 'onclick' dotyczy sytuacji, gdy użytkownik klika element, co nie jest wystarczające do uchwycenia zmian dokonywanych w polu edycji podczas pisania. W związku z tym, nie będzie skuteczne w kontekście, gdy chcemy wykrywać każdy naciśnięty klawisz. Z kolei 'onmouseout' jest wywoływane, gdy kursor myszy opuszcza dany element na stronie. Użycie tego zdarzenia mogłoby prowadzić do nieprzewidywalnych efektów i nie miałoby żadnego znaczenia w kontekście wprowadzania tekstu przez użytkownika. Z tego powodu, aby prawidłowo zareagować na wprowadzanie danych, zastosowanie 'onkeydown' jest zdecydowanie najbardziej odpowiednie.

Pytanie 34

Jaką treść komunikatu należy umieścić w kodzie PHP zamiast znaków zapytania?

$a = mysql_connect('localhost', 'adam', 'mojeHaslo');

if (!$a)
    echo "?????????????";
A. Rekord został pomyślnie dodany do bazy
B. Błąd w trakcie przetwarzania zapytania SQL
C. Błąd połączenia z serwerem SQL
D. Wybrana baza danych nie istnieje
Poprawna odpowiedź 'Błąd połączenia z serwerem SQL' jest właściwa, ponieważ funkcja mysql_connect() służy do nawiązywania połączenia z serwerem bazy danych MySQL. Jeśli połączenie nie powiedzie się, zwraca false. W takiej sytuacji należy poinformować użytkownika o nieudanym połączeniu. Jest to kluczowe w debugowaniu i zapewnianiu użytkownikowi zrozumiałych komunikatów błędów. W praktyce, połączenie z bazą danych jest podstawowym krokiem w wielu aplikacjach internetowych, a jego poprawna obsługa to standardowa praktyka branżowa. Współczesne podejście wymaga także użycia rozszerzenia mysqli lub PDO zamiast przestarzałej funkcji mysql_connect(). Jest to zalecane ze względu na lepsze wsparcie bezpieczeństwa i wydajności. Użycie funkcji mysqli_connect() pozwala na obsługę zarówno błędów połączenia, jak i zapytań SQL w sposób bardziej elastyczny i bezpieczny.

Pytanie 35

W instrukcjach mających na celu odtwarzanie dźwięku jako muzyki tła na stronie internetowej NIE stosuje się atrybutu

A. href="C:/100.wav"
B. loop="10"
C. balance="-10"
D. volume="-100"
Odpowiedź href="C:/100.wav" jest prawidłowa, ponieważ atrybut href jest używany w kontekście linków hipertekstowych, a nie do odtwarzania dźwięku na stronie. W przypadku odtwarzania dźwięku w HTML, odpowiednie tagi to <audio> oraz związane z nimi atrybuty, takie jak src, controls, autoplay, loop, itp. Aby zrealizować odtwarzanie dźwięku jako podkładu muzycznego, używamy tagu <audio src="C:/100.wav" autoplay loop></audio>, co zapewnia, że dźwięk z pliku .wav będzie odtwarzany automatycznie i w pętli. Zgodnie z dobrymi praktykami, pliki audio powinny być dostępne na serwerze i wskazywane względem ich lokalizacji w sieci, co wspiera lepszą wydajność oraz dostępność. Użycie atrybutu href w tym kontekście jest niewłaściwe i może prowadzić do niepoprawnego działania strony, ponieważ przeglądarki nie interpretują tego w kontekście dźwięku. Przykładowo, zamiast href, należy zastosować odpowiednie atrybuty w tagu <audio> zgodnie z aktualnymi standardami HTML5.

Pytanie 36

W zaprezentowanej części formularza HTML znajduje się pole, które można określić jako?

<input type="password" name="pole">
A. wyświetla wprowadzone znaki.
B. ukrywa wprowadzone znaki.
C. domyślnie posiada wpisany tekst "pole".
D. pozwala na wprowadzanie jedynie wartości liczbowych.
Wybrana przez ciebie odpowiedź jest niepoprawna. Możesz myśleć, że pole <i>input</i> ma domyślny tekst 'pole', ale zapomniałeś, że atrybut 'value', który to robi, nie występuje w tym kodzie. Poza tym, nie ma żadnych danych wskazujących, że to pole przyjmuje tylko liczby. Zazwyczaj, używa się atrybutu 'type' z wartością 'number', ale tutaj jest ustawiony na 'password'. Gdy mówisz, że pole pokazuje wprowadzone znaki, to też nie jest prawda. Jak mamy 'type' ustawione na 'password', to wszystko jest ukryte, żeby użytkownik był bezpieczny. Takie pomyłki to najczęściej efekt braku zrozumienia różnych atrybutów w HTML. Ważne, żeby ogarnąć, że atrybut 'type' mówi, jakie dane można wprowadzać, a różne wartości mają różne skutki.

Pytanie 37

Który program służy do obróbki dźwięku?

A. CorelDRAW
B. Inkscape
C. Audacity
D. GIMP
W tym pytaniu łatwo się pomylić, bo wszystkie podane programy są związane z multimediami lub szeroko pojętą „kreatywną” pracą na komputerze, ale tylko jeden z nich faktycznie służy do obróbki dźwięku. Typowym błędem jest wrzucanie do jednego worka grafiki i audio, bo wizualnie interfejsy tych programów bywają podobne: dużo narzędzi, pasków, warstw, efektów. Jednak z punktu widzenia branżowych standardów mamy tu wyraźny podział na edytory grafiki rastrowej, wektorowej i na cyfrowe edytory audio. GIMP to narzędzie do obróbki grafiki rastrowej, czyli pracy na pikselach. Służy do retuszu zdjęć, tworzenia layoutów, banerów, ikon, a nie do montażu ścieżek audio. Można w nim co najwyżej przygotować okładkę do albumu czy miniaturkę podcastu, ale samego dźwięku nie dotkniemy – brak tu widoku fali, miksowania, efektów audio. Podobnie Inkscape to edytor grafiki wektorowej, używany do projektowania logotypów, ilustracji, ikon w formacie SVG czy innych skalowalnych elementów. On operuje na krzywych Béziera, węzłach, kształtach, a nie na próbkach dźwięku i częstotliwościach. CorelDRAW również należy do świata grafiki wektorowej i DTP. W praktyce wykorzystuje się go do składu materiałów drukowanych, projektów reklamowych, ulotek, plakatów. W profesjonalnych workflowach jest często parowany z innymi narzędziami graficznymi, ale nie z edytorami audio w jednym programie. Typowym błędem myślowym jest założenie, że „skoro program jest kreatywny i popularny, to pewnie ogarnia wszystko: grafikę, wideo i dźwięk”. W rzeczywistości dobre praktyki w branży mówią o używaniu wyspecjalizowanych narzędzi: osobnego programu do grafiki, osobnego do montażu wideo i osobnego do obróbki audio. Dlatego przy pytaniach tego typu warto zwracać uwagę, do jakiego rodzaju danych jest zaprojektowany dany program: piksele, wektory czy właśnie ścieżki dźwiękowe.

Pytanie 38

Jaki typ mechanizmu zapewnienia bezpieczeństwa podczas uruchamiania aplikacji jest zawarty w środowisku .NET Framework?

A. Mechanizm wykonywania aplikacji realizowany przez frameworki aplikacji webowych (ASP.NET)
B. Mechanizm wykonywania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
C. Mechanizm wykonywania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security)
D. Mechanizm wykonywania aplikacji dla bibliotek klas
Mechanizmy bezpieczeństwa w .NET Framework obejmują różne podejścia, ale odpowiedzi odnoszące się do frameworków aplikacji internetowych, bibliotek klas czy funkcji Windows API nie są stosowane jako główne metody kontroli bezpieczeństwa aplikacji. Frameworki aplikacji internetowych, takie jak ASP.NET, zapewniają pewne funkcjonalności bezpieczeństwa, ale nie są one mechanizmami kontroli dostępu samodzielnie. Kluczowym błędem jest mylenie frameworków z mechanizmami bezpieczeństwa; same frameworki to zestawy narzędzi do budowy aplikacji, które mogą implementować różne mechanizmy, ale bezpieczeństwo nie jest ich jedyną funkcją. Z kolei mechanizmy dla bibliotek klas wiążą się głównie z udostępnianiem kodu i zarządzaniem jego użyciem, a nie z jego bezpieczeństwem. Co więcej, odwoływanie się do funkcji Windows API jako mechanizmu wykonywania aplikacji jest mylące, ponieważ API to zestaw funkcji umożliwiających interakcję z systemem operacyjnym, a nie środowisko uruchomieniowe. Rozumienie różnicy między tymi pojęciami jest istotne, aby nie wprowadzać się w błąd co do zabezpieczeń aplikacji i ich implementacji. Prawidłowe podejście do bezpieczeństwa wymaga znajomości zarówno standardów, jak i najlepszych praktyk związanych z zarządzaniem uprawnieniami oraz monitorowaniem dostępu, co jest kluczowe w kontekście tworzenia trudnych do przełamania aplikacji.

Pytanie 39

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 40

Jakie zasady dotyczące tworzenia sekcji w języku HTML są właściwe?

A. W sekcji <head> znajduje się sekcja <body>
B. W sekcji <head> nie wolno umieszczać kodu CSS, tylko odniesienie do pliku CSS
C. W sekcji <head> można ustalać szablon strony za pomocą znaczników <div>
D. W sekcji <head> mogą się pojawić znaczniki <meta>, <title>, <link>
Wybór odpowiedzi, że w części <head> mogą wystąpić znaczniki <meta>, <title>, <link> jest jak najbardziej poprawny. Część <head> dokumentu HTML jest kluczowa dla określenia właściwości oraz meta-informacji o stronie. Znacznik <meta> służy do przechowywania danych o stronie, takich jak opis, słowa kluczowe czy konfiguracja kodowania. Znacznik <title> definiuje tytuł strony, który jest wyświetlany na karcie przeglądarki oraz w wynikach wyszukiwania, co jest istotne dla SEO. Z kolei znacznik <link> pozwala na połączenie dokumentu HTML z zewnętrznymi arkuszami stylów CSS lub innymi zasobami. Stosowanie tych znaczników jest zgodne z obowiązującymi standardami W3C oraz najlepszymi praktykami w zakresie tworzenia stron internetowych. Dobrze zorganizowana sekcja <head> wpływa na efektywność i widoczność strony w wyszukiwarkach, a także na jej ogólną jakość. Przykładem użycia może być dodanie metadanych do strony internetowej, co pozwala na lepsze pozycjonowanie w wyszukiwarkach oraz ułatwia zarządzanie stylem poprzez odwołanie do pliku CSS.