Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 12 marca 2026 18:37
  • Data zakończenia: 12 marca 2026 18:52

Egzamin zdany!

Wynik: 29/40 punktów (72,5%)

Wymagane minimum: 20 punktów (50%)

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

Deklaracja typu dokumentu HTML: wskazuje, że kod został stworzony w wersji

A. 4
B. 5
C. 6
D. 7
Deklaracja typu dokumentu HTML, znana jako <!DOCTYPE HTML>, jest kluczowym elementem każdej strony internetowej, który informuje przeglądarkę, w jakiej wersji HTML została napisana strona. W przypadku <!DOCTYPE HTML> mówimy o wersji HTML5, która jest najnowszym standardem języka znaczników. HTML5 wprowadza wiele usprawnień i nowych funkcji w porównaniu do wcześniejszych wersji, takich jak semantyczne znaczniki, wsparcie dla multimediów (audio i wideo) oraz API do złożonych aplikacji internetowych. Przykładem zastosowania HTML5 mogą być formularze z nowymi typami inputów, które ułatwiają interakcję z użytkownikiem, takie jak 'date', 'email' czy 'url'. Również HTML5 wprowadza nowy model renderowania, który jest bardziej efektywny i dostosowany do nowoczesnych urządzeń mobilnych. Standardy HTML są ustalane przez W3C (World Wide Web Consortium), które regularnie aktualizuje specyfikacje, aby nadążać za rozwijającymi się technologiami internetowymi. W skrócie, poprawna deklaracja <!DOCTYPE HTML> jest niezbędna dla właściwego wyświetlania i działania strony w różnych przeglądarkach.

Pytanie 2

Która dyrektywa w pliku php.ini decyduje o WYŚWIETLANIU komunikatów o błędach na stronie?

A.
display_errors
B.
log_errors
C.
error_log
D.
max_execution_time
Dyrektywa display_errors w php.ini określa, czy komunikaty o błędach mają pojawiać się w wyniku skryptu (na stronie). Na serwerze produkcyjnym ustawia się ją na Off (by nie ujawniać szczegółów), a podczas tworzenia na On, co ułatwia debugowanie. Dlatego za wyświetlanie błędów odpowiada display_errors.

Pytanie 3

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

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

Warunek zapisany w języku PHP wypisze liczbę, gdy

if ($liczba % 2 == 0)
{
    echo $liczba;
}
A. jest ona parzysta.
B. jest ona liczbą pierwszą.
C. jest ona dodatnia.
D. wynik dzielenia liczby przez 2 jest równy 0.
Twoja odpowiedź jest poprawna. Warunek w języku PHP 'if($liczba % 2 == 0)' sprawdza faktycznie, czy dana liczba jest parzysta. Jak dobrze zauważyłeś, reszta z dzielenia liczby parzystej przez 2 jest zawsze równa 0. Jest to bezpośrednie odzwierciedlenie definicji liczby parzystej, która mówi, że jest to liczba, którą można podzielić przez 2 bez reszty. Dlatego warunek ten jest powszechnie stosowany w programowaniu do sprawdzania parzystości liczby. W praktyce, może on być wykorzystany np. do filtrowania danych, gdzie chcemy wykluczyć liczby nieparzyste albo też do różnego rodzaju operacji na tablicach, gdzie operacje wykonujemy tylko dla indeksów parzystych. Pamiętaj jednak, że ten warunek nie sprawdzi, czy liczba jest dodatnia, ujemna czy pierwsza. Do tego potrzebne będą inne warunki i operacje.

Pytanie 5

Metainformacja "Description" zawarta w pliku HTML powinna zawierać


<head>
   <meta name="Description" content="...">
</head>
A. opis zawartości strony
B. informację o autorze strony
C. listę kluczowych fraz używanych przez wyszukiwarki internetowe
D. nazwę aplikacji, w której stworzono stronę
Metainformacja 'Description' zawarta w pliku HTML pełni kluczową rolę w optymalizacji stron internetowych pod kątem wyszukiwarek. Jest to krótki opis treści strony, który pomaga wyszukiwarkom zrozumieć, o czym jest dana strona. Wartościowy opis powinien być zwięzły, informacyjny i zachęcający do kliknięcia, ponieważ często pojawia się w wynikach wyszukiwania jako fragment tekstu, obok tytułu strony. Przykładem dobrze skonstruowanego opisu może być 'Dowiedz się, jak skutecznie zarządzać swoimi finansami osobistymi dzięki naszym praktycznym poradnikom i wskazówkom'. Taki opis nie tylko informuje użytkownika o zawartości strony, ale również zawiera słowa kluczowe, które mogą przyciągnąć uwagę. Zgodnie z wytycznymi Google, długość opisu powinna wynosić od 150 do 160 znaków, aby uniknąć obcięcia tekstu w wynikach wyszukiwania. Posiadanie dobrze napisanej metainformacji 'Description' jest więc niezbędne dla skutecznej strategii SEO i zwiększenia widoczności strony w internecie.

Pytanie 6

Spośród wymienionych formatów, który charakteryzuje się najszerszą rozpiętością tonalną?

A. PNG
B. BMP
C. RAW
D. JPEG
Odpowiedzi, które nie są poprawne, można analizować w kontekście ich technicznych ograniczeń. Format PNG, mimo że obsługuje przezroczystość i jest bezstratnym formatem, ma ograniczoną rozpiętość tonalną, co oznacza, że nie przechowuje tak dużej ilości informacji tonalnych jak RAW. Ponadto, jego główną funkcją jest przechowywanie obrazów z dużą ilością detali w mniej skomplikowanych kolorach, co czyni go mniej odpowiednim do profesjonalnej obróbki zdjęć w trudnych warunkach oświetleniowych. Format BMP, choć prosty i łatwy w użyciu, również nie wspiera zaawansowanej obróbki kolorów, a jego duża objętość plików powoduje, że nie jest praktyczny dla profesjonalnych zastosowań. BMP nie korzysta z kompresji, co sprawia, że pliki są znacznie większe niż w przypadku innych formatów, ale nie oferuje dodatkowych korzyści w zakresie tonalności. JPEG, pomimo szerokiego zastosowania w fotografii i sieci, jest formatem stratnym, co oznacza, że podczas kompresji traci część danych, a tym samym rozpiętość tonalna jest ograniczona. JPEG jest bardziej odpowiedni do codziennego użytku ze względu na mniejszy rozmiar plików, ale nie daje takiej elastyczności w edycji jak RAW, co czyni go niewłaściwym wyborem dla profesjonalnych fotografów poszukujących najwyższej jakości obrazu.

Pytanie 7

Co można powiedzieć o zmiennej predefiniowanej $_POST w języku PHP?

A. zawiera dane przesłane do skryptu z ciasteczka
B. jest kopią tablicy $_COOKIE
C. zawiera dane przesłane do skryptu z formularza
D. jest rozszerzoną wersją tablicy $_SESSION
$_POST to wbudowana (superglobalna) tablica PHP, która zawiera dane przesłane do skryptu z formularza wysłanego metodą POST. Dostęp do pojedynczego pola uzyskuje się przez nazwę kontrolki, np. $_POST['login']. Dane z POST trafiają w ciele żądania (nie w adresie URL). Dlatego $_POST zawiera dane z formularza.

Pytanie 8

Fragment kodu w języku JavaScript realizujący dodawanie dwóch liczb ma poniższą postać. Aby dodawanie wykonane było po kliknięciu przycisku o nazwie "dodaj", należy w wykropkowane miejsce wstawić

Podaj pierwszą liczbę: <input type="text" name="liczba1" />
Podaj drugą liczbę: <input type="text" name="liczba2" />
….
<script type=text/javascript>
function dodaj()
{
    // ta funkcja realizuje dodawanie i podaje jego wynik
}
</script>
A. <button onclick="return dodaj()">dodaj</button>
B. <button onselect="return dodaj()">oblicz</button>
C. <button onselect="return dodaj()">dodaj</button>
D. <button onclick="return oblicz()">dodaj</button>
Wybór niewłaściwej odpowiedzi sugeruje pewne nieporozumienie związane z obsługą zdarzeń w JavaScript i jak są one wywoływane w kontekście przycisków. Wszystkie pozostałe odpowiedzi używają zdarzenia 'onselect' lub wywołują nieistniejącą funkcję 'oblicz'. Zdarzenie 'onselect' jest wyzwalane, gdy użytkownik zaznacza tekst w elemencie, co jest nieodpowiednie dla przycisku. Innymi słowy, 'onselect' nie jest odpowiednim zdarzeniem do obsługi kliknięcia przycisku. Co więcej, wywołanie funkcji 'oblicz' jest błędem, ponieważ nie istnieje taka funkcja zdefiniowana w skrypcie. Ta myląca odpowiedź może wynikać z niezrozumienia, jak zdarzenia są obsługiwane w JavaScript i jakie zdarzenia są odpowiednie dla różnych elementów. Zasada ta jest zgodna z dobrymi praktykami programowania, które zalecają używanie odpowiednich zdarzeń dla różnych elementów i typów interakcji użytkownika.

Pytanie 9

W języku skryptowym JavaScript operatory: || oraz && należą do grupy operatorów

A. bitowych.
B. logicznych.
C. przypisania.
D. arytmetycznych.
Operatory || oraz && w JavaScript to klasyczne operatory logiczne. Działają na wartościach, które można zinterpretować jako prawdę lub fałsz (tzw. wartości truthy i falsy) i zwracają wynik wyrażenia logicznego. && oznacza „i” logiczne – całe wyrażenie jest prawdziwe tylko wtedy, gdy oba operandy są traktowane jako prawdziwe. || oznacza „lub” logiczne – wystarczy, że jeden z operandów jest prawdziwy, żeby całe wyrażenie było uznane za prawdę. W praktyce bardzo często wykorzystuje się je w instrukcjach warunkowych, np.: if (isLoggedIn && isAdmin) { … } albo if (isMobile || isTablet) { … }. W JavaScript te operatory mają jeszcze jedną, moim zdaniem bardzo przydatną cechę: nie zwracają po prostu true/false, tylko konkretną wartość jednego z operandów. Na przykład: const name = userName || "Gość"; – jeśli userName jest wartością „falsy” (np. pusty string, null, undefined), to do name trafi "Gość". To jest tzw. krótkie spięcie (short-circuit evaluation): przy operatorze &&, jeśli pierwszy operand jest falsy, drugi nie jest już w ogóle obliczany; przy ||, jeśli pierwszy jest truthy, drugi też nie jest sprawdzany. W dobrych praktykach front-endu wykorzystuje się to do prostego ustawiania wartości domyślnych, zabezpieczania wywołań funkcji (np. callback && callback()) oraz budowania bardziej czytelnych warunków. Warto też pamiętać o różnicy między operatorami logicznymi (&&, ||, !) a porównania (===, !==), bo to są różne grupy operatorów, chociaż często używa się ich razem w tych samych warunkach. Z mojego doświadczenia, świadome używanie tych operatorów logicznych bardzo upraszcza kod i zmniejsza liczbę if-ów rozrzuconych po skryptach.

Pytanie 10

Której wartości właściwości background-attachment użyć, aby tło pozostało nieruchome względem okna przeglądarki?

A.
scroll
B.
fixed
C.
local
D.
inherit
Właściwość background-attachment decyduje, jak zachowuje się tło podczas przewijania strony. Wartość fixed „przypina” obraz tła do okna przeglądarki (viewportu), więc pozostaje on nieruchomy, gdy treść się przewija – daje to efekt paralaksy. Dlatego, by tło było nieruchome względem okna, używa się background-attachment: fixed.

Pytanie 11

W HTML, aby dodać obrazek z tekstem przylegającym, umiejscowionym na środku obrazka, trzeba użyć znacznika

A. <img src="/obrazek.png" alt="obraz1" hspace="30px">tekst
B. <img src="/obrazek.png" alt="obraz2" align="middle">tekst
C. <img src="/obrazek.png" alt="obraz3" height="50%">tekst
D. <img src="/obrazek.png" alt="obraz4">tekst
Aby wstawić obrazek z tekstem przyległym w HTML, należy skorzystać ze znacznika <img> z atrybutem align ustawionym na 'middle'. Atrybut align jest przestarzały w HTML5, ale nadal może być używany w kontekście tekstów przylegających do obrazków. Ustawiając 'middle', obrazek będzie wyśrodkowany w pionie względem linii tekstu, co pozwala na estetyczne umiejscowienie obrazu w odniesieniu do towarzyszącego mu tekstu. Dobrym przykładem jest zastosowanie <img src='/obrazek.png' alt='obraz2' align='middle'>tekst, co sprawia, że obrazek staje się integralną częścią tekstu, a nie tylko jego dodatkiem. W kontekście standardów, warto zauważyć, że HTML5 zaleca stosowanie CSS do pozycjonowania, dlatego bardziej współczesnym podejściem byłoby użycie stylów CSS, np. 'vertical-align: middle'. Można to osiągnąć poprzez dodanie klasy do obrazka oraz odpowiedniego stylu CSS. Chociaż align jest przestarzały, jego rozumienie jest istotne dla osób przystosowujących starsze strony do nowych standardów.

Pytanie 12

Jakie działanie wykonuje polecenie DBCC CHECKDB("sklepAGD", Repair_fast) w MS SQL Server?

A. zweryfikuje spójność danej tabeli
B. sprawdzi spójność bazy danych i naprawi uszkodzone indeksy
C. zweryfikuje spójność danej tabeli oraz naprawi uszkodzone rekordy
D. sprawdzi spójność bazy danych i utworzy kopię zapasową
Polecenie DBCC CHECKDB w MS SQL Server to narzędzie używane do weryfikacji integralności bazy danych. W przypadku użycia opcji Repair_fast, polecenie to sprawdza spójność bazy danych oraz naprawia uszkodzone indeksy. Jest to istotne w kontekście zapewnienia, że wszystkie dane w bazie są prawidłowo zorganizowane i dostępne. Uszkodzone indeksy mogą prowadzić do problemów z wydajnością zapytań oraz błędów w dostępie do danych. Przykładowo, gdy baza danych ulega uszkodzeniu z powodu awarii sprzętu lub błędów oprogramowania, DBCC CHECKDB umożliwia przywrócenie funkcjonalności. Dobrą praktyką jest regularne wykonywanie tego polecenia jako część strategii utrzymania bazy danych, co pozwoli na wcześniejsze wykrycie potencjalnych problemów, zanim staną się one krytyczne. Warto również zaznaczyć, że DBCC CHECKDB powinno być uruchamiane w odpowiednich oknach serwisowych, by zminimalizować wpływ na wydajność aplikacji korzystających z bazy danych.

Pytanie 13

W CSS określono styl dla pola do edycji, które będzie miało tło w kolorze jasnozielonym po aktywacji.

input:focus { background-color: LightGreen; }
A. gdy jest to pierwsze użycie tego elementu w dokumencie
B. jeśli zostanie na nie najechane kursorem bez kliknięcia
C. po kliknięciu myszką w celu wprowadzenia tekstu
D. w każdej sytuacji
Typowe błędy myślowe prowadzące do niepoprawnych odpowiedzi często obejmują mylenie różnych stanów interakcji z elementami formularzy. Na przykład, odpowiedź sugerująca, że stylizowane tło zostaje aktywowane "gdy zostanie wskazane kursorem myszy bez kliknięcia" myli pojmowanie stanu focus z prostym najechaniem kursorem. W rzeczywistości, stan focus aktywuje się tylko w wyniku interakcji, takiej jak kliknięcie lub nawigacja za pomocą klawiatury. Kolejną nieścisłością jest stwierdzenie, że formatowanie ma zastosowanie "w każdym przypadku". Takie podejście nie uwzględnia faktu, że styl focus jest specyficzny dla interakcji użytkownika, a więc jego zastosowanie jest ograniczone do sytuacji, w których element jest aktywny. Warto zauważyć, że dobrze zaprojektowane formularze online powinny wykorzystywać zdarzenia focus i blur, aby dostarczać użytkownikom pomocnych wskazówek oraz ułatwić wprowadzanie danych. Ignorowanie tych koncepcji prowadzi do projektowania interfejsów, które nie są w pełni responsywne wobec potrzeb użytkowników. Dlatego zrozumienie różnicy między focus a zwykłym wskazaniem kursorem jest kluczowe dla tworzenia efektywnych i przyjaznych dla użytkownika aplikacji internetowych.

Pytanie 14

Na czym polega pozycjonowanie poza stroną (off-page SEO)?

A. na walidacji kodu HTML, CSS i linków
B. na optymalizacji grafiki i multimediów
C. na sprawdzaniu i testowaniu szybkości ładowania
D. na pozyskiwaniu zewnętrznych linków prowadzących do strony
Pozostałe działania należą do SEO „na stronie” (on-page) lub kontroli jakości, a nie off-page. Walidacja kodu HTML, CSS i linków to dbanie o poprawność strony – realizowane w jej obrębie. Optymalizacja grafiki i multimediów (mniejsze pliki, szybsze ładowanie) również dotyczy zawartości witryny. Testowanie szybkości ładowania to także czynnik on-page. Off-page SEO odbywa się poza stroną i polega na pozyskiwaniu linków zewnętrznych, dlatego czwarta odpowiedź jest poprawna.

Pytanie 15

Wśród technik rozwiązywania problemów w przedsiębiorstwie znajdują się: ignorowanie, separacja, arbitraż oraz kompromis. Wskaż metodę, która szczególnie może być niebezpieczna i prowadzić do zaostrzenia konfliktu w firmie?

A. arbitraż
B. separacja
C. kompromis
D. ignorowanie
Odpowiedzią, która wskazuje na technikę szczególnie ryzykowną, jest ignorowanie. Ignorowanie problemów w firmie może prowadzić do ich eskalacji, ponieważ nie podejmowanie działań w sytuacjach konfliktowych często prowadzi do narastających napięć. Przykładowo, jeśli zespół projektowy ma niezgodności co do metodologii pracy, a kierownik postanowi to zignorować, różnice mogą się pogłębiać, prowadząc do braku współpracy i obniżenia morale. W praktyce, ignorowanie konfliktów jest jednym z najczęstszych błędów w zarządzaniu, co potwierdzają standardy zarządzania projektami, takie jak PMBOK, które zalecają aktywne podejście do rozwiązywania konfliktów. Ignorowanie problemów nie tylko wpływa na dynamikę zespołu, ale także może wpłynąć na wyniki finansowe organizacji, ponieważ niewłaściwe zarządzanie konfliktami może prowadzić do opóźnień w projektach oraz zwiększonych kosztów. Z tego względu kluczowe jest, aby menedżerowie i liderzy nie bagatelizowali konfliktów, lecz podejmowali działania w celu ich rozwiązania oraz wprowadzenia kultury otwartej komunikacji w zespole.

Pytanie 16

W edytorze grafiki rastrowej funkcja „dodaj kanał alfa” umożliwia

A. wprowadzenie warstwy z przezroczystością
B. ustawienie prawidłowego balansu bieli
C. powiększenie głębi ostrości obrazu
D. wyostrzenie krawędzi obrazu
Dodanie kanału alfa w edytorze grafiki rastrowej to w zasadzie otworzenie drzwi do pracy z przezroczystością w obrazie. Kanał alfa jest dodatkową składową pikseli, która oprócz wartości RGB określa też poziom przejrzystości danego fragmentu grafiki. Moim zdaniem, to jeden z kluczowych elementów, jeśli chcesz przygotować grafikę do profesjonalnych zastosowań, np. do webdesignu, gier czy produkcji materiałów do druku z efektem nakładania. Standardowym przykładem jest sytuacja, gdy przygotowujesz logo i zależy Ci, żeby tło było przezroczyste – wtedy bez kanału alfa ani rusz. W praktyce, po dodaniu kanału alfa możesz wymazywać fragmenty lub stosować selektywne przezroczystości, co daje mnóstwo kreatywnych możliwości. To taka podstawa, bez której ciężko wyobrazić sobie pracę z warstwami, maskami czy efektami blendingu. Z mojego doświadczenia, osoby zaczynające pracę z grafiką często nie zdają sobie sprawy, jak ważne jest świadome zarządzanie przezroczystością – a kanał alfa właśnie to umożliwia. Nawet w najpopularniejszych formatach plików, jak PNG, obsługa kanału alfa jest już praktycznie standardem branżowym. Warto też wiedzieć, że w formatach takich jak JPEG tego nie uzyskasz, bo nie obsługują przezroczystości. Tak więc, jeśli planujesz pracę z grafiką wielowarstwową, przygotowywanie sprite’ów czy nowoczesnych UI, kanał alfa to absolutna podstawa, nie tylko bajer.

Pytanie 17

Jak wygląda instrukcja przypisania wartości do elementu tablicy w języku JavaScript względem tablicy?

Tablica['technik'] = 'informatyk';
A. statycznej
B. asocjacyjnej
C. numerycznej
D. wielowymiarowej
Wszystkie inne odpowiedzi są błędne z kilku kluczowych powodów. Statyczna tablica oznaczałaby, że jej rozmiar i elementy są ustalone podczas kompilacji i nie mogą być zmieniane w trakcie działania programu. W JavaScript tablice są dynamiczne, co w pełni przeczy koncepcji statyczności, ponieważ można dodawać, usuwać lub modyfikować elementy w trakcie działania programu. Numeryczne tablice w JavaScript odnoszą się do tablic, które są indeksowane przy użyciu liczb całkowitych. Choć tablice w JavaScript mają domyślnie numeryczną indeksację, w podanym przykładzie użycie stringa jako indeksu wskazuje na typ obiektu asocjacyjnego, a nie numerycznego. Wielowymiarowa tablica to pojęcie, które odnosi się do tablic zawierających inne tablice jako elementy, tworząc struktury o wielu wymiarach. Przykład 'Tablica[\'technik\'] = \'informatyk\';' nie tworzy wielowymiarowej tablicy, lecz jedynie dodaje nowy klucz do obiektu, a nie nową tablicę jako element. Reasumując, żadna z tych odpowiedzi nie zgadza się z właściwym zastosowaniem tablicy jako obiektu asocjacyjnego w JavaScript, co jest kluczem do zrozumienia elastyczności tego języka.

Pytanie 18

W SQL, aby utworzyć tabelę, konieczne jest użycie polecenia

A. ADD TABLE
B. ALTER TABLE
C. INSERT TABLE
D. CREATE TABLE
Żeby stworzyć tabelę w SQL, musisz użyć polecenia CREATE TABLE. To jest coś jak fundament, bo dzięki temu mówisz systemowi, jak ma wyglądać Twoja tabela. Możesz określić nazwę tabeli i jakie kolumny będą przechowywać dane. Wchodzą tu nie tylko nazwy kolumn, ale też ich typy, co jest ważne, żeby dane były dobrze zapisane. Na przykład, chcesz zrobić tabelę 'Użytkownicy', która ma ID, imię i nazwisko? Wtedy używasz takiego zapisu: CREATE TABLE Użytkownicy (ID INT PRIMARY KEY, Imię VARCHAR(50), Nazwisko VARCHAR(50)). Poza tym, to polecenie działa w różnych systemach, jak MySQL czy PostgreSQL, co czyni je naprawdę uniwersalnym. Z mojego doświadczenia, znajomość tego polecenia jest mega ważna, jeśli chcesz dobrze pracować z bazami danych, bo to w końcu ich podstawy!

Pytanie 19

Na zakończenie dnia w bazie danych sklepu spożywczego generowany jest raport, który pokazuje produkty wraz z ich dostawcami, dla których liczba sztuk w magazynie jest poniżej 10. Do stworzenia tego raportu użyto kwerendy

A. SELECT
B. UPDATE
C. INSERT INTO
D. CHECK TABLE
W kontekście bazy danych, kwerenda SELECT jest podstawowym narzędziem do pobierania danych. W przypadku raportu, który ma wyświetlić produkty z dostawcami, dla których stan magazynowy jest mniejszy niż 10 sztuk, SELECT jest jedyną odpowiednią instrukcją SQL do realizacji takiego zadania. Używając SELECT, można określić, które kolumny z tabeli mają być wyświetlane oraz zastosować filtry, aby ograniczyć wyniki tylko do tych, które spełniają określone warunki. Na przykład, przykładowa kwerenda mogłaby wyglądać tak: SELECT product_name, supplier_name FROM products WHERE stock < 10; Taka instrukcja przeszuka tabelę 'products' i wyświetli jedynie te produkty, które mają niski stan magazynowy. SELECT jest zgodny z normami SQL i pozwala na wykorzystanie różnych funkcji agregujących oraz operacji łączenia danych, co czyni go niezwykle wszechstronnym narzędziem w zarządzaniu bazami danych. Dzięki umiejętnemu zastosowaniu SELECT, można nie tylko generować raporty, ale także wspierać procesy decyzyjne w zarządzaniu zapasami.

Pytanie 20

Jakim sposobem można w języku PHP dokumentować blok komentarza składający się z wielu linii?

A. //
B. #
C. /* */
D. <!-- -->
Komentarze w języku PHP mogą być tworzone na kilka sposobów, jednak jedynie sposób wykorzystujący /* */ pozwala na zapis bloku komentarza rozciągającego się na wiele linii. Jest to szczególnie użyteczne w sytuacjach, gdy programista chce umieścić obszerniejsze wyjaśnienia dotyczące kodu, które nie ograniczają się do jednej linii. Przykładem zastosowania może być opis skomplikowanej funkcji lub sekcji kodu, gdzie istotne jest podanie kontekstu lub dodatkowych informacji. Na przykład:

/*
* Funkcja obliczająca sumę dwóch liczb.
* Przyjmuje dwa argumenty: a oraz b.
*/
function suma($a, $b) {
return $a + $b;
}

Stosowanie bloku komentarza zgodnie z tym stylem jest zgodne z najlepszymi praktykami programowania, gdyż poprawia czytelność kodu oraz ułatwia jego późniejsze utrzymanie. Z punktu widzenia standardów kodowania, szczególnie w większych projektach, dobrze opisane fragmenty kodu mogą zminimalizować ryzyko błędów oraz ułatwić pracę zespołową.

Pytanie 21

Którą rozdzielczość należy ustawić w opcjach kodera, aby przygotować do publikacji film w rozdzielczości HD Ready?

A. 480x360
B. 720x480
C. 1280x720
D. 1920x1080
W tym pytaniu pułapka polega na tym, że wszystkie podane rozdzielczości są w jakiś sposób „znane”, ale tylko jedna odpowiada standardowi HD Ready. Bardzo często myli się ogólne pojęcie „HD” z konkretnymi rozdzielczościami, a jeszcze częściej patrzy się tylko na to, która liczba jest większa, zamiast na obowiązujące standardy branżowe. Rozdzielczość 480x360 to typowa niska rozdzielczość kojarzona raczej ze starym streamingiem internetowym, materiałami SD do podglądu lub bardzo lekkimi plikami do słabego łącza. Ma inne proporcje niż klasyczne 16:9 i nie spełnia żadnego współczesnego standardu HD. Obraz w takiej rozdzielczości będzie wyraźnie mniej ostry, szczególnie na większych ekranach – to raczej jakość zbliżona do starego YouTube sprzed wielu lat. 720x480 z kolei bywa mylone z HD, bo liczba „720” sugeruje HD, ale tu akurat chodzi o coś zupełnie innego. 720x480 to typowa rozdzielczość SD z systemu NTSC (DVD-Video, stare kamery cyfrowe), często w proporcjach 4:3 lub 16:9 osiąganych dopiero przez tzw. piksele nieskwadratowe (aspect ratio pikseli). Jest to nadal standard definition, nie high definition. To klasyczny przykład błędu: ktoś kojarzy 720p, widzi 720 w liczbie, i automatycznie uznaje, że to HD. Niestety tak to nie działa. Z kolei 1920x1080 to już Full HD, czyli 1080p lub 1080i, zależnie od sposobu skanowania. Technicznie jest to jak najbardziej HD, ale inny poziom – wyższy niż HD Ready. Jeśli w zadaniu albo w dokumentacji projektu jest wyraźnie napisane „HD Ready”, to ustawienie Full HD jest po prostu inne niż wymagane. Plik będzie cięższy, będzie wymagał wyższego bitrate’u, a w wielu zastosowaniach webowych będzie to niepotrzebne obciążenie serwera i łącza użytkownika. Typowym błędem jest myślenie: „im większa rozdzielczość, tym lepiej”, bez zastanowienia się nad wymaganiami, możliwościami odtwarzania i standardami sprzętu (telewizory HD Ready natywnie mają matryce 1366x768, więc 1280x720 jest dla nich naturalnym formatem). Dlatego w kontekście przygotowania materiału do publikacji, szczególnie na strony WWW i do prostego streamingu, warto kojarzyć trzy podstawowe poziomy: SD (np. 720x480), HD Ready (1280x720) i Full HD (1920x1080). Wtedy łatwiej uniknąć pomyłek i dobrać taką rozdzielczość, która jest zgodna z założeniami projektu i możliwościami odbiorców, zamiast kierować się tylko intuicją albo większą liczbą pikseli.

Pytanie 22

Jaką maksymalną liczbę znaczników &lt;td&gt; można zastosować w tabeli składającej się z trzech kolumn i trzech wierszy, która nie zawiera złączeń między komórkami oraz wiersza nagłówkowego?

A. 3
B. 6
C. 9
D. 12
Odpowiedź 9 jest poprawna, ponieważ w tabeli składającej się z trzech kolumn i trzech wierszy, każdy wiersz może zawierać trzy komórki danych. Zatem, aby obliczyć maksymalną liczbę znaczników &lt;td&gt;, należy pomnożyć liczbę kolumn przez liczbę wierszy: 3 kolumny x 3 wiersze = 9 znaczników &lt;td&gt;. Ważne jest, aby pamiętać, że w kontekście HTML, znacznik &lt;td&gt; służy do definiowania komórek tabeli i jest używany tylko do umieszczania danych w tabeli. Przy projektowaniu tabel w HTML, dobrym rozwiązaniem jest stosowanie przejrzystej struktury oraz odpowiednich znaczników, aby poprawić czytelność i dostępność stron. Zgodnie z dobrymi praktykami, zawsze warto używać znaczników &lt;th&gt; do nagłówków kolumn, ale w tym przypadku, zgodnie z treścią pytania, zakładamy, że nie stosujemy wiersza nagłówkowego. W efekcie maksymalna liczba komórek, które można wykorzystać w takiej tabeli, wynosi 9. Przykładem zastosowania takiej tabeli może być wyświetlanie danych o produktach, gdzie każda komórka zawierać może różne informacje, takie jak nazwa produktu, cena i ilość.

Pytanie 23

Implementując przedstawiony fragment algorytmu należy posłużyć się instrukcją

Ilustracja do pytania
A. break
B. for
C. while
D. if
Dobra robota! Trafiłeś z odpowiedzią - to 'if'. To, co analizowałeś, to struktura warunkowa. Używamy jej, żeby sprawdzić, czy coś się zgadza. W tym przypadku algorytm sprawdza, czy 'a' jest większe niż 'b'. Jeśli tak, to robi jedną rzecz, a jeśli nie, to robi coś innego. To klasyczne wykorzystanie 'if'. Takie instrukcje warunkowe są naprawdę ważne w programowaniu, bo umożliwiają tworzenie elastycznych algorytmów, które reagują na różne sytuacje. Dzięki nim nasze programy stają się bardziej dynamiczne i inteligentne.

Pytanie 24

Który atrybut należy dodać do znacznika <video>, aby wyciszyć dźwięk odtwarzanego w przeglądarce filmu?

<video>
    <source src="film.mp4" type="video/mp4">
</video>
A. loop
B. muted
C. autoplay
D. controls
Twoja odpowiedź jest poprawna. Atrybut 'muted' jest używany w znaczniku <video>, aby wyłączyć dźwięk dla filmu wyświetlanego w przeglądarce. Jest to sposób na sterowanie dźwiękiem bez konieczności korzystania z dodatkowych elementów kontrolujących odtwarzanie filmu. Jest to bardzo przydatne, gdy chcemy, aby film był odtwarzany w tle bez zakłócania użytkownika dźwiękiem, co jest często stosowane na stronach internetowych. Ważne jest to, że to atrybut 'muted' jest odpowiedzialny za początkowy stan dźwięku filmu, a nie za to, czy użytkownik będzie mógł go później włączyć. Dodatkowo, dobrą praktyką jest pozostawienie użytkownikowi możliwości sterowania dźwiękiem, nawet jeśli jest on domyślnie wyłączony, co można osiągnąć dodając atrybut 'controls'.

Pytanie 25

W SQL, aby ustawić klucz główny na polu id w tabeli uczniowie, można użyć polecenia

A. ADD TABLE uczniowie PRIMARY KEY (id)
B. INSERT TABLE uczniowie ADD PRIMARY KEY (id)
C. INSERT TABLE uczniowie PRIMARY KEY (id)
D. ALTER TABLE uczniowie ADD PRIMARY KEY (id)
Odpowiedź 'ALTER TABLE uczniowie ADD PRIMARY KEY (id);' jest poprawna, ponieważ polecenie ALTER TABLE w SQL służy do modyfikacji istniejącej struktury tabeli. W tym przypadku chcemy dodać klucz podstawowy do istniejącej tabeli uczniowie, co jest zgodne z zasadami normalizacji baz danych. Klucz podstawowy jest unikalnym identyfikatorem dla każdego rekordu, co zapewnia integralność danych. Przykładowo, jeśli tabela uczniowie zawiera kolumnę id, która jest już zdefiniowana, użycie polecenia ALTER TABLE pozwala na dodanie klucza podstawowego do tej kolumny. Ważne jest, aby pamiętać, że przed dodaniem klucza podstawowego, kolumna musi być unikalna i nie może zawierać wartości NULL. Dodatkowo, zgodnie z najlepszymi praktykami, warto wcześniej sprawdzić, czy w tabeli nie ma duplikatów w kolumnie, aby uniknąć błędów w trakcie dodawania klucza. W kontekście systemów zarządzania bazami danych, takich jak MySQL czy PostgreSQL, poprawne zarządzanie kluczami podstawowymi jest kluczowe dla zapewnienia efektywności operacji na tabelach oraz dla poprawności logiki aplikacji korzystającej z bazy danych.

Pytanie 26

Celem testów wydajnościowych jest ocena

A. zdolności programu do funkcjonowania w sytuacjach, gdy sprzęt działa niepoprawnie
B. zdolności programu do funkcjonowania w sytuacjach, gdy system działa niepoprawnie
C. stopnia, w jakim system lub moduł spełnia wymagania dotyczące wydajności
D. ciągu zdarzeń, w którym prawdopodobieństwo danego zdarzenia zależy tylko od wyniku zdarzenia wcześniejszego
Testy wydajnościowe są kluczowym elementem procesu zapewnienia jakości oprogramowania, mającym na celu ocenę zdolności systemu lub modułu do spełnienia określonych wymagań wydajnościowych. Ich głównym celem jest zmierzenie, jak system radzi sobie w warunkach obciążenia, a także w różnych scenariuszach użytkowania. W ramach testów wydajnościowych analizuje się takie parametry jak czas reakcji, przepustowość oraz zasoby zużywane przez aplikację. Praktycznym przykładem może być testowanie aplikacji internetowej w warunkach, gdy korzysta z niej wielu użytkowników jednocześnie, co pozwala ocenić, jak skaluje się system. W kontekście standardów, organizacje często odnoszą się do metodologii takich jak Performance Testing Framework, a także do narzędzi jak JMeter czy LoadRunner, które umożliwiają automatyzację procesu testowania. Testy te pomagają w identyfikacji wąskich gardeł, które mogą wpływać na wydajność, co przekłada się na lepsze doświadczenia użytkowników oraz minimalizację kosztów związanych z utrzymaniem systemu.

Pytanie 27

W tabeli mieszkancy znajdują się dane o osobach z całego kraju. Aby ustalić, ile unikalnych miast występuje w tej tabeli, trzeba zapisać kwerendę

A. SELECT COUNT(miasto) FROM mieszkancy;
B. SELECT DISTINCT miasto FROM mieszkancy;
C. SELECT COUNT(DISTINCT miasto) FROM mieszkancy;
D. SELECT COUNT(miasto) FROM mieszkancy DISTINCT;
Wybór odpowiedzi "SELECT COUNT(DISTINCT miasto) FROM mieszkancy;" jest naprawdę trafny. Używasz funkcji COUNT razem z DISTINCT, co pozwala na zliczenie tylko unikalnych miast w tabeli 'mieszkancy'. Funkcja COUNT liczy wszystkie wiersze, a DISTINCT usuwa duplikaty, dzięki czemu dostajemy dokładną liczbę miast. Fajnie jest to wykorzystać, gdy analizujesz dane demograficzne – wtedy wiesz, jakie masz rozkłady w różnych miastach. W bazach danych to standardowy sposób, bo dzięki temu unikasz powielania danych i masz lepsze analizy. Ważne jest też, żeby pamiętać o wydajności zapytań; połączenie DISTINCT z COUNT może być bardziej efektywne niż próba szukania duplikatów później. No i zasady normalizacji bazy danych? One rzeczywiście pomagają w tym, żeby dane były uporządkowane, co ułatwia ich przetwarzanie i analizowanie.

Pytanie 28

W języku JavaScript zapisano funkcję. Co ona ma za zadanie?

function fun1(f) {
    if (f < 0) f = f * (-1);
    return f;
}
A. zwrócić wartość odwrotną do f
B. zwrócić wartość bezwzględną z f
C. wypisać wartość bezwzględną z f
D. wypisać wartość odwrotną do f
Twoja odpowiedź jest poprawna. Funkcja, o której mówi pytanie, zwraca wartość bezwzględną z argumentu f. W języku programowania JavaScript wartość bezwzględną możemy obliczyć w różny sposób. W tym przypadku, dla f mniejszego od zera funkcja mnoży f przez -1, co jest równoznaczne z obliczeniem wartości bezwzględnej dla liczby ujemnej. Dla liczby nieujemnej, funkcja zwraca jej wartość bez zmian. To jest zgodne z definicją wartości bezwzględnej, która mówi, że jest to odległość liczby od zera na osi liczb rzeczywistych, bez względu na kierunek. W praktyce, wartość bezwzględna często jest używana w algorytmach, w których interesuje nas tylko 'rozmiar' wartości, a nie jej kierunek, np. w algorytmach statystycznych, graficznych czy fizycznych.

Pytanie 29

Aby strona poprawnie skalowała się na urządzeniach mobilnych, rozmiar czcionki należy zdefiniować:

A. w pikselach
B. w procentach
C. w milimetrach
D. tylko znacznikami big i small
W projektowaniu responsywnym rozmiary, w tym wielkość czcionki, podaje się w jednostkach względnych – na przykład w procentach (albo em/rem). Tekst skaluje się wtedy proporcjonalnie do ustawień i urządzenia, zamiast mieć sztywną wartość. Dzięki temu strona pozostaje czytelna zarówno na telefonie, jak i na dużym monitorze. Dlatego rozmiar czcionki definiuje się w procentach.

Pytanie 30

Jaką szerokość przeznaczono dla treści strony według podanej definicji CSS?

body {
   border: 2px;
   height: 600px;
   width: 560px;
}
A. 560 px
B. 2 px
C. 640 px
D. 600 px
Twoja odpowiedź jest poprawna. Szerokość strony została zdefiniowana na 560 pikseli w kodzie CSS. W kontekście strony internetowej, to oznacza, że cała zawartość strony będzie wyświetlana w obszarze o szerokości nie większej niż 560 pikseli. To jest bardzo ważne podczas projektowania stron internetowych. Szerokość strony często jest ustalana na stałą wartość, aby zapewnić spójność wyglądu strony na różnych urządzeniach. W praktyce, jeśli chcesz, aby strona była 'responsywna', szerokość powinna być ustawiona na wartość procentową, co pozwoli na dynamiczne dostosowanie się strony do rozmiaru okna przeglądarki. Jednak w niektórych sytuacjach, jak na przykład w przypadku określonego układu strony, możliwe jest użycie stałej wartości szerokości. W każdym razie, zapamiętaj, że szerokość strony jest jednym z najważniejszych aspektów przy projektowaniu stron internetowych, który ma bezpośredni wpływ na doświadczenia użytkownika.

Pytanie 31

Zaprezentowano tabelę stworzoną przy użyciu kodu HTML, bez zastosowania stylów CSS. Która część kodu HTML odnosi się do pierwszego wiersza tabeli?

Ilustracja do pytania
A. Rys. A
B. Rys. B
C. Rys. C
D. Rys. D
Znaczniki HTML używane w konstrukcji tabel muszą być wybierane z uwzględnieniem ich przeznaczenia i semantycznego znaczenia. W przypadku budowy pierwszego wiersza tabeli, który pełni rolę nagłówka, kluczowe jest wykorzystanie odpowiednich znaczników, takich jak <th>. Wybór znaczników <td> w pierwszym wierszu, nawet jeśli zawierają one tekst pasujący do nagłówków, jest błędny, ponieważ <td> oznacza komórki danych, a nie nagłówki. Tego typu błędy mogą prowadzić do niejednoznacznej interpretacji struktury tabeli przez technologie wspomagające, jak czytniki ekranowe, co jest sprzeczne z wytycznymi dotyczącymi dostępności. Dodatkowo, korzystanie z tagów niewłaściwie zamieniających semantykę (np. <i> lub <center> wewnątrz <td>) nie tylko nie spełnia standardów estetycznych i funkcjonalnych, ale także zwiększa techniczne zadłużenie projektu. Brak poprawnego stosowania znaczników nagłówka (<th>) może utrudniać zrozumienie danych przez użytkowników oraz wpływać negatywnie na użyteczność strony. Poprawne zrozumienie i stosowanie semantycznych możliwości HTML jest fundamentem tworzenia dostępnych i efektywnych stron internetowych co ma kluczowe znaczenie w kontekście profesjonalnego podejścia do projektowania interfejsów użytkownika i architektury informacji na stronach internetowych.

Pytanie 32

W CSS wartości: underline, overline, blink są powiązane z atrybutem

A. text-style
B. font-style
C. font-weight
D. text-decoration
Atrybut text-decoration w CSS jest tym, co pozwala na dodawanie różnych efektów do tekstu. Możemy dzięki niemu użyć takich rzeczy jak underline, overline czy nawet blink, chociaż to ostatnie nie jest już zbyt popularne, bo wiele przeglądarek to ignoruje ze względu na dostępność. Dzięki tym efektom tekst może wyglądać bardziej estetycznie, a czytelność też się poprawia. Na przykład, jeśli użyjesz 'p { text-decoration: underline; }', to cały tekst w tym paragrafie będzie podkreślony. W CSS3 dodano też nowe możliwości, jak text-decoration-color czy text-decoration-style, co daje jeszcze większą kontrolę nad tym, jak nasz tekst będzie wyglądał. Dlatego myślę, że umiejętność korzystania z text-decoration jest naprawdę ważna dla każdego, kto zajmuje się tworzeniem stron internetowych.

Pytanie 33

Którego typu w języku PHP można użyć do przechowywania wielu wartości z możliwością ich indeksowania?

A.
float
B.
array
C.
double
D.
boolean
Pozostałe typy przechowują pojedynczą wartość, więc nie da się ich indeksować. float oraz double to liczby zmiennoprzecinkowe – jedna wartość liczbowa (w PHP są zresztą tym samym typem). boolean przechowuje tylko jedną z dwóch wartości: true albo false. Żaden z nich nie pomieści zbioru elementów dostępnych po indeksie. Wiele indeksowanych wartości przechowuje array, dlatego druga odpowiedź jest poprawna.

Pytanie 34

Co się stanie po kliknięciu w link z HTML zawierający znak #?

<a href="#dane">
A. Zostanie uruchomiony skrypt o nazwie dane
B. Otworzy się nowa karta w przeglądarce zatytułowana dane
C. Zostanie wybrany względny adres URL o nazwie dane
D. Strona przeskoczy do elementu o identyfikatorze równym dane
Odpowiedź, że kliknięcie odnośnika ze znakiem # w href spowoduje wywołanie skryptu o nazwie dane, jest błędna, ponieważ atrybut href służy do określania celu hiperłącza, a nie wywoływania skryptów. Skrypty mogą być wykonywane za pomocą JavaScript, np. poprzez onclick, ale nie przez sam atrybut href z identyfikatorem. Stwierdzenie, że otworzy się osobna karta przeglądarki o nazwie dane, również jest nieprawidłowe. Atrybut href z wartością zaczynającą się od # nie otwiera nowej karty, lecz wskazuje na fragment aktualnej strony. Otwieranie nowej karty można osiągnąć przez ustawienie target="_blank", ale to wymaga pełnego URL lub ścieżki względnej bez #. Twierdzenie, że zostanie wybrany adres względny URL o nazwie dane, jest mylnym zrozumieniem nawigacji wewnętrznej. Nawigacja z użyciem # kieruje do elementu na tej samej stronie, a nie do pliku czy zewnętrznej lokalizacji. Takie błędne przekonania mogą wynikać z braku zrozumienia specyfiki nawigacji wewnętrznej w HTML i różnicy między kotwicami a tradycyjnymi linkami URL. Zrozumienie tych różnic jest kluczowe dla poprawnego tworzenia stron zgodnych ze standardami sieciowymi oraz dostępnych i przyjaznych dla użytkowników.

Pytanie 35

Jakie jest zastosowanie certyfikatu SSL?

A. zapobiegania złośliwemu oprogramowaniu na stronie
B. przechowywania informacji o sesjach tworzonych na stronie
C. odszyfrowywania przesyłanych danych
D. określenia właściciela domeny
Często ludzie mylą, co właściwie robi certyfikat SSL. Na przykład blokowanie złośliwego oprogramowania to zupełnie inna sprawa, która bardziej dotyczy takich rzeczy jak firewalle czy systemy wykrywania intruzów. SSL nie chroni przed atakami hakerskimi, a raczej zabezpiecza dane podczas przesyłania ich między klientem a serwerem. Zapisywanie danych sesji, które są tworzone na stronie, to też inny temat – to bardziej dotyczy zarządzania sesjami, na przykład przez ciasteczka. No i jeśli chodzi o deszyfrację danych, to SSL nie zajmuje się tym bezpośrednio. On tylko zapewnia, że połączenie jest bezpieczne i dane nie wpadną w niepowołane ręce. Dlatego przypisywanie certyfikatom SSL funkcji, które wykonują inne technologie bezpieczeństwa, to spory błąd. Trzeba po prostu zrozumieć, że każdy element zabezpieczeń ma swoją rolę w sieci.

Pytanie 36

Jaką wartość w formacie RGB będzie miała barwa oznaczona kodem heksadecymalnym: #1510FE?

A. rgb(15, 10, FE)
B. rgb(21, 16, FE)
C. rgb(21, 16, 254)
D. rgb(21, 16, 255)
Odpowiedź rgb(21, 16, 254) jest dobra, bo te wartości RGB pochodzą z kodu heksadecymalnego #1510FE. W tym kodzie każda para cyfr pokazuje, jak mocno świeci dany kolor: od 00, co oznacza brak koloru, do FF, gdzie mamy pełną intensywność. W naszym przypadku, pierwsza para '15' to kolor czerwony, '10' to zielony, a 'FE' to niebieski. Jak to przeliczymy na dziesiętny, to '15' daje nam 21, '10' daje 16, a 'FE' to 254. I stąd mamy rgb(21, 16, 254). Te wartości są super przydatne, na przykład przy tworzeniu stylów CSS, gdzie kolory są podstawą. Warto ogarnąć, jak przerabiać kolory z jednego formatu na drugi – to naprawdę pomaga w projektowaniu grafiki i stron www.

Pytanie 37

Który składnik nie jest wymagany do instalacji i uruchomienia systemu CMS Joomla!?

A. serwer WWW
B. baza danych
C. parser PHP
D. platforma .NET
W pytaniu o wymagania systemowe dla Joomla! bardzo łatwo pomylić ogólne pojęcie „serwer” czy „platforma” z konkretnymi technologiami, które faktycznie są potrzebne. Joomla! to klasyczny CMS napisany w PHP, który działa w architekturze klient–serwer zgodnej z typowym modelem aplikacji webowych. Do poprawnego działania potrzebuje trzech filarów: serwera WWW, interpretera PHP oraz relacyjnej bazy danych. Serwer WWW, taki jak Apache czy Nginx, przyjmuje żądania HTTP z przeglądarki, obsługuje pliki statyczne i przekazuje żądania do skryptów PHP. Bez tego elementu użytkownik w ogóle nie byłby w stanie połączyć się z witryną. Parser (interpretator) PHP jest absolutnie kluczowy, bo cały kod Joomla! – logika logowania, panele administracyjne, generowanie treści, system szablonów – jest napisany właśnie w tym języku. To nie jest zwykły „dodatek”, tylko środowisko uruchomieniowe aplikacji. Baza danych z kolei przechowuje wszystkie dynamiczne dane: artykuły, użytkowników, uprawnienia, moduły, konfigurację. Bez bazy CMS przestałby być „systemem zarządzania treścią”, bo nie miałby gdzie tej treści trwale zapisywać. Częsty błąd myślowy polega na wrzucaniu do jednego worka wszystkich technologii serwerowych: skoro coś działa „na serwerze”, to może wymaga .NET, Javy, PHP – wszystko jedno. Tymczasem każdy CMS jest pisany w konkretnej technologii i wymaga zgodnego z nią środowiska. Joomla! nie wykorzystuje ASP.NET ani bibliotek .NET, więc platforma .NET nie jest jej potrzebna do niczego. Można mieć serwer z zainstalowanym .NET, ale jeśli nie ma tam PHP i odpowiedniej bazy danych, Joomla! i tak nie ruszy. Z mojego doświadczenia warto zawsze zaczynać od sprawdzenia, w jakim języku napisane jest dane oprogramowanie webowe i pod to dobierać stos serwerowy, zamiast zakładać, że każda aplikacja webowa wymaga .NET tylko dlatego, że kojarzy się on z „nowoczesnym” serwerem.

Pytanie 38

Który typ danych najlepiej nadaje się do zapisania daty urodzenia ucznia?

A.
TIME
B.
BLOB
C.
DATE
D.
ENUM
Datę urodzenia – samą datę, bez godziny – najlepiej zapisać typem DATE, który przechowuje rok, miesiąc i dzień (format RRRR-MM-DD). Pozwala to porównywać daty, sortować je i liczyć wiek bezpośrednio w bazie. Gdyby potrzebny był też czas, użyłoby się DATETIME lub TIMESTAMP, ale dla daty urodzenia wystarcza DATE. Dlatego to on jest właściwym typem.

Pytanie 39

Wskaż blok sformatowany poniższym stylem CSS:

background: linear-gradient(to right, LightBlue, DarkBlue);
Ilustracja do pytania
A. Blok 4.
B. Blok 1.
C. Blok 3.
D. Blok 2.
Gratulacje! Wybrałeś właściwą odpowiedź - Blok 2. W stylach CSS, zapis 'background: linear-gradient(to right, LightBlue, DarkBlue);' określa gradient liniowy, który przechodzi od koloru jasnoniebieskiego (LightBlue) do ciemnoniebieskiego (DarkBlue) poziomo, od lewej do prawej strony. To oznacza, że kolor tła danego elementu stopniowo zmienia się od jednego koloru do drugiego w określonym kierunku. Stosowanie gradientów jest popularną techniką w web designie, ponieważ pozwala na tworzenie płynnych przejść kolorów i dodaje estetyki stronie. Gradienty mogą być zastosowane do różnych elementów na stronie, takich jak tło, tekst, ramki itp. Warto zaznaczyć, że gradienty CSS mogą być nie tylko liniowe, ale również radialne. W tym przypadku, tylko Blok 2. jest sformatowany zgodnie z podanym stylem CSS, ponieważ zawiera gradient poziomo przechodzący od jasnoniebieskiego do ciemnoniebieskiego.

Pytanie 40

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

Ilustracja do pytania
A. alert(’Ile masz lat?’)
B. prompt(’Ile masz lat?’)
C. confirm(’Ile masz lat?’)
D. document.write(’Ile masz lat?’)
Prawidłowo – żeby wyświetlić w przeglądarce okno z polem tekstowym do wpisania odpowiedzi, trzeba użyć funkcji prompt(). W JavaScript wywołanie prompt('Ile masz lat?') powoduje pokazanie natywnego okna dialogowego z komunikatem oraz jednym polem input typu tekstowego. Funkcja zwraca to, co użytkownik wpisze, jako łańcuch znaków (string), albo null, jeśli kliknie „Anuluj”. Dzięki temu od razu możesz przypisać wynik do zmiennej, np.: const wiek = prompt('Ile masz lat?'); i dalej go przetwarzać w skrypcie, np. konwertować na liczbę: const wiekNum = Number(wiek); albo parseInt(wiek, 10). Z mojego doświadczenia prompt() jest często używany w prostych przykładach dydaktycznych, do szybkiego testowania logiki programu, np. pytanie o imię, wiek, hasło dostępu w wersji „demo”. W realnych aplikacjach produkcyjnych raczej unika się prompt(), bo jest mało elastyczny, trudno go ostylować i blokuje interfejs (jest modalny i synchroniczny). Standardem branżowym jest budowanie własnych okien dialogowych w HTML/CSS/JS, np. z użyciem <dialog>, frameworków UI albo bibliotek typu modal. Jednak do nauki podstaw JavaScript, zrozumienia przepływu danych między użytkownikiem a skryptem i pokazania prostych interakcji prompt() jest bardzo wygodny. Warto też pamiętać, że prompt zawsze zwraca tekst, więc jeśli dalej chcesz wykonywać obliczenia, to zgodnie z dobrymi praktykami najpierw jawnie rzutuj go na typ liczbowy i sprawdź, czy użytkownik nie wpisał bzdury (isNaN, walidacja zakresu itp.).