Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Rozpoczęcie: 14 października 2026 18:47
Zakończenie: 14 października 2026 19:09
Egzamin zdany!
Wynik: 20/40 punktów (50,0%)
Wymagane minimum: 20 punktów (50%)
Twój wynik na tle innych
Twój wynik jest lepszy niż 31% podejść do kwalifikacji INF.03.
Porównanie z 48002 zakończonymi podejściami do tej kwalifikacji (dane zbiorcze, bez wyników indywidualnych).
Zachowaj ten wynik na koncie
Załóż darmowe konto albo zaloguj się - ten egzamin trafi na Twoje konto, więc wrócisz do swoich błędów, będziesz śledzić postęp i dostaniesz powtórki dobrane do Twoich odpowiedzi.
Mamy tablicę o n elementach o nazwie t[n]. Zadaniem algorytmu, zapisanego w krokach, jest wyliczenie sumy
K1: i = 0; wynik = 0; K2: Dopóki i < n wykonuj K3 .. K4 K3: wynik ← wynik + t[i] K4: i ← i + 2 K5: wypisz wynik
A. sumy tych elementów tablicy, które mają wartości nieparzyste
B. wszystkich elementów tablicy
C. co drugiego elementu tablicy
Poprawna odpowiedź
D. n-elementów tej tablicy
Twoja odpowiedź
Niepoprawna odpowiedź. Pierwsza niepoprawna koncepcja sugeruje zsumowanie wszystkich elementów tablicy, co wymagałoby iteracji przez każdy element bez przeskakiwania indeksów. Taki algorytm miałby strukturę z pętlą stabilnie zwiększającą indeks o 1, co nie jest zgodne z przedstawionym kodem. Druga opcja zakłada sumowanie n-elementów tablicy, co jest mało precyzyjne i może sugerować błędne rozumienie, że n samo w sobie jest wartością sumowaną, a nie indeksem granicznym. Algorytm musiałby dodawać wszystkie elementy od zera do n-1, a w rzeczywistości operuje na co drugim indeksie. Ostatnia propozycja dotycząca sumowania elementów o wartościach nieparzystych wymagałaby dodatkowego warunku sprawdzającego parzystość wartości t[i], czego brak w przedstawionym kodzie. Typowym błędem jest niezrozumienie różnicy między iterowaniem po indeksach a wartościami oraz między warunkiem logicznym a przekształceniem pętli. Wszystkie te błędne odpowiedzi wynikają z nieprecyzyjnego przeanalizowania warunków i struktury pętli, co jest kluczowe w projektowaniu efektywnych algorytmów, zgodnie z zasadami inżynierii oprogramowania.
Pytanie 2
Czego wymaga uruchomienie kodu JavaScript w przeglądarce?
A. zamiany na kod maszynowy przez programistę
B. debugowania
C. kompilowania
D. interpretowania
Twoja odpowiedź
Poprawna odpowiedź. Kod JavaScript jest INTERPRETOWANY - przeglądarka czyta i wykonuje go na bieżąco, bez wcześniejszej kompilacji do osobnego pliku. Dlatego uruchomienie JS wymaga interpretowania.
Pytanie 3
Kolorem, który ma odcień niebieski, jest kolor
A. #EE0000
Twoja odpowiedź
B. #00EE00
C. #EE00EE
D. #0000EE
Poprawna odpowiedź
Niepoprawna odpowiedź. Odpowiedzi takie jak #EE0000, #00EE00 oraz #EE00EE wskazują na inne kolory, które nie są związane z odcieniem niebieskim. #EE0000 odpowiada czerwieni, co można zrozumieć analizując jego składowe: wysoka wartość czerwonej (EE) w połączeniu z zerowymi wartościami zielonej i niebieskiej. Czerwień jest często używana do przyciągania uwagi, jednak w kontekście pytań o kolor niebieski, jest to nieadekwatny wybór. Z kolei #00EE00 reprezentuje zielony, gdzie składowa zielona ma wysoką intensywność, a czerwona i niebieska są nieobecne, co nie ma związku z poszukiwanym kolorem. Ostatnia odpowiedź, #EE00EE, przedstawia różowy, co wynika z wysokiej wartości zarówno czerwonej, jak i niebieskiej, a braku zielonej. Dobrą praktyką w zakresie wyboru kolorów jest zrozumienie ich znaczenia oraz zastosowania w konkretnej dziedzinie, co ma kluczowe znaczenie w kontekście projektowania graficznego czy brandingowego. Niezrozumienie podstawowych zasad definiowania kolorów w formacie RGB może prowadzić do nieprawidłowych wyborów kolorystycznych, które z kolei mogą wpływać na percepcję marki czy funkcjonalność aplikacji. Dlatego ważne jest, aby zrozumieć, jakie wartości szesnastkowe odpowiadają poszczególnym kolorom oraz jakie są ich praktyczne zastosowania w projektach graficznych.
Pytanie 4
Jak wykonanie zapytania SQL przedstawionego poniżej wpłynie na tabelę pracownicy?
ALTER TABLEpracownicyMODIFYplecchar(9);
A. Zmieni typ danych kolumny plec na znakowy o stałej długości 9.
Poprawna odpowiedź
B. Utworzy kolumnę plec o typie znakowym o zmiennej długości 9.
C. Utworzy kolumnę plec o typie znakowym o stałej długości 9.
D. Zmieni typ danych kolumny plec na znakowy o zmiennej długości 9.
Twoja odpowiedź
Niepoprawna odpowiedź. Wiele osób może mylnie zakładać, że polecenie SQL ALTER TABLE z instrukcją MODIFY dodaje nową kolumnę, co jest nieprawdziwe. W rzeczywistości, ta instrukcja wprowadza zmiany w już istniejącej kolumnie, a nie tworzy nowej. Pojęcie „dodawania kolumny” odnosi się do instrukcji ADD, a nie MODIFY. Kolejnym błędnym założeniem może być mylenie typów danych - istnieje tendencja do myślenia, że „zmienna długość” oznacza typ char, podczas gdy jest to charakterystyczne dla typu varchar. Typ char jest używany do przechowywania danych o stałej długości, co oznacza, że nawet jeśli przechowywana wartość jest krótsza niż zadana długość, system automatycznie wypełni pozostałe znaki spacjami. Zmiana typu danych na char(9) nie umożliwia przechowywania zmiennych długości danych, a użycie varchar w tym kontekście byłoby właściwsze, gdyby istniała potrzeba przechowywania danych o różnej długości. Wydaje się, że niektórzy mogą też źle interpretować pojęcie „zmiennej długości” i myśleć, że jest to coś, co można przypisać kolumnie typu char, co prowadzi do nieprawidłowych wniosków.
Pytanie 5
Jakie zapytanie umożliwi Administratorowi odebranie uprawnień do przeglądania oraz edytowania danych w bazie gazeta, dla użytkownika redaktor?
Niepoprawna odpowiedź. Wszystkie pozostałe odpowiedzi są niepoprawne, ponieważ mylą pojęcie przyznawania i odbierania uprawnień. Na przykład, odpowiedź z użyciem GRANT SELECT, UPDATE ON gazeta.* TO 'redaktor'@'localhost'; jest błędna, ponieważ GRANT służy do przyznawania uprawnień, a nie ich odbierania. Użytkownik, który rozważa tę opcję, może mieć fałszywe przekonanie, że jest możliwe przypisanie uprawnień w sytuacji, gdy celem jest ich cofnięcie. Podobnie, odpowiedzi zawierające ALTER, jak REVOKE SELECT, ALTER ON gazeta.* FROM 'redaktor'@'localhost'; wprowadzają dodatkowy zamęt, ponieważ ALTER nie jest związane z przeglądaniem lub aktualizowaniem danych, ale odnosi się do modyfikacji struktury bazy danych. Błędne rozumienie różnic między SELECT, UPDATE i ALTER może prowadzić do poważnych problemów w zarządzaniu bazą danych, na przykład do nieautoryzowanych zmian w strukturze danych. Użytkownicy mogą także popełniać błąd w zakresie lokalizacji użytkownika, co w przypadku odpowiedzi jest określone jako 'redaktor'@'localhost';, co może być mylące w sytuacji, gdy użytkownik jest przypisany do innego hosta. Właściwe zrozumienie i stosowanie uprawnień w bazach danych jest fundamentalne dla ochrony danych, a także dla zapewnienia, że tylko uprawnieni użytkownicy mają dostęp do krytycznych informacji.
Pytanie 6
Jaką wartość uzyska zmienna x po wykonaniu poniższego kodu PHP?
mysqli_query($db, "DELETE FROM produkty WHERE status < 0");$x = mysqli_affected_rows($db);
A. Liczbę wierszy, które zostały dodane do tabeli produkty.
B. Liczbę wierszy w tabeli produkty, dla których pole status przekracza zero.
Twoja odpowiedź
C. Liczbę wierszy przetworzonych przez zapytanie DELETE FROM.
Poprawna odpowiedź
D. Liczbę wierszy, które znajdują się w bazie danych.
Niepoprawna odpowiedź. Wybór niepoprawnej odpowiedzi może wynikać z nieporozumienia dotyczącego działania funkcji mysqli_affected_rows oraz zrozumienia zapytań SQL. Wiele osób może myśleć, że funkcja ta zwraca liczbę wierszy w tabeli, co jest błędne. mSQL i PHP oferują wiele funkcji do interakcji z bazą danych, a zrozumienie ich specyfikacji jest kluczowe dla efektywnego programowania. Odpowiedź sugerująca, że x przyjmuje liczbę wierszy znajdujących się w bazie danych, jest absolutnie nieprawidłowa, ponieważ mysqli_affected_rows nie ma nic wspólnego z ogólną liczbą wierszy w tabeli. To funkcja, która skupia się na rezultatach ostatniego zapytania, a nie na całkowitym stanie bazy danych. Podobnie, zrozumienie zapytania DELETE FROM jako operacji, która zmienia stan bazy danych, jest fundamentalne. Inną popularną pomyłką jest myślenie, że liczba wierszy dodanych do tabeli jest w jakiś sposób związana z tym, co robi zapytanie DELETE. W rzeczywistości, podczas usuwania danych, nie dodajemy nic nowego, a funkcja ta jedynie informuje nas o usuniętych elementach. Dobrą praktyką jest również sięganie po dokumentację oraz testowanie kodu, co pozwala na lepsze zrozumienie zachowań funkcji i operacji na bazach danych.
Pytanie 7
Algorytm pokazany na ilustracji można zapisać w języku JavaScript przy użyciu instrukcji
A. for(i = 0; i > 10; i++)
B. var i = 0; while(i <= 10) i += 2
Twoja odpowiedź
C. var i = 0; do i++; while(i > 10)
D. var i = 0; do i = i + 2; while(i < 10)
Poprawna odpowiedź. Odpowiedź var i = 0 while(i <= 10) i += 2; jest poprawna, ponieważ reprezentuje poprawną implementację pętli while w języku JavaScript, która odzwierciedla logikę przedstawioną na rysunku. Kluczowym elementem jest inicjalizacja zmiennej i, ustawiając ją na 0. Następnie pętla while jest używana do sprawdzenia warunku i <= 10, co oznacza, że dopóki ten warunek jest spełniony, blok pętli będzie wykonywany. W każdym cyklu wartość i jest zwiększana o 2 za pomocą wyrażenia i += 2. Jest to typowy sposób iteracji w JavaScript, który pozwala na kontrolowaną manipulację zmienną kontrolującą pętlę. Takie podejście jest zgodne z najlepszymi praktykami, ponieważ zapewnia przejrzystość kodu i łatwość jego późniejszej modyfikacji. W praktycznych zastosowaniach, takie struktury są często używane w sytuacjach, gdy potrzebujemy przetworzyć dane w określonym zakresie, np. iterując przez elementy tablicy co drugi element. Zastosowanie pętli while z odpowiednim warunkiem umożliwia precyzyjną kontrolę nad przebiegiem iteracji, co jest kluczowe w programowaniu aplikacji i skryptów.
Pytanie 8
Którą operacją usuwa się zbędne krawędzie zdjęcia, wycinając z niego wybrany fragment?
A. dodaniem kanału alfa
B. zmianą saturacji
C. kadrowaniem
Twoja odpowiedź
D. zmniejszeniem jasności
Poprawna odpowiedź. Kadrowanie (crop) to wycięcie z obrazu wybranego FRAGMENTU - usuwa zbędne krawędzie, zostawiając tylko interesujący wycinek, bez zmiany barw. Dlatego tą operacją jest kadrowanie.
Pytanie 9
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.
<h3>Dobre strony </h3><h3style=>mojej strony</h3>
Twoja odpowiedź
B.
<span>Dobre strony </span><spanstyle=>mojej strony</span>
Poprawna odpowiedź
C.
<div>Dobre strony </div><divstyle=>mojej strony</div>
D.
<p>Dobre strony </p><pstyle=>mojej strony</p>
Niepoprawna odpowiedź. 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 10
Kolor zielony w skróconej notacji szesnastkowej można w CSS zapisać jako:
A.
#F00
B.
#FFF
C.
#0F0
Twoja odpowiedź
D.
#00F
Poprawna odpowiedź. CSS dopuszcza skrócony zapis koloru #RGB, w którym każda cyfra jest powielana - #0F0 odpowiada #00FF00. To pełna składowa zielona przy zerowych pozostałych, czyli czysty zielony. Skrót działa tylko, gdy obie cyfry pary są takie same (np. #FF8800 → #F80). Dlatego zielony w skróconej notacji to #0F0.
Pytanie 11
W języku JavaScript, aby zweryfikować, czy liczba leży w zakresie 100,200>, należy użyć:
A.
if(liczba<100||liczba>=200)
B.
if(liczba>100&&liczba<=200)
Twoja odpowiedź
C.
if(liczba<100&&liczba<=200)
D.
if(liczba>100||liczba<=200)
Poprawna odpowiedź. Aby sprawdzić, czy liczba znajduje się w przedziale od 100 do 200 włącznie w języku JavaScript, należy użyć operatora logicznego AND (&&). Wyrażenie if(liczba > 100 && liczba <= 200) oznacza, że liczba musi być większa niż 100 oraz jednocześnie mniejsza lub równa 200. Przykład: jeśli mamy liczby 150 i 250, to 150 spełnia warunki tego warunku (jest większa od 100 i mniejsza lub równa 200), podczas gdy 250 nie spełnia (jest większa od 200). Kluczowe jest zrozumienie operatorów porównania oraz logicznych w JavaScript. Zgodnie z ECMAScript, językiem, na którym oparty jest JavaScript, użycie operatora AND w tym kontekście jest standardowym podejściem do określenia, czy wartość znajduje się w danym przedziale. Poprawne użycie tych operatorów jest istotne dla logiki programów oraz dostosowywania warunków do różnych sytuacji, co jest niezbędne w codziennej pracy programisty.
Pytanie 12
W skrypcie JavaScript operatory: ||, && zaliczane są do kategorii operatorów
A. logicznymi
Twoja odpowiedź
B. bitowych
C. arytmetycznych
D. przypisania
Poprawna odpowiedź. Odpowiedź 'logicznym' jest poprawna, ponieważ w języku JavaScript operatory || (logiczne OR) i && (logiczne AND) są klasyfikowane jako operatory logiczne. Te operatory służą do wykonywania operacji na wartościach logicznych (prawda/fałsz). Użycie operatora && powoduje, że wyrażenie zwraca prawdę tylko wtedy, gdy oba operandy są prawdziwe. Z kolei operator || zwraca prawdę, jeśli przynajmniej jeden operand jest prawdziwy. Przykładem ich zastosowania może być warunkowe wykonywanie kodu, np. w instrukcjach if, gdzie możemy sprawdzić, czy spełnione są określone warunki. Standardowe praktyki programistyczne zalecają używanie tych operatorów do efektywnego zarządzania logiką programów, co zwiększa ich czytelność i umożliwia łatwiejszą konserwację. Ważne jest także zrozumienie, że operatory te wykonują krótką ocenę (short-circuit evaluation), co oznacza, że nie obliczają drugiego operandu, jeśli pierwszy już decyduje o wyniku. Dzięki tym właściwościom, operatory logiczne są kluczowym elementem wszelkich aplikacji programistycznych, które potrzebują podejmować decyzje w oparciu o różne warunki.
Pytanie 13
Który efekt został zaprezentowany na filmie?
A. Zwiększenie ostrości zdjęcia.
B. Przenikanie zdjęć.
Twoja odpowiedź
C. Zmiana jasności zdjęć.
D. Zmniejszenie kontrastu zdjęcia.
Poprawna odpowiedź. Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.
Niepoprawna odpowiedź. Analizując poszczególne odpowiedzi, można zrozumieć, gdzie mogą tkwić typowe błędy myślowe. Pierwsza odpowiedź zakłada, że kod wypisze nazwę konta ze znakiem '@'. Jednak kod zatrzymuje się przed '@', więc ten znak nie jest wypisywany. Jest to typowy błąd wynikający z niezrozumienia warunku pętli, która przerywa iterację, gdy napotka '@'. Druga odpowiedź poprawnie wskazuje, co kod faktycznie robi, czyli wypisuje nazwę konta. Trzecia odpowiedź myli się, oczekując, że cały adres e-mail zostanie wypisany. W rzeczywistości kod nigdy nie przejdzie przez '@', więc ani domena, ani '@' nie zostaną uwzględnione w wyniku. Jest to błąd wynikający z założenia, że pętla obsłuży cały ciąg bez przerwania. Brak zrozumienia logiki warunku pętli while może prowadzić do takiego błędnego wniosku. Czwarta odpowiedź sugeruje, że kod wypisze nazwę domeny, co jest błędne, ponieważ iteracja kończy się przed '@', nie osiągając części domenowej. Takie błędy mogą wynikać z mylnego zrozumienia przepływu sterowania w kodzie lub założenia, że kod wykonuje parsowanie zupełne, co w tym przypadku jest nieprawidłowe. W praktykach programistycznych ważne jest zrozumienie iteracji i warunków, co pozwala uniknąć takich nieporozumień w analizie kodu. Podstawowe zrozumienie logicznych warunków i iteracji w językach programowania jest kluczowe do prawidłowej analizy kodu i jego przewidywanego działania.
Pytanie 15
Po wykonaniu poniższego kodu JavaScript, co będzie przechowywać zmienna str2?
var str1 = "JavaScript"; var str2 = str1.substring(2,6);
A. nvaScr
B. vaScri
Twoja odpowiedź
C. avaS
D. vaSc
Poprawna odpowiedź
Niepoprawna odpowiedź. W przypadku analizy kodu JavaScript kluczowym aspektem jest zrozumienie działania metody substring która służy do wyodrębniania fragmentów łańcuchów znaków. Metoda przyjmuje dwa parametry: indeks początkowy oraz opcjonalny indeks końcowy. W kontekście pytania błędnym podejściem jest niedokładna interpretacja tych indeksów. Pierwsza niepoprawna odpowiedź avaS zakłada że wyodrębniane są znaki od 0 do 3 co jest niezgodne z podanymi indeksami 2 i 6. Druga odpowiedź vaScri zakłada że metoda substring obejmuje znaki aż do indeksu 6 włącznie co jest błędnym zrozumieniem zakresu działania tej metody. Metoda substring kończy wybieranie na znaku poprzedzającym indeks końcowy dlatego indeks 6 nie jest uwzględniany przy wyborze znaków. Kolejna niepoprawna odpowiedź nvaScr próbuje wybrać znaki rozpoczynając od indeksu 1 co jest błędnym startowym punktem dla zakresu 2 do 6. W kontekście dobrych praktyk programistycznych istotnym jest zrozumienie że indeksowanie od zera ma wpływ na rezultaty metod operujących na łańcuchach znaków. Częstym błędem początkujących programistów jest nieuwzględnienie tego faktu co prowadzi do niepoprawnych wyników i błędów logicznych w aplikacjach. Znajomość tych zasad pozwala efektywnie wykorzystywać możliwości języka JavaScript w codziennej pracy programistycznej.
Pytanie 16
Jak nazywa się proces przedstawienia, w formie właściwej dla danego środowiska, informacji zawartych w dokumencie elektronicznym?
A. mapowanie
B. renderowanie
Twoja odpowiedź
C. teksturowanie
D. rasteryzacja
Poprawna odpowiedź. Renderowanie to proces przekształcenia opisu dokumentu (np. kodu HTML i CSS, modelu 3D czy pliku) w gotową, widoczną postać odpowiednią dla danego środowiska. W przeglądarce silnik renderujący zamienia znaczniki i style w faktyczny obraz strony, układając tekst, kolory i elementy. W grafice 3D renderowanie generuje obraz sceny na podstawie modeli, świateł i materiałów. Dlatego proces przedstawienia informacji z dokumentu we właściwej formie to renderowanie.
Pytanie 17
W języku JavaScript przedstawiona definicja jest definicją
var imiona = ["Anna", "Jakub", "Iwona", "Krzysztof"];
A. kolekcji.
Twoja odpowiedź
B. obiektu.
C. tablicy.
Poprawna odpowiedź
D. klasy.
Niepoprawna odpowiedź. Niestety, wybrana przez Ciebie odpowiedź nie jest poprawna. Wygląda na to, że nie do końca zrozumiałeś jak działa definicja tablicy w JavaScript. Zrozumienie różnicy między tablicami, obiektami, klasami i kolekcjami jest kluczowe. Kolekcje to pojęcie bardziej ogólne, mogą one obejmować różne typy danych, takie jak tablice, listy czy zbiory, a termin ten nie jest używany w kontekście JavaScript. Klasy w JavaScript są 'szablonami' dla tworzenia obiektów, a więc struktur danych składających się z pól (zmiennych) i metod (funkcji). Tablica to specyficzny typ obiektu, który przechowuje elementy w określonym porządku. Wskazane jest, aby dokładnie zrozumieć, jakie informacje są przechowywane w tablicach, klasach, obiektach i kolekcjach w JavaScript, ponieważ jest to kluczowe dla efektywnego korzystania z tego języka. Spróbuj jeszcze raz, z pewnością za kolejnym razem się uda!
Pytanie 18
Jakim typem jest w PHP zmienna globalna $_POST (odbierająca dane formularza)?
A. zmienną tekstową
B. ciągiem znaków zakodowanym w JSON
C. tablicą asocjacyjną
Poprawna odpowiedź
D. obiektem klasy stdClass
Twoja odpowiedź
Niepoprawna odpowiedź. Pozostałe typy nie pasują. $_POST nie jest pojedynczą zmienną tekstową ani ciągiem JSON - przechowuje wiele par klucz-wartość. Nie jest też obiektem klasy stdClass (do pól sięga się przez [], nie przez ->). To tablica asocjacyjna.
Pytanie 19
Hermetyzacja to zasada programowania obiektowego, która mówi, że
A. typy pól w klasach/obiektach mogą być zmieniane w sposób dynamiczny w zależności od przypisywanych danych
B. klasy/obiekty mogą definiować metody wirtualne, które są realizowane w klasach/obiektach pochodnych
C. pola i metody dostępne tylko dla konkretnej klasy/obiektu mają zasięg ograniczony do private lub protected
Twoja odpowiedź
D. klasy/obiekty mogą dzielić się funkcjonalnością
Poprawna odpowiedź. Hermetyzacja, jako kluczowa zasada programowania obiektowego, odnosi się do kontrolowania dostępu do pól i metod w klasach. Oznacza to, że elementy, które nie powinny być dostępne z zewnątrz, są oznaczane jako private lub protected. Dzięki temu, tylko metody danej klasy mają dostęp do tych elementów, co minimalizuje ryzyko niepożądanej modyfikacji danych oraz promuje enkapsulację. Na przykład, tworząc klasę `BankAccount`, możemy mieć pole `balance` oznaczone jako private. W ten sposób, dostęp do tego pola jest możliwy jedynie poprzez publiczne metody, takie jak `deposit` czy `withdraw`, co pozwala na kontrolowanie logiki biznesowej. Takie podejście jest zgodne z zasadami SOLID, a szczególnie z zasadą odpowiedzialności pojedynczej, ponieważ klasa ma pełną kontrolę nad swoją logiką. Dodatkowo, hermetyzacja ułatwia późniejsze zmiany w implementacji, nie wpływając na inne części aplikacji, które korzystają z tych klas.
Pytanie 20
Jaką kompetencję społeczną ma osoba, która potrafi wyrażać swoje zdanie i bronić swoich racji, nie naruszając przy tym granic własnych ani innych ludzi?
A. empatia
Twoja odpowiedź
B. konformizm
C. akomodacja
D. asertywność
Poprawna odpowiedź
Niepoprawna odpowiedź. Pozostałe pojęcia opisują inne postawy. Empatia to zdolność rozumienia uczuć innych, a nie wyrażania własnego zdania. Akomodacja (dostosowanie) i konformizm oznaczają uleganie otoczeniu i rezygnację z własnego stanowiska, czyli przeciwieństwo bronienia racji. Opisana postawa to asertywność.
Pytanie 21
Jakiego języka można użyć do obsługi połączenia z bazą danych MySQL podczas tworzenia aplikacji internetowej?
A. XHTML
B. CSS
C. HTML
D. PHP
Twoja odpowiedź
Poprawna odpowiedź. Do obsługi bazy danych MySQL w aplikacji internetowej używa się języka działającego po stronie serwera - najczęściej PHP. To w nim nawiązuje się połączenie (np. funkcją mysqli_connect lub przez PDO), wysyła zapytania SQL i przetwarza wyniki, zanim gotowa strona trafi do przeglądarki. HTML, XHTML i CSS odpowiadają wyłącznie za wygląd i strukturę strony. Dlatego do współpracy z MySQL służy PHP.
Pytanie 22
Jakie znaczniki należy zastosować, aby umieścić kod w języku PHP w pliku z rozszerzeniem .php?
A.
<php.../>
B.
<?php...?>
Twoja odpowiedź
C.
<php>...</php>
D.
<?php>...<php?>
Poprawna odpowiedź. Atrybut w bazie danych to nazwana KOLUMNA tabeli, opisująca jedną określoną cechę obiektu (encji) - np. w tabeli „Uczeń” atrybutami są „imię”, „nazwisko”, „klasa”. Każda krotka (wiersz) ma dla danego atrybutu konkretną wartość. Dlatego atrybut to nazwana kolumna opisująca cechę.
Pytanie 23
W języku CSS zdefiniowano formatowanie
p > i {color: blue}
Oznacza to, że kolorem niebieskim zostanie zapisany
A. cały tekst nagłówków niezależnie od ich formatowania.
B. cały tekst paragrafu niezależnie od jego formatowania.
Twoja odpowiedź
C. pochylony tekst paragrafu.
Poprawna odpowiedź
D. pogrubiony tekst paragrafu.
Niepoprawna odpowiedź. W tym pytaniu łatwo pomylić działanie selektora CSS z ogólnym formatowaniem całego paragrafu. Zapis p > i nie oznacza, że reguła dotyczy całego elementu p. Gdyby styl miał objąć cały tekst paragrafu, selektor wyglądałby po prostu p, na przykład p { color: blue }. Tutaj jednak po lewej stronie reguły wskazano konkretny układ elementów: element i musi być bezpośrednio umieszczony w elemencie p. Dopiero wtedy dostaje właściwość color: blue. To dość typowy błąd myślowy: ktoś widzi literę p w selektorze i od razu zakłada, że stylowany jest paragraf, a w CSS ostatni element selektora jest zwykle tym, do którego faktycznie przypisuje się deklaracje.
Nie chodzi też o tekst pogrubiony. Pogrubienie w HTML kojarzy się raczej z elementami b albo strong, a nie z i. Element i tradycyjnie wyświetla tekst kursywą, chociaż we współczesnym HTML ma bardziej semantyczne znaczenie, np. wyróżnienie innego tonu wypowiedzi albo nazwy technicznej. Sama właściwość color zmienia kolor znaków, a nie grubość czy pochylenie tekstu.
Selektor nie ma też nic wspólnego z nagłówkami. Nagłówki to elementy h1, h2, h3 i tak dalej, więc musiałyby pojawić się w selektorze, aby reguła ich dotyczyła. Warto zapamiętać prostą zasadę: p > i czytamy jako element i będący bezpośrednim dzieckiem elementu p. Z mojego doświadczenia taka umiejętność czytania selektorów bardzo pomaga przy debugowaniu CSS w narzędziach deweloperskich przeglądarki, bo od razu widać, dlaczego dany styl działa albo nie działa.
Pytanie 24
Co spowoduje
DELETEFROMmieszkaniaWHEREstatus=1;
?
A. usunięcie pola status z tabeli
B. usunięcie tabel z bazy mieszkania
C. usunięcie rekordów z status=1 z tabeli mieszkania
Twoja odpowiedź
D. usunięcie całej tabeli mieszkania
Poprawna odpowiedź.DELETEFROMmieszkaniaWHEREstatus=1; usuwa z tabeli mieszkania tylko te WIERSZE, w których pole status ma wartość 1. Struktura tabeli i pozostałe rekordy zostają nienaruszone. Dlatego polecenie usunie rekordy ze status = 1.
Pytanie 25
Integralność referencyjna w relacyjnych bazach danych oznacza, że
A. wartość klucza głównego oraz klucza obcego nie może być pusta
B. wartość klucza obcego w danej tabeli musi być albo równa wartości klucza głównego w związanej z nią tabeli albo równa wartości NULL
Poprawna odpowiedź
C. klucz główny lub klucz obcy nie mogą zawierać wartości NULL
Twoja odpowiedź
D. każdemu kluczowi głównemu przyporządkowany jest dokładnie jeden klucz obcy w powiązanych tabelach
Niepoprawna odpowiedź. Wybór odpowiedzi sugerujących, że każdemu kluczowi głównemu odpowiada dokładnie jeden klucz obcy w tabeli lub tabelach powiązanych, jest błędny. W rzeczywistości, jeden klucz główny może być powiązany z wieloma kluczami obcymi w różnych rekordach. Na przykład, w bazie danych dotyczącej zamówień, klucz główny tabeli 'Klienci' może być referencjonowany przez wiele rekordów w tabeli 'Zamówienia', co oznacza, że ten sam klient może mieć wiele zamówień. Odpowiedzi sugerujące, że klucz główny lub klucz obcy nie zawierają wartości NULL, są również mylące. W praktyce, klucze obce mogą zawierać wartość NULL, co oznacza, że dany rekord nie musi mieć przypisanego odniesienia do innej tabeli. Przykładem mogą być zamówienia, które nie są jeszcze przypisane do żadnego klienta – w takim wypadku wartość klucza obcego (KlientID) może być NULL. Te nieprawidłowe odpowiedzi prowadzą do błędnych wniosków, które mogą wpłynąć na projektowanie baz danych oraz ich funkcjonalność. Zrozumienie, że klucze obce mogą być NULL oraz że jeden klucz główny może być powiązany z wieloma kluczami obcymi, jest kluczowe dla prawidłowego modelowania danych i zapewnienia spójności w bazach danych.
Pytanie 26
Które z poniższych poleceń JavaScript zmieni kolor tekstu na niebieski w paragrafie oznaczonym w HTML?
<p id="jeden">Kwalifikacja EE.01</p>
A. document.getElementById("jeden").background-color = "blue";
Twoja odpowiedź
B. document.getElementById("jeden").color = "blue";
C. document.getElementById("jeden").style.background-color = "blue";
D. document.getElementById("jeden").style.color = "blue";
Poprawna odpowiedź
Niepoprawna odpowiedź. W analizowanym pytaniu tylko jedna odpowiedź poprawnie odnosi się do zmiany koloru tekstu w elemencie HTML. Wielu początkujących programistów popełnia błędy związane z nieznajomością struktury obiektowej Document Object Model czyli DOM. Użycie właściwości background-color w odpowiedzi pierwszej i czwartej wskazuje na próbę zmiany tła a nie koloru tekstu. Właściwość style.backgroundColor jest stosowana do zmiany tła elementu a nie tekstu w nim zawartego. Rozróżnienie tych dwóch właściwości jest kluczowe w stylowaniu elementów HTML. Odpowiedź trzecia document.getElementById("jeden").color = "blue"; błędnie zakłada że property color jest bezpośrednio dostępne na poziomie elementu co nie jest prawdą. Właściwości stylów CSS są dostępne w obiekcie style związanym z elementem. Typowym błędem myślowym jest założenie że właściwości CSS można stosować bezpośrednio jako właściwości obiektów DOM co prowadzi do niespójności i błędów w kodzie. Zrozumienie jak obiekt style działa w kontekście DOM pozwala uniknąć takich pomyłek. Ważne jest aby pamiętać że JavaScript umożliwia dynamiczne manipulowanie stylami ale wymaga to poprawnego odwołania się do właściwości stylu poprzez obiekt style co jest często mylone przez początkujących. Poprawne użycie składni JavaScript w kontekście DOM jest kluczowe dla dynamicznego i responsywnego programowania webowego. Przy projektowaniu aplikacji webowych kluczowe jest również przestrzeganie zasad oddzielania logiki biznesowej od prezentacji co zapewnia lepszą czytelność i utrzymanie kodu. Stąd wiedza o poprawnym użyciu stylów w JavaScript jest nie tylko przydatna ale również konieczna dla efektywnego tworzenia aplikacji.
Pytanie 27
Który z przedstawionych ciągów znaków nie pasuje do wzorca wyrażenia regularnego określonego poniżej?
Poprawna odpowiedź. Wyrażenie regularne jest narzędziem do precyzyjnego przeszukiwania i manipulowania tekstem zgodnie z określonymi wzorcami. W podanym wzorcu, (([A-ZŁŻ][a-ząęóźżćńś]{2,})(-[A-ZŁŻ][a-ząęóźżćńś]{2,})?)?, szukamy ciągów rozpoczynających się dużą literą, następujących po niej przynajmniej dwóch małych liter, z możliwością oddzielenia myślnikiem i kolejną sekwencją podobnego formatu. Odpowiedź Jelenia Góra nie pasuje do tego wzorca, ponieważ zawiera spację, co łamie ciągłość wzorca. Wyrażenia regularne są kluczowe w przetwarzaniu danych tekstowych i walidacji, ponieważ pozwalają na dynamiczne określanie struktury danych. Przykłady zastosowania obejmują filtrowanie danych wejściowych w formularzach czy analizowanie logów serwerowych. W praktyce, stosując wyrażenia regularne, można skutecznie odróżniać i przetwarzać skomplikowane struktury tekstowe zgodnie z wymaganymi kryteriami, co jest standardem w branżach opartych na danych. Zrozumienie, jak działa taki wzorzec, pomaga w wielu zadaniach związanych z przetwarzaniem tekstu, w tym w programowaniu i analizie danych.
Pytanie 28
Zaprezentowane pole input daje możliwość
<inputtype="checkbox"name="text1"value="text2">
A. wybrania opcji
Poprawna odpowiedź
B. zaznaczenia opcji z listy zawierającej wartości text1 i text2
Twoja odpowiedź
C. wprowadzenia hasła
D. wpisania dowolnego tekstu
Niepoprawna odpowiedź. Pole input typu text umożliwia wpisanie dowolnego tekstu przez użytkownika co jest powszechnie używane w formularzach do wprowadzania danych takich jak imiona adresy email czy inne informacje tekstowe. Błąd polega na tym że checkbox nie służy do wpisywania tekstu lecz do wyboru opcji. Pole input typu password z kolei pozwala ukrywać wprowadzany tekst maskując go co jest typowym zastosowaniem dla pól wprowadzania haseł w formularzach logowania. Pomimo że oba te pola wykorzystują tag <input> ich przeznaczenie oraz sposób działania znacząco się różnią. Innym typem pola wyboru jest select które w połączeniu z elementem <option> pozwala użytkownikowi wybrać jedną spośród zdefiniowanych opcji. Select różni się od checkboxa tym że zazwyczaj domyślnie pozwala na wybór jednej opcji co jest bardziej zbliżone do działania radio buttonów. Wybór niepoprawnych odpowiedzi często wynika z niedostatecznego zrozumienia specyfiki oraz zastosowań różnych typów pól input co jest kluczowe dla poprawnego projektowania i implementacji formularzy internetowych. Zrozumienie funkcji i zastosowań różnych typów elementów input pozwala na tworzenie bardziej intuicyjnych i funkcjonalnych interfejsów użytkownika spełniających standardy dostępności i użyteczności co jest szczególnie ważne w kontekście projektowania zgodnego z zasadami UX.
Pytanie 29
Na ilustracji ukazano rezultat stylizacji za pomocą CSS oraz kod HTML generujący ten przykład. Zakładając, że marginesy wewnętrzne wynoszą 50 px, a zewnętrzne 20 px, jak wygląda styl CSS dla tego obrazu?
B.
Twoja odpowiedź
D.
C.
Poprawna odpowiedź
A.
Niepoprawna odpowiedź. Wybór niewłaściwej odpowiedzi może wynikać z niepełnego zrozumienia zastosowania poszczególnych właściwości CSS. Pierwsza możliwość sugeruje użycie dotted border zamiast solid co może być mylące w kontekście estetyki i czytelności projektu. Dotted border wprowadza przerywaną linię obramowania, co nie zawsze jest pożądane w profesjonalnym wyglądzie strony. Kolejna błędna konfiguracja zmienia marginesy i padanie co wpływa na ogólny układ i spójność wizualną. Błędne ustawienie marginesów zewnętrznych na 50px przy zmniejszeniu padania do 20px może zaburzyć proporcje i układ elementów wpływając na czytelność. Stylowanie z niewłaściwymi wartościami prowadzi do nieprzewidywalnych rezultatów zwłaszcza na urządzeniach o różnych rozdzielczościach. Ważne jest zrozumienie jak CSS wpływa na model boxu i jak poszczególne właściwości oddziałują na siebie co jest kluczowe w tworzeniu responsywnych i estetycznie spójnych interfejsów. Zrozumienie tych koncepcji jest kluczowe w unikaniu typowych pułapek projektowych i budowaniu stron zgodnych z nowoczesnymi standardami.
Pytanie 30
Skrypt stworzony w języku JavaScript wyznacza cenę promocyjną dla swetrów w barwach: zielonej, niebieskiej (zmienna kolor) przy wydatkach przekraczających 200 zł (zmienna zakupy). Warunek niezbędny do obliczeń powinien być zapisany z użyciem wyrażenia logicznego?
Niepoprawna odpowiedź. Niepoprawne odpowiedzi bazują na błędnych założeniach dotyczących operatorów logicznych oraz struktury warunków. Odpowiedź zakupy > 200 || kolor == 'zielony' || kolor == 'niebieski' wykorzystuje operator '||' w sposób, który pozwala na spełnienie warunku nawet, gdy zakupy są mniejsze niż 200, co nie prowadzi do pożądanego efektu obliczenia ceny promocyjnej. Kolejna odpowiedź, zakupy > 200 && kolor == 'zielony' && kolor == 'niebieski', nie uwzględnia możliwości, że kolor może być jednym z dwóch dozwolonych, co sprawia, że jest zbyt restrykcyjna. Ostatnia odpowiedź zakupy > 200 || (kolor == 'zielony' && kolor == 'niebieski') implikuje, że kolor musi być jednocześnie zielony i niebieski, co w kontekście jednego swetra jest fizycznie niemożliwe. Kluczowym błędem myślowym w tych odpowiedziach jest nieprawidłowa interpretacja operatorów logicznych oraz brak zrozumienia, jak połączenie warunków '&&' i '||' wpływa na ich działanie. Zastosowanie odpowiednich operatorów w konstruowaniu wyrażeń logicznych jest fundamentalne w programowaniu, ponieważ nieprawidłowe podejście do logiki warunkowej może prowadzić do błędów w aplikacji oraz nieoczekiwanych zachowań w kodzie.
Pytanie 31
Wywoływanie funkcji przez samą siebie to
A. rekurencja
Twoja odpowiedź
B. iteracja
C. dziedziczenie
D. hermetyzacja
Poprawna odpowiedź. Rekurencja to technika programistyczna, w której funkcja wywołuje samą siebie w celu rozwiązania problemu. Jest to potężne narzędzie, które pozwala na rozwiązywanie złożonych problemów przez ich dzielenie na mniejsze, bardziej przystępne podproblemy. Przykładem zastosowania rekurencji może być obliczanie silni liczby naturalnej, gdzie silnia n (n!) jest definiowana jako n * (n-1)! dla n > 0, a 1! = 1. W praktyce, rekurencja jest często wykorzystywana w algorytmach związanych z przeszukiwaniem struktur danych, takich jak drzewa czy grafy, gdzie takie podejście pozwala na eleganckie i czytelne rozwiązania. Dobrą praktyką w programowaniu rekurencyjnym jest zawsze definiowanie warunku zakończenia, aby uniknąć niekończących się wywołań, co mogłoby prowadzić do przepełnienia stosu. Rekurencja jest zgodna z zasadami programowania funkcyjnego, które promuje czystość i modularność kodu, co sprzyja jego testowalności i ponownemu wykorzystaniu.
B. nie posiada zagłębień i jest punktowana, wyświetla 5 punktów
C. jest numerowana z zagłębioną listą punktowaną
Twoja odpowiedź
D. nie zawiera zagłębień i jest numerowana, słowo "niebieski" ma przyporządkowany numer 5
Poprawna odpowiedź. To pytanie świetnie pokazuje, jak w HTML można łączyć różne typy list, czyli listy numerowane (<ol>) oraz punktowane (<ul>). W tym przypadku mamy główną listę numerowaną, gdzie każdy element to <li>. Jednym z tych elementów jest „czerwony”, pod którym zagnieżdżono listę punktowaną z dwoma podpunktami („różowy”, „pomarańczowy”). Taki sposób strukturyzowania treści w HTML to całkowicie zgodna ze specyfikacją praktyka – właśnie dzięki kombinowaniu <ol> i <ul> można czytelnie przedstawiać np. instrukcje czy hierarchiczne zestawienia. Moim zdaniem to jedno z najprostszych, a zarazem najbardziej efektywnych narzędzi do prezentowania hierarchii – nie tylko na stronach technicznych, ale nawet w prostych notatkach. Przeglądarki zawsze renderują <ol> jako listę numerowaną, a <ul> jako wypunktowaną, więc użytkownik końcowy od razu widzi, co jest ważniejsze, a co podrzędne. Takie zagnieżdżenie list to w branży webowej chleb powszedni – np. instrukcje krok po kroku, gdzie niektóre kroki mają dodatkowe podpunkty. Warto pamiętać, że trzymanie się tej struktury i nie mieszanie porządkowania (np. nie zamieniać miejscami <ol> i <ul> bez powodu) ułatwia późniejszą edycję i utrzymanie kodu, co w większych projektach bardzo doceni każdy programista. Sam często stosuję takie rozwiązania i naprawdę nie ma tu lepszej praktyki, jeśli chodzi o przejrzystość kodu HTML.
Pytanie 33
Która rozdzielczość daje proporcje obrazu 16:9 (przy kwadratowym pikselu)?
A. 320 × 240
B. 800 × 480
C. 1366 × 768
Poprawna odpowiedź
D. 2560 × 2048
Twoja odpowiedź
Niepoprawna odpowiedź. Po przeliczeniu pozostałe rozdzielczości dają inne kształty obrazu. 320 × 240 to ≈ 1,33, czyli klasyczne 4:3 (stare monitory), a 800 × 480 ≈ 1,67. 2560 × 2048 daje ≈ 1,25, blisko proporcji 5:4. Tylko 1366 × 768 wychodzi ≈ 1,78, czyli 16:9.
Pytanie 34
Wskaż nieprawidłowy opis optymalizacji kodu generowanego przez program.
A. Jej celem jest sprawdzenie zgodności z wymogami formalnymi
Poprawna odpowiedź
B. Może być realizowana na różnych etapach działania w celu przyspieszenia wykonania kodu przez procesor
C. Jej celem jest zwiększenie efektywności działania programu
D. Powinna skutkować modyfikacją kodu źródłowego, aby działał on szybciej
Twoja odpowiedź
Niepoprawna odpowiedź. Wszystkie niepoprawne odpowiedzi odnoszą się do różnych aspektów, które nie są zgodne z rzeczywistym celem optymalizacji kodu wynikowego. Poprawa wydajności programu i zwiększenie szybkości wykonywania kodu przez procesor są kluczowymi elementami optymalizacji; niezbędne jest dążenie do maksymalizacji efektywności działania aplikacji. Proces optymalizacji nie może być związany jedynie z zgodnością z wymogami formalnymi, ponieważ to bardziej dotyczy analizy jakości kodu i jego zgodności z zasadami programowania, a nie jego wydajności. Dodatkowo, modyfikacje kodu źródłowego w kontekście optymalizacji powinny koncentrować się na przyspieszeniu działania, a nie tylko na poprawie formalnych aspektów, które mogą nie wpływać na wydajność. W praktyce, jeśli kod źródłowy nie jest zoptymalizowany pod kątem wydajności, może prowadzić do znacznych opóźnień, co jest niezgodne z celem optymalizacji. Dlatego istotne jest, aby w procesie tym skupić się na zwiększaniu szybkości i wydajności, a nie na spełnianiu jedynie formalnych wymogów, które mogą być mniej istotne w kontekście ogólnej funkcjonalności i szybkości działania programów.
Pytanie 35
W języku JavaScript zapisano poniższy fragment kodu:
varx=10;x++;console.log(x);
Po uruchomieniu skryptu zmienna x
A. będzie miała wartość 10 i zostanie wyświetlona w głównym oknie przeglądarki internetowej
B. będzie miała wartość 10 i zostanie pokazana w dokumencie HTML
C. będzie miała wartość 11 i zostanie wyświetlona w oknie popup
D. będzie miała wartość 11 i zostanie wyświetlona w konsoli przeglądarki internetowej
Twoja odpowiedź
Poprawna odpowiedź. W analizowanym fragmencie kodu JavaScript mamy do czynienia z prostą operacją inkrementacji zmiennej x, która początkowo wynosi 10. Operator ++ zwiększa wartość zmiennej o 1, co skutkuje wartością 11. Wartością, która zostanie wyświetlona, jest wartość zmiennej x, która po inkrementacji wynosi 11. Jednak ważnym aspektem jest to, że w kodzie jest błąd składniowy w wywołaniu funkcji console.log. Poprawna składnia powinna wyglądać tak: console.log(x); zamiast console.logx);. W obecnej formie kodu, mimo inkrementacji zmiennej x do wartości 11, pojawi się błąd wykonania, a wartość nie zostanie wypisana. Gdyby błąd został naprawiony, wynik 11 zostałby wyświetlony w konsoli przeglądarki, co jest standardowym miejscem do monitorowania wyjścia w aplikacjach JavaScript. To zachowanie jest zgodne ze specyfikacjami ECMAScript, które definiują zasady działania operatorów oraz metod konsoli.
Pytanie 36
Który znacznik lub zestaw znaczników nie jest używany do określenia struktury dokumentu HTML?
A.
<header>, <footer>
B.
<div>
C.
<i>, <b>, <u>
Twoja odpowiedź
D.
<section>
Poprawna odpowiedź. Te znaczniki, czyli <i>, <b> i <u>, nie są jakby do tworzenia struktury dokumentu HTML, ale bardziej do formatowania tekstu. Zgodnie z nowymi standardami HTML5, są to elementy semantyczne, które wpływają na to, jak coś wygląda, a nie na to, jak jest zorganizowane. Znacznik <i> używamy, jak chcemy coś napisać kursywą, <b>, żeby coś podkreślić, a <u>, żeby coś podkreślić. Często korzysta się z nich w stylach CSS, ale nie nadają one hierarchii ani kontekstu dokumentu. Jak chcesz wyróżnić jakiś tekst w kontekście kodu czy tytułu rozdziału, lepiej skorzystać z bardziej semantycznych znaczników, jak <em> dla podkreślenia znaczenia albo <strong> dla podkreślenia wagi. W czasach, kiedy dostępność i SEO są coraz ważniejsze, używanie semantycznych elementów to klucz do tworzenia lepszych i bardziej przejrzystych stron.
B. jest błędny, indeksami tablicy mogą być tylko liczby całkowite.
C. definiuje tablicę z trzema wartościami.
Twoja odpowiedź
D. jest błędny, nieznany operator =>
Poprawna odpowiedź. Dobra robota, wybrałeś właściwą odpowiedź! Ten kod PHP, który analizujesz, rzeczywiście ustawia tablicę asocjacyjną z trzema parami klucz-wartość. Tak naprawdę tablica asocjacyjna to coś w stylu tablicy, gdzie każdemu elementowi przypisujesz unikalny klucz zamiast numeru indeksu. No i ten operator '=>' to typowy element PHP, służy do przypisywania wartości kluczom w tablicach. W twoim przykładzie widzisz, że kluczami mogą być nie tylko liczby, ale też łańcuchy tekstowe. To naprawdę przydatne, szczególnie przy przechowywaniu informacji, które łatwo zidentyfikować – na przykład numery telefonów czy adresy e-mail. Pamiętaj, że w PHP tablica to jedna z podstawowych struktur danych. Może trzymać różne typy danych, takie jak liczby, teksty, obiekty czy inne tablice, a jej rozmiar może się zmieniać w trakcie działania programu.
Pytanie 38
Jakie ustawienia dotyczące czcionki będą miały zastosowanie w przypadku kodu CSS?
*{font-family:Tahoma;color:Teal;}
A. wszystkiego kodu HTML, niezależnie od kolejnych ustawień CSS.
B. znaczników o identyfikatorze równym *.
C. wszystkiego kodu HTML, jako domyślne formatowanie dla wszystkich elementów strony.
Twoja odpowiedź
D. znaczników z klasą przypisaną jako *.
Poprawna odpowiedź. Wybór opcji dotyczącej całego kodu HTML jako formatowania domyślnego dla wszystkich elementów strony jest poprawny, ponieważ użycie selektora uniwersalnego * w CSS oznacza, że wszystkie dostępne elementy na stronie będą dziedziczyć określone style. W tym przypadku, zarówno font-family ustawiony na Tahoma, jak i kolor tekstu zmieniony na Teal, będą dotyczyły każdego elementu HTML, bez względu na jego typ. To podejście jest zgodne z zasadami stosowania stylów kaskadowych, gdzie style są aplikowane do elementów w sposób hierarchiczny, a selektor uniwersalny jest najogólniejszym z dostępnych. Przykładem zastosowania może być sytuacja, gdy chcemy ustawić jednolite formatowanie dla całej strony, co upraszcza proces projektowania i zapewnia spójność wizualną. Dobrą praktyką jest jednak używanie selektora uniwersalnego z umiarem, aby uniknąć nadmiernego obciążenia wydajności, szczególnie w większych dokumentach, gdzie precyzyjniejsze selektory mogą przynieść lepsze rezultaty.
Pytanie 39
W języku JavaScript wartość typu boolean może być przedstawiana przez
A. null
B. –20
C. 45.3
D. true
Twoja odpowiedź
Poprawna odpowiedź. Typ boolean w języku JavaScript jest jednym z podstawowych typów danych, reprezentującym jedynie dwie możliwe wartości: true (prawda) oraz false (fałsz). Typ ten jest kluczowy w programowaniu, umożliwiając tworzenie warunków oraz podejmowanie decyzji w kodzie. W praktyce, boolean jest wykorzystywany w instrukcjach warunkowych, takich jak if, gdzie wyrażenia zwracające wartość logiczną decydują o dalszym przebiegu programu. Na przykład, wyrażenie 'if (x > 10)' zwraca true, jeśli x jest większe od 10, i false w przeciwnym razie. JavaScript, zgodnie ze specyfikacją ECMA-262, nie tylko definiuje typ boolean, ale również określa sposób konwersji innych typów danych na boolean. Funkcje takie jak Boolean() oraz operatory logiczne (&&, ||, !) są używane do uzyskania wartości boolean z innych typów. Warto również zauważyć, że JavaScript stosuje tzw. "truthy" i "falsy" wartości, co oznacza, że niemal każdy typ danych może być interpretowany jako boolean w kontekście warunków, jednak tylko true i false są typowymi wartościami tego typu. Zrozumienie działania typu boolean jest fundamentalne dla programistów, umożliwiając skuteczne kontrolowanie przepływu programu oraz implementację logiki decyzyjnej."
Pytanie 40
Definicja formularza została wykorzystana na stronie www, która przesyła dane do pliku w języku PHP. W której tablicy będą dostępne informacje z formularza?
<formaction="plik.php"method="post">
A. $_ACTION
Twoja odpowiedź
B. $_GET
C. $_COOKIE
D. $_POST
Poprawna odpowiedź
Niepoprawna odpowiedź. W kontekście przesyłania danych z formularza w PHP, zrozumienie funkcji różnych superglobalnych tablic jest kluczowe. Odpowiedzi takie jak $_GET, $_COOKIE i $_ACTION wskazują na nieporozumienia dotyczące sposobu, w jaki formularze interagują z PHP. Tablica $_GET jest używana do odbierania danych przesyłanych metodą GET, co oznacza, że dane są dołączane do URL jako parametry. To podejście ma istotne ograniczenia, zwłaszcza w zakresie bezpieczeństwa oraz maksymalnej długości danych, co czyni je nieodpowiednim do bardziej złożonych formularzy, w których przesyłane informacje mogą być poufne. $_COOKIE z kolei służy do obsługi danych przechowywanych w plikach cookie, które są wykorzystywane głównie do śledzenia sesji użytkowników, a nie do bezpośredniego przesyłania danych z formularzy. Warto również zauważyć, że $_ACTION nie jest standardową superglobalną tablicą w PHP, co sprawia, że jest to odpowiedź błędna, ponieważ taka tablica po prostu nie istnieje w kontekście PHP. Typowe błędy myślowe prowadzące do takich niepoprawnych wniosków obejmują mylenie metod przesyłania danych oraz niewłaściwe zrozumienie roli poszczególnych superglobalnych tablic. Zrozumienie tych różnic jest kluczowe dla prawidłowego projektowania aplikacji webowych i zapewnienia bezpieczeństwa przesyłanych danych.