Wyniki egzaminu

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

Egzamin zdany!

Wynik: 27/40 punktów (67,5%)

Wymagane minimum: 20 punktów (50%)

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

Co można powiedzieć o wyświetlonym przez witrynę tekście „test kolorów”?

<p id="p1" style="color:blue;">test kolorów</p>
<button type="button"
  onclick="document.getElementById('p1').style.color='red'">
  test</button>
A. Po naciśnięciu przycisku test kolor tekstu pozostaje niebieski.
B. Po naciśnięciu przycisku test kolor tekstu zmienia się na czerwony.
C. Naciskanie przycisku test powoduje, że kolor tekstu zmienia się na przemian z niebieskiego na czerwony.
D. Tuż po otwarciu strony kolor tekstu jest czerwony.
Odpowiedź jest poprawna ponieważ w kodzie HTML znajduje się element typu przycisk który po kliknięciu wykonuje akcję zmieniającą kolor tekstu w paragrafie z niebieskiego na czerwony Za pomocą atrybutu onclick przypisano do niego funkcję JavaScript documentgetElementById'p1'stylecolor'red' co oznacza że po naciśnięciu przycisku zmienia się styl koloru elementu o identyfikatorze p1 na czerwony Ta technika jest powszechnie stosowana do dynamicznej interakcji z użytkownikami na stronach internetowych Mając na uwadze dobre praktyki warto pamiętać o oddzieleniu logiki JavaScript od kodu HTML co zwiększa czytelność i utrzymanie kodu Można to osiągnąć poprzez przypisanie funkcji JavaScript w zewnętrznym pliku js co jest zgodne z zasadą oddzielania warstw logiki stylowania i struktury strony Zastosowanie JavaScript w taki sposób umożliwia dynamiczną zmianę stylów co jest istotne w kontekście tworzenia interaktywnych aplikacji webowych Tego typu manipulacje DOM są fundamentalne dla rozwoju nowoczesnych aplikacji internetowych co czyni je kluczowym elementem nauki i praktyki w zawodach związanych z programowaniem frontendowym

Pytanie 2

Skrypt w JavaScript, który obsługuje wynagrodzenia pracowników, powinien stworzyć raport dla tych, którzy są zatrudnieni na umowę o pracę oraz otrzymują wynagrodzenie w przedziale domkniętym od 4000 do
4500 zł. Jaki warunek należy zastosować do wygenerowania raportu?

A. umowa == 'praca' || (pensja >= 4000 && pensja <= 4500)
B. umowa == 'praca' || (pensja >= 4000 || pensja <= 4500)
C. umowa == 'praca' && (pensja >= 4000 || pensja <= 4500)
D. umowa == 'praca' && (pensja >= 4000 && pensja <= 4500)
Analizując inne odpowiedzi, można zauważyć kilka kluczowych błędów w koncepcjach wykorzystanych w tych formułach. W pierwszej odpowiedzi występuje nieprawidłowe użycie operatora logicznego '||', który w tym kontekście nie jest odpowiedni. Wykorzystanie '||' oznacza, że pensja może być mniejsza lub równa 4000 zł, co prowadzi do sytuacji, w której zostaną uwzględnieni pracownicy, którzy nie spełniają wymogu minimalnej pensji, co jest sprzeczne z założeniem raportu. W drugiej odpowiedzi zastosowanie operatora '||' również powoduje, że warunek dotyczący umowy jest nieistotny, co sprawia, że program może generować raporty dla osób zatrudnionych na innych rodzajach umów. Trzecia odpowiedź wydaje się być bliska, jednak użycie '&&' w odniesieniu do pensji nie jest wystarczające, ponieważ nie definiuje warunku zatrudnienia. Właściwa logika programistyczna wymaga precyzyjnego określenia zarówno rodzaju umowy, jak i zakresu płacy. W praktyce, niepoprawne zrozumienie operatorów logicznych oraz ich zastosowania w warunkach może prowadzić do poważnych błędów w kodzie, co w konsekwencji wpływa na jakość danych raportowych. Warto pamiętać, że przy tworzeniu warunków w oprogramowaniu, kluczowe jest stosowanie odpowiednich operatorów, aby uniknąć błędów w logice oraz zapewnić poprawność wyników.

Pytanie 3

W poniższym zapytaniu SQL znak „*” wskazuje, że w wyniku tego zapytania zostaną zwrócone:

SELECT * FROM mieszkancy WHERE imie = 'Anna';
A. warunek dotyczący imienia zostanie pominięty
B. zostaną wyświetlone wszystkie kolumny tabeli mieszkańcy
C. zostanie pokazane pole zatytułowane „*” (gwiazdka)
D. wszystkie rekordy z tabeli mieszkańcy będą widoczne
W zapytaniu SQL, operator '*' jest używany do oznaczania wszystkich kolumn w tabeli. W kontekście zapytania 'SELECT * FROM mieszkancy WHERE imie = 'Anna';', zapytanie to zwraca wszystkie kolumny z tabeli 'mieszkancy', które spełniają warunek określony w klauzuli WHERE, czyli te rekordy, w których pole 'imie' ma wartość 'Anna'. Przykład zastosowania: jeśli tabela 'mieszkancy' zawiera kolumny takie jak 'id', 'imie', 'nazwisko', 'adres', to wynik zapytania będzie zawierał wszystkie te kolumny dla osób o imieniu 'Anna'. Używanie '*' w zapytaniach jest powszechnie stosowaną praktyką, ale w dobrych praktykach programistycznych zaleca się określanie, które kolumny są faktycznie potrzebne w wyniku, aby zoptymalizować zapytania i zmniejszyć ilość przesyłanych danych, szczególnie w większych bazach danych.

Pytanie 4

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

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

Pytanie 5

W języku JavaScript zadeklarowano funkcję.
function absValue(f) {
    return Math.abs(f);
}

A. wypisać wartość przeciwną do f
B. zwrócić wartość bezwzględną z f
C. wypisać wartość bezwzględną z f
D. zwrócić wartość przeciwną do f
Poprawna odpowiedź to „zwrócić wartość bezwzględną z f”. Funkcja absValue(f) korzysta z wbudowanej metody Math.abs(), która zwraca wartość bezwzględną liczby przekazanej jako argument. Oznacza to, że jeśli liczba f jest ujemna, zostanie zamieniona na dodatnią, a jeśli dodatnia — pozostanie bez zmian. Funkcja nie wypisuje wartości, lecz zwraca wynik, który można następnie wykorzystać w dalszych obliczeniach. Takie podejście jest często stosowane w programowaniu, gdy chcemy operować na wielkościach zawsze nieujemnych, np. przy obliczaniu różnic, odległości lub w analizie danych numerycznych.

Pytanie 6

Uprawnienia obiektowe przyznawane użytkownikom serwera bazy danych mogą umożliwiać lub ograniczać

A. realizować operacje na bazie, takie jak wstawianie lub modyfikowanie danych
B. przechodzić uprawnienia
C. zmieniać role i konta użytkowników
D. wykonywać polecenia, takie jak tworzenie kopii zapasowej
Uprawnienia obiektowe w kontekście baz danych pozwalają na kontrolowanie dostępu do różnych zasobów, takich jak tabele, widoki czy procedury składowane. Odpowiedź dotycząca wykonywania operacji na bazie, takich jak wstawianie czy modyfikowanie danych, jest prawidłowa, ponieważ uprawnienia te bezpośrednio wpływają na możliwości użytkownika w zakresie manipulacji danymi. Przykładowo, jeśli użytkownik posiada uprawnienie do INSERT, może dodawać nowe rekordy do tabeli, natomiast uprawnienie UPDATE pozwala na zmianę istniejących danych. Takie zarządzanie uprawnieniami jest kluczowe w kontekście bezpieczeństwa danych oraz zapewnienia integralności systemu, ponieważ pozwala na ograniczenie dostępu tylko do tych operacji, które są niezbędne dla danego użytkownika. W praktyce administratorzy baz danych stosują zasady minimalnych uprawnień, przyznając użytkownikom tylko te uprawnienia, które są niezbędne do wykonywania ich pracy, co jest zgodne z najlepszymi praktykami w zakresie zarządzania bezpieczeństwem baz danych.

Pytanie 7

Działaniem podanego kodu PHP będzie wypełnienie tablicy

$tab = array();
for ($i = 0; $i < 10; $i++) {
    $tab[$i] = rand(-100, 100);
}
foreach ($tab as $x) {
    if ($x < 0) {
        echo "$x ";
    }
}
A. kolejnymi liczbami od -100 do 100 i wypisanie wartości ujemnych
B. kolejnymi liczbami od 0 do 9 i ich wypisanie
C. 10 losowymi wartościami, a następnie wypisanie wartości ujemnych
D. 100 losowymi wartościami, a następnie wypisanie wartości dodatnich
Przedstawiony kod PHP zawiera błąd składniowy oraz logiczny, jednak jego zamysł zakłada stworzenie tablicy, której elementy są losowymi liczbami całkowitymi z przedziału od -100 do 100, a następnie wypisanie tych, które są mniejsze od zera. W pierwszej linii kodu powinno być użyte 'array()' zamiast 'array', a w funkcji 'rand' powinny być nawiasy okrągłe dla argumentów, co daje 'rand(-100, 100)'. W pętli for, która iteruje dziesięć razy, wartości są przypisywane do tablicy. W drugiej części, w pętli foreach, sprawdzane są liczby i wypisywane są tylko te, które są ujemne, co oznacza, że wynik może zawierać jedynie wartości poniżej zera. Dlatego poprawna odpowiedź koncentruje się na tym, że tablica jest wypełniana losowymi liczbami całkowitymi, a następnie wypisywane są jedynie liczby ujemne, co jest kluczowym aspektem działania kodu. Przykład zastosowania funkcji rand w kontekście generowania losowych danych pokazuje, jak można wykorzystać tę funkcjonalność w praktycznych aplikacjach, takich jak gra losowa czy analiza danych.

Pytanie 8

Jak nazywa się platforma wspierająca rozwój oprogramowania w technologii .NET?

A. middleware
B. db2
C. eclipse
D. framework
Framework to kluczowy element w ekosystemie programowania w technologii .NET, który dostarcza zestaw narzędzi, bibliotek i standardów do tworzenia aplikacji. .NET Framework, opracowany przez firmę Microsoft, umożliwia deweloperom tworzenie różnorodnych aplikacji, od aplikacji webowych po aplikacje desktopowe i mobilne. Framework ten wspiera szeroki zakres języków programowania, w tym C#, Visual Basic i F#. Działa na zasadzie dostarczania środowiska uruchomieniowego oraz zestawu klas, które ułatwiają proces programowania, przyspieszając rozwój dzięki gotowym komponentom i wspólnym funkcjonalnościom. Przykładowo, ASP.NET, część .NET Framework, jest używany do budowy aplikacji webowych, co pozwala na łatwe implementowanie funkcji takich jak autoryzacja użytkowników, zarządzanie sesjami i integracja z bazami danych. Dzięki swojej architekturze, .NET Framework przestrzega standardów, takich jak Common Language Specification (CLS), co zapewnia interoperacyjność między różnymi językami programowania. Jest to fundament, na którym opiera się wiele nowoczesnych rozwiązań w świecie IT, co czyni go niezastąpionym narzędziem dla każdego programisty w technologii .NET.

Pytanie 9

Pętla zapisana w języku PHP wstawi do tablicy liczby:

$x = 0;
for ($i = 0; $i < 10; $i++)
{
    $tabl[$i] = $x;
    $x = $x + 10;
}
A. 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
B. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
C. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
D. 0, 10, 20, 30, 40, 50, 60, 70, 80, 90
Gratulacje, Twoja odpowiedź jest poprawna. Pętla zaczyna się od $x = 0 i wykonuje się 10 razy ($i od 0 do 9). W każdej rundzie pętli, do tablicy $tabl dodawana jest aktualna wartość $x, a następnie $x jest zwiększane o 10. To jest tzw. pętla for, która jest jednym z najbardziej podstawowych mechanizmów programowania. Dzięki tej pętli możemy kontrolować ilość iteracji, które chcemy wykonać. W tym przypadku, iteracja odbywa się 10 razy, za każdym razem inkrementując $x o 10. Niezależnie od tego, czy korzystasz z PHP, czy innego języka, konstrukcje pętli są niezwykle ważne i warto zrozumieć ich działanie. PHP, jak wiele innych języków programowania, posiada wiele różnych typów pętli - for, while, do-while, each, które mają swoje szczególne zastosowania w zależności od kontekstu.

Pytanie 10

Aby strona internetowa była dostosowana do różnych urządzeń, należy między innymi określać

A. wymiary obrazów w procentach
B. tylko znane fonty, takie jak Arial
C. wymiary obrazów jedynie w pikselach
D. układ strony wyłącznie przy pomocy tabel
Definiowanie rozmiarów obrazów w procentach jest kluczowym elementem tworzenia responsywnych stron internetowych. Dzięki temu obrazy mogą dostosowywać się do różnych rozmiarów ekranów, co jest niezbędne w erze urządzeń mobilnych. Używając procentów, możemy zapewnić, że obrazy zachowają swoje proporcje w ramach kontenera, co eliminuje problem z rozciąganiem lub zniekształceniem grafiki. Na przykład, ustawiając szerokość obrazu na 50%, obraz zajmie połowę szerokości kontenera, niezależnie od tego, czy jest to telefon, tablet, czy komputer stacjonarny. Taki sposób definiowania rozmiarów jest zgodny z zasadami projektowania responsywnego, w tym z technikami, które określają elastyczne układy oparte na jednostkach względnych, takich jak em, rem, czy vw. W praktyce przyjęcie takiego podejścia nie tylko poprawia doświadczenie użytkownika, ale również zwiększa dostępność strony, co jest istotnym aspektem w kontekście standardów WCAG (Web Content Accessibility Guidelines).

Pytanie 11

Do jakiego celu służy polecenie mysqldump?

A. sprawdzenia integralności bazy
B. stworzenia kopii zapasowej bazy
C. naprawy niespójnej bazy
D. optymalizacji bazy
Niektóre odpowiedzi mogą wydawać się na pierwszy rzut oka sensowne, jednak ich analiza pokazuje, że nie oddają one rzeczywistej funkcji mysqldump. Naprawa niespójnej bazy danych jest zadaniem, które wymaga zastosowania innych narzędzi, takich jak `myisamchk` dla silnika MyISAM lub `innodb_force_recovery` dla silnika InnoDB. Mysqldump nie zawiera mechanizmów naprawczych, więc jego użycie w tym kontekście jest błędne. Ponadto proces optymalizacji bazy danych, taki jak reorganizacja indeksów czy usuwanie nieużywanych danych, również nie jest domeną mysqldump, lecz narzędzi takich jak `OPTIMIZE TABLE` czy `ANALYZE TABLE`. Kolejnym błędnym podejściem jest sugestia, że mysqldump służy do sprawdzania integralności bazy danych. Integralność danych w bazach MySQL zapewniają różne mechanizmy, w tym transakcje, a także kontrola spójności danych na poziomie aplikacji. Mysqldump nie jest narzędziem do przeprowadzania walidacji danych ani analizy ich integralności, a skupić się powinien przede wszystkim na tworzeniu kopii zapasowych. W związku z tym, aby poprawnie zrozumieć zastosowanie mysqldump, warto wystrzegać się mylnych przekonań dotyczących jego funkcji, bazując na rzeczywistych możliwości tego narzędzia. Właściwe zrozumienie ról różnych narzędzi w ekosystemie baz danych jest kluczowe dla efektywnego zarządzania i ochrony danych.

Pytanie 12

Aby poprawić wydajność strony z grafiką o wymiarach 2000 px na 760 px, konieczne jest zmniejszenie jej rozmiarów

A. za pomocą atrybutów HTML
B. w programie graficznym
C. za pomocą właściwości CSS, podając rozmiar w pikselach
D. za pomocą właściwości CSS, podając rozmiar w procentach
Zastosowanie atrybutów HTML do zmiany rozmiaru grafiki, takie jak width i height, nie wpływa na samą wielkość pliku, a jedynie na to, jak obrazek jest prezentowany na stronie. Przykładowo, jeśli zmniejszymy wymiary w HTML, przeglądarka nadal załadowuje pełną wersję grafiki, co może prowadzić do wolniejszego ładowania strony. To podejście jest niewłaściwe, ponieważ nie rozwiązuje problemu optymalizacji pliku, a jedynie maskuje go na poziomie wizualnym. Podobnie, stosowanie właściwości CSS, aby wskazać rozmiar w pikselach lub procentach, również nie zmienia rozmiaru samego pliku, co powoduje, że strona może ładować się dłużej. Użytkownicy mogą być zdezorientowani, myśląc, że zmiana stylów CSS wystarczy do poprawy wydajności strony, podczas gdy w rzeczywistości kluczowe jest skompresowanie i zmniejszenie samego pliku graficznego. Typowym błędem myślowym jest założenie, że zmiana rozmiaru wyświetlania na stronie jest równoważna z optymalizacją pliku. W praktyce zaleca się najpierw zmniejszyć rozmiar grafiki w programie graficznym, a następnie użyć odpowiednich tagów HTML lub CSS do wyświetlenia obrazu w pożądanym rozmiarze. Takie podejście zapewnia rzeczywiste korzyści w zakresie wydajności i szybkości ładowania strony.

Pytanie 13

Walidacja strony internetowej polega na

A. sprawdzeniu jej w celu usunięcia błędów
B. udostępnianiu w Internecie
C. zestawie działań mających na celu podniesienie liczby odwiedzin
D. reklamie strony
Proces walidacji strony internetowej to kluczowy etap w cyklu życia witryny, który ma na celu identyfikację i eliminację błędów technicznych oraz zgodność z określonymi standardami. Walidacja obejmuje sprawdzenie struktury HTML, CSS oraz JavaScript, co pozwala na upewnienie się, że strona działa poprawnie na różnych przeglądarkach i urządzeniach. Techniki walidacji mogą obejmować użycie narzędzi online, takich jak W3C Validator, który ocenia zgodność kodu z aktualnymi standardami W3C. Przykładowo, błędy w składni HTML mogą prowadzić do niepoprawnego renderowania strony, co negatywnie wpływa na doświadczenia użytkowników. Dodatkowo, walidacja może obejmować testy funkcjonalności oraz bezpieczeństwa, co jest szczególnie istotne w kontekście przetwarzania danych osobowych. Niezależnie od celu witryny - czy to e-commerce, blog, czy portal informacyjny - regularna walidacja pozwala na ich optymalizację oraz zwiększenie efektywności SEO. Przestrzeganie standardów nie tylko poprawia jakość strony, ale także może wpływać na jej pozycjonowanie w wynikach wyszukiwania.

Pytanie 14

Jaki jest prawidłowy sposób deklaracji funkcji w języku JavaScript?

A. def myFunction() { }
B. function myFunction() { }
C. void myFunction() { }
D. func myFunction() { }
Deklaracja funkcji w JavaScript zaczyna się od słowa kluczowego <code>function</code>, po którym następuje nazwa funkcji, nawiasy okrągłe oraz nawiasy klamrowe obejmujące ciało funkcji. Przykładowo, <code>function myFunction() { }</code> tworzy funkcję o nazwie <em>myFunction</em>, która nie przyjmuje żadnych parametrów i nie wykonuje żadnych operacji, gdyż ciało funkcji jest puste. W JavaScript funkcje są fundamentalnym elementem, który pozwala na tworzenie modularnego i wielokrotnego użycia kodu. Można je wywoływać w dowolnym miejscu programu, co ułatwia zarządzanie złożonością kodu. Zgodnie z dobrymi praktykami, nazwy funkcji powinny być opisowe, aby jasno wskazywały na ich działanie. Warto również pamiętać, że w JavaScript funkcje są pierwszoklasowymi obiektami, co oznacza, że mogą być przypisywane do zmiennych, przekazywane jako argumenty do innych funkcji, czy zwracane jako wyniki funkcji. To sprawia, że JavaScript jest bardzo elastycznym językiem do programowania złożonych aplikacji webowych.

Pytanie 15

Zamieszczony kod HTML formularza zostanie wyświetlony przez przeglądarkę w sposób:

<form>
stanowisko: <input type="text"><br>
obowiązki: <br>
<input type="checkbox" name="obowiazek1" value="1" disabled checked>sporządzanie dokumentacji<br>
<input type="checkbox" name="obowiazek2" value="2" checked>pisanie kodu<br>
<input type="checkbox" name="obowiazek3" value="3">testy oprogramowania<br>
</form>

A.

stanowisko: obowiązki: sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

B.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

C.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

D.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania
A. B.
B. D.
C. C.
D. A.
Dokładnie tak powinien wyglądać ten formularz! Zwróć uwagę, jak HTML interpretuje znaczniki <br> – one wymuszają przejście do nowej linii, więc w kodzie wyjściowym każda sekcja obowiązków pojawi się osobno, pod sobą. To, że jeden z checkboxów ma atrybuty disabled oraz checked, powoduje, że jest domyślnie zaznaczony, ale nie można go odznaczyć ani zaznaczyć ponownie – to ważny niuans, bo czasem zapomina się, że disabled nie oznacza tylko „wyszarzony”, ale też „nie bierz udziału w wysyłaniu formularza”. Takie wykorzystanie checkboxów jest powszechne, szczególnie jeśli chcesz pokazać użytkownikowi pewne stałe informacje (np. obowiązek, którego nie można uniknąć). Z mojego doświadczenia, bardzo często w praktycznych projektach „disabled” stosuje się np. przy wymaganych oświadczeniach, gdzie użytkownik ma tylko do wglądu informację, że coś już jest włączone i nie może tego zmienić. No i jeszcze – checked przy pisaniu kodu powoduje, że checkbox jest domyślnie zaznaczony, co jest zgodne z kodem źródłowym. Same nazwy pól (czyli atrybuty name i value) zostaną wysłane do serwera tylko dla tych pól, które nie są disabled i użytkownik je zaznaczył. To też jest bardzo praktyczna rzecz, bo pozwala precyzyjnie sterować tym, co trafia do backendu. Moim zdaniem taka forma zapisu formularza to dobry punkt wyjścia do dalszej rozbudowy – łatwo dodać tutaj walidację, obsługę JavaScript czy zastosować style CSS. Trzymanie się tej składni ułatwia też potem pracę zespołową, bo jest czytelna i zgodna z oczekiwaniami innych programistów. Podsumowując, wybrałeś opcję najbliższą temu, co wyświetli przeglądarka na bazie danego kodu HTML – i to jest podejście zgodne ze standardami, doceniane w branży.

Pytanie 16

Który z rysunków obrazuje efekt działania przedstawionego fragmentu kodu HTML?

<table border="1">
 <tr><td rowspan="2">pierwszy</td><td>drugi</td></tr>
 <tr><td>trzeci</td></tr>
</table>
Ilustracja do pytania
A. A.
B. D.
C. C.
D. B.
Hmm, niestety źle. Ale spoko, każdy czasem myli. Rysunki pokazują różne układy tabel, ale tylko rysunek C oddaje to, co masz w kodzie HTML. Zwłaszcza ważne jest tu użycie atrybutu rowspan='2', który sprawia, że komórka 'pierwszy' rozciąga się na dwa wiersze. W pierwszym wierszu jest 'drugi', a w drugim tylko 'trzeci', bo 'pierwszy' zajmuje już sporo miejsca. Może pomyliłeś rowspan z colspan? To drugie dotyczy kolumn, podczas gdy pierwsze to wiersze. Spróbuj jeszcze raz, mając to na uwadze. Zrozumienie układu tabeli w HTML jest kluczowe dla stworzenia fajnych stron.

Pytanie 17

Który z poniższych kodów HTML najlepiej ilustruje opisaną tabelę? (Obramowanie tabeli oraz komórek zostało pominięte dla uproszczenia)

Ilustracja do pytania
A. Odpowiedź B
B. Odpowiedź C
C. Odpowiedź A
D. Odpowiedź D
Pozostałe opcje zawierają błędy w użyciu atrybutów colspan i rowspan co prowadzi do nieprawidłowego odwzorowania struktury tabeli. W opcji A dane są przedstawione bez użycia rowspan co powoduje że każda informacja znajdowałaby się w osobnym wierszu nie łącząc kolumny Telefony co jest sprzeczne z przedstawionym stylem w pytaniu. To może prowadzić do dezorganizacji danych i braku przejrzystości. W przypadku opcji C zastosowanie colspan na ostatniej komórce jest błędne ponieważ rozszerza komórkę na dwie kolumny co nie jest zgodne z prezentowaną strukturą gdzie dane są ułożone w dwóch wierszach pod jednym nagłówkiem. Opcja D również błędnie używa colspan przy nagłówku Telefony co powoduje że dane nie są przedstawiane w logicznym układzie ukazującym że jedna kolumna powinna obejmować dwie komórki z telefonami. Takie błędy w strukturze tabeli mogą prowadzić do problemów z użytecznością i dostępnością strony internetowej ponieważ użytkownicy mogą mieć trudności z odnalezieniem i zrozumieniem prezentowanych informacji. Problemem jest również brak semantyczności co jest kluczowe dla SEO i dostępności dla osób korzystających z czytników ekranu. Dlatego ważne jest prawidłowe użycie atrybutów strukturalnych w HTML aby zapewnić dostępność i poprawne wyświetlanie treści na różnych urządzeniach i przeglądarkach co jest kluczowe w nowoczesnym projektowaniu stron internetowych. Dobre praktyki projektowania stron internetowych zalecają również używanie HTML w sposób semantyczny co pomaga w tworzeniu bardziej czytelnych i dostępnych dokumentów. Poprawne użycie atrybutów takich jak rowspan i colspan jest kluczowe w osiągnięciu tych celów i uniknięciu nieporozumień i błędów w prezentacji danych na stronach internetowych. Ułatwia to również utrzymanie i aktualizację kodu w przyszłości oraz zwiększa ogólną jakość i dostępność strony internetowej.

Pytanie 18

Kiedy należy wykorzystać kwerendę SELECT DISTINCT, aby wyodrębnić rekordy?

A. posortowane malejąco lub rosnąco.
B. pogrupowane.
C. tak, aby w podanej kolumnie nie powtarzały się wartości.
D. występujące w bazie tylko raz.
Kwerenda SELECT DISTINCT jest używana do zwracania unikalnych wartości w określonej kolumnie z tabeli w bazie danych. Gdy mamy do czynienia z dużymi zbiorami danych, często zdarza się, że te same wartości pojawiają się wielokrotnie. W takich sytuacjach, aby uzyskać tylko jedną wystąpienie każdej wartości, stosujemy klauzulę DISTINCT. Na przykład, jeśli chcemy uzyskać listę unikalnych miast z tabeli klientów, używamy zapytania: SELECT DISTINCT city FROM customers. To zwraca wszystkie różne wartości miast, które znajdują się w tej tabeli. Użycie DISTINCT może również pomóc w optymalizacji wyników serwisu, redukując ilość danych, które muszą być przetwarzane w dalszych analizach. W praktyce, stosowanie DISTINCT w kontekście tworzenia raportów lub analizy danych jest kluczowe, gdyż pozwala na skupienie się na istotnych informacjach bez zbędnych duplikatów, co jest zgodne z dobrymi praktykami w zarządzaniu danymi.

Pytanie 19

Jaką funkcję w edytorze grafiki rastrowej trzeba wykorzystać, żeby przygotować rysunek do publikacji na stronie tak, aby widoczne było jedynie to, co znajduje się w obrębie ramki?

Ilustracja do pytania
A. Skalowanie
B. Odbicie
C. Perspektywa
D. Kadrowanie
Kadrowanie w edytorze grafiki rastrowej pozwala na wycięcie określonego fragmentu obrazu aby skupić uwagę na jego najważniejszej części. Proces kadrowania jest niezbędny w sytuacjach gdy chcemy przedstawić tylko wybrany obszar grafiki co jest powszechną praktyką w przygotowywaniu ilustracji do publikacji online. Poprzez kadrowanie eliminujemy zbędną przestrzeń wokół istotnych elementów dzięki czemu obraz staje się bardziej czytelny i estetyczny. Jest to szczególnie ważne w kontekście ograniczonej przestrzeni na stronach internetowych oraz chęci optymalizacji rozmiarów plików graficznych co wpływa na szybkość ładowania witryny. Dobrze wykonane kadrowanie pozwala również na zachowanie estetyki kompozycji obrazu poprzez zastosowanie zasad takich jak reguła trójpodziału co zwiększa atrakcyjność wizualną. Warto również pamiętać że w kontekście norm branżowych kadrowanie jest podstawowym narzędziem w arsenale każdego grafika co znajduje odzwierciedlenie w większości współczesnych aplikacji do edycji grafiki rastrowej.

Pytanie 20

W posiadanej tabeli zwanej przedmioty, która zawiera kolumny ocena oraz uczenID, aby wyliczyć średnią ocen dla ucznia z ID równym 7, należy użyć zapytania

A. SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7
B. COUNT SELECT ocena FROM przedmioty WHERE uczenID = 7
C. AVG SELECT ocena FROM przedmioty WHERE uczenID = 7
D. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID = 7
Odpowiedź 'SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;' jest poprawna, ponieważ wykorzystuje funkcję agregującą AVG, która oblicza średnią ocen dla wszystkich wpisów w tabeli 'przedmioty', gdzie 'uczenID' jest równy 7. W SQL funkcje agregujące są niezwykle przydatne do analizy danych, pozwalając na uzyskanie statystyk dotyczących zbiorów danych. Użycie klauzuli WHERE pozwala na filtrowanie danych do tych, które dotyczą konkretnego ucznia, co jest zgodne z najlepszymi praktykami w zakresie zarządzania danymi. Na przykład, w praktycznych zastosowaniach, może to być użyte do generowania raportów dotyczących wyników ucznia w określonym przedziale czasowym lub w porównaniu do innych uczniów. Warto również zauważyć, że poprawna konstrukcja zapytania SQL jest kluczowa dla utrzymania integralności i wydajności bazy danych, co podkreśla znaczenie płynnego zapisu zapytań. Takie umiejętności są nieocenione w pracy z bazami danych oraz w kontekście analizy danych w różnych dziedzinach.

Pytanie 21

W CSS, aby ustawić różne stylizacje dla pierwszej litery w akapicie, należy wykorzystać selektor

A. pseudoelementu p::first-letter
B. dziecka p + first-letter
C. atrybutu p [first-letter]
D. klasy p.first-letter
W języku CSS do formatowania pierwszej litery akapitu używamy pseudoelementu '::first-letter'. Jest to specjalny selektor, który pozwala na zastosowanie stylów tylko do pierwszego znaku w danym elemencie, na przykład w akapicie <p>. Pseudoelement ten może być używany do nadawania unikalnych właściwości typograficznych, takich jak rozmiar czcionki, kolor, font-weight czy marginesy, co może znacząco wzbogacić stylizację tekstu. Przykładowo, używając stylu 'p::first-letter { font-size: 2em; color: red; }', pierwsza litera każdego akapitu stanie się większa i czerwona. To podejście jest zgodne z dobrymi praktykami w CSS, ponieważ umożliwia selektywne stylizowanie elementów bez wpływu na resztę treści. Aby uzyskać większą kontrolę nad układem i estetyką stron internetowych, warto zaznajomić się z innymi pseudoelementami, takimi jak '::first-line', które działają analogicznie. Prawidłowe używanie pseudoelementów jest kluczowe dla tworzenia bardziej zaawansowanych i atrakcyjnych wizualnie projektów.

Pytanie 22

Wynikiem działania poniższej pętli for w przedstawionym kodzie PHP jest wyświetlenie liczb:

<?php
   for($i=5;$i>1;$i-=2)
       echo ($i%2)." ";
?>
A. 1 0 1
B. 1 1
C. 1 0 1 0
D. 1 0
Wybór błędnych odpowiedzi wynika z niepełnej analizy działania pętli oraz błędnych założeń dotyczących wartości zwracanych przez operację modulo. Odpowiedzi 1 0, 1 0 1 oraz 1 0 1 0 wskazują na zrozumienie, że liczby mogą mieć różne wartości modulo 2, ale z niewłaściwym przypisaniem ich do konkretnego kontekstu pętli. Wartość 0 w odpowiedzi 1 0 sugeruje, że użytkownik myśli, że $i może kiedykolwiek przyjąć wartość parzystą i wpłynąć na wynik, co jest błędne w kontekście analizowanego kodu. Liczba 5 jest liczbą nieparzystą, więc operacja modulo skutkuje 1, a 3 również jest liczbą nieparzystą, co również daje 1. Odpowiedź 1 0 1 sugeruje, że po osiągnięciu wartości $i = 1, wynik zmienia się na zero, co jest niezgodne z zasadami przetwarzania w tej pętli. Podobnie, odpowiedź 1 0 1 0 sugeruje, że w pętli mogłyby pojawić się inne wartości, podczas gdy w rzeczywistości, jak pokazuje analiza, pętla kończy się po dwóch iteracjach. Kluczowe jest zrozumienie, jak działają struktury kontrolne w programowaniu oraz jakie wyniki można otrzymać na podstawie operacji arytmetycznych. Taka analiza jest niezbędna, aby uniknąć typowych błędów związanych z operacjami na liczbach oraz wyciąganiem wniosków na temat ich właściwości.

Pytanie 23

Pętla napisana w języku PHP wprowadzi do tablicy liczby
$x=0
for($i=0;$i<10;$i++)
{
   $tab[$i]=$x;
   $x=$x+10;
}

A. 0,1,2,3,4,5,6,7,8,9
B. 0,1,2,3,4,5,6,7,8,9,10
C. 10,20,30,40,50,60,70,80,90,100
D. 0,10,20,30,40,50,60,70,80,90
Pierwsza z niepoprawnych odpowiedzi sugeruje, że do tablicy zostaną wpisane liczby od 0 do 9, co jest błędne. Pętla for w tym kodzie nie inkrementuje zmiennej $x w sposób liniowy, lecz zwiększa ją o 10 w każdej iteracji, co oznacza, że wartości przypisane do tablicy będą znacznie większe niż jedynie kolejne liczby całkowite. Ponadto, nie ma żadnej zmiennej w pętli, która miałaby na celu inkrementację $i do kolejnych liczb, co w efekcie prowadziłoby do podobnych wartości. Druga z odpowiedzi wskazuje, że ostatnią liczbą w tablicy będzie 10, co jest również niepoprawne. W rzeczywistości, ostatnią liczbą, jaka zostanie wstawiona do tablicy w tym przypadku, będzie 90, a nie 10, ponieważ pętla kończy się po przypisaniu wartości 90, a zmienna $x nigdy nie osiągnie wartości 100 w ramach tej pętli. Ostatnia z niepoprawnych odpowiedzi sugeruje, że do tablicy wstawione zostanie 10, 20, 30, 40, 50, 60, 70, 80, 90, 100. Jest to błędne z powodu tego, iż pętla for nie wykonuje się wystarczająco długo, aby osiągnąć wartość 100. Tak więc, zamiast oczekiwanego wyniku, pętla generuje jedynie dziewięć wartości, kończąc na 90, co znacząco różni się od wartości wskazanych w tej odpowiedzi.

Pytanie 24

W języku PHP należy stworzyć warunek, który będzie prawdziwy, gdy zmienna $a będzie dowolną liczbą całkowitą mniejszą niż -10 lub gdy zmienna $b będzie jakąkolwiek liczbą z zakresu (25, 75). Wyrażenie logiczne w tym warunku przyjmuje postać

A. ($a < -10) or (($b > 25) and ($b < 75))
B. ($a < -10) or (($b > 25) or ($b < 75))
C. ($a < -10) and (($b > 25) or ($b < 75))
D. ($a < -10) and (($b > 25) and ($b < 75))
Analizując niepoprawne wyrażenia logiczne, można zauważyć, że w każdym z nich występują błędy w interpretacji warunków z pytania. W przypadku wyrażenia, które używa operatora 'and', takie jak ($a < -10) and (($b > 25) and ($b < 75)), zakłada się, że oba warunki muszą być spełnione jednocześnie, co jest niezgodne z opisanymi wymaganiami. Ponieważ pytanie wskazuje na możliwość spełnienia jednego z warunków, stosowanie operatora 'and' w tym kontekście prowadzi do logicznej niepoprawności. Kolejny błąd można znaleźć w podejściu, które używa operatora 'or' w połączeniu z błędnymi granicami przedziału, jak w przypadku (($b > 25) or ($b < 75)). Takie wyrażenie nie ogranicza zmiennej $b do przedziału (25, 75), ponieważ pozwala na przyjmowanie wartości poza tym zakresem, co jest sprzeczne z wymaganiami. Typowym błędem myślowym tutaj jest mylenie operatorów logicznych oraz nieprawidłowe interpretowanie zakresu wartości. Aby uniknąć tego typu błędów, ważne jest, aby zawsze dokładnie przemyśleć, jakie warunki muszą być spełnione i jakie operatory logiczne są odpowiednie do ich realizacji. Szkolenie w zakresie logiki programowania oraz praktyka w pisaniu wyrażeń warunkowych mogą znacząco poprawić umiejętności programistyczne i zwiększyć precyzję kodu.

Pytanie 25

W programie INKSCAPE / COREL, aby uzyskać efekt przedstawiony w napisie, należy

Ilustracja do pytania
A. skorzystać z funkcji wstaw / dopasuj tekst do ścieżki
B. zastosować funkcję wykluczenia z kołem
C. posłużyć się funkcją gradientu
D. wykorzystać funkcję sumy z kołem
Wybierając odpowiednie narzędzia do osiągnięcia skomplikowanych efektów typograficznych ważne jest zrozumienie właściwości każdej funkcji Dostępne odpowiedzi sugerują nieprawidłowe podejścia do problemu Gradient jest narzędziem używanym głównie do tworzenia płynnych przejść między kolorami w obiektach wektorowych Nie wpływa on bezpośrednio na układ tekstu wzdłuż ścieżki Wybór tej opcji może wynikać z błędnego rozumienia że gradient wpływa na formę obiektu w tym przypadku tekstu Funkcja sumy w kontekście programów graficznych takich jak Inkscape czy CorelDraw dotyczy operacji booleowskich na obiektach co prowadzi do łączenia kształtów Wynikowa forma jest sumą obszarów wyjściowych jednak znów nie wpływa to na układ tekstu wzdłuż ścieżki Działanie funkcji wykluczenia z kolei polega na tworzeniu przecięcia dwóch kształtów i usunięciu wspólnego obszaru co jest używane głównie w tworzeniu złożonych kształtów Nie ma to zastosowania przy dopasowywaniu tekstu do ścieżki Myślenie że te operacje booleowskie mogą wpływać na tekst wynika z niezrozumienia jak działają te funkcje w kontekście obiektów i tekstu w programach graficznych Kluczowym błędem jest tutaj założenie że funkcje do manipulacji kształtami mogą być bezpośrednio stosowane do tekstu bez zrozumienia specyfiki narzędzi jakimi są gradient sumowanie czy wykluczanie które nie dotyczą bezpośrednio zarządzania tekstem wzdłuż ścieżki

Pytanie 26

Który zapis w języku JavaScript daje taki sam wynik jak poniższy kod?

x = 0;
x += 10;
A. x = 10; x = 0
B. x = 10; x = x + 10
C. x = 0; x--; x *= 9
D. x = 0; x++; x = x + 9
Odpowiedź, która została wybrana, jest poprawna, ponieważ wykonuje dokładnie te same operacje na zmiennej x, co pierwotny kod. Przypisanie x = 0; ustawia wartość x na 0, a następnie x++; zwiększa wartość x o 1, co daje 1. Następnie, dodając 9 do x za pomocą x = x + 9, otrzymujemy 10. Tak więc końcowa wartość zmiennej x wynosi 10, co jest zgodne z wynikiem oryginalnego zapisu x += 10, który również prowadzi do wartości 10. W praktyce, takie podejście jest zgodne z zasadami programowania, gdzie użycie operatorów inkrementacji i przypisania jest powszechną praktyką. Poprawne zarządzanie zmiennymi i ich modyfikacja przy pomocy operatorów to kluczowy aspekt pisania efektywnego i łatwego do zrozumienia kodu w JavaScript. Pamiętaj, aby korzystać z takich konstrukcji, gdyż są one nie tylko czytelne, ale również optymalne.

Pytanie 27

W CSS wartości underline, overline, blink są przypisane do atrybutu

A. text-style
B. font-style
C. text-decoration
D. font-weight
Właściwość CSS 'text-decoration' to coś, co naprawdę może zmienić wygląd tekstu na stronach internetowych. Dzięki niej możemy dodać różne efekty dekoracyjne, jak podkreślenie, przekreślenie, czy nadkreślenie. Zdarzają się też nowinki, jak efekt 'blink', chociaż nie jest on zbyt popularny w profesjonalnym kodzie. Warto pamiętać, że stosowanie tej właściwości poprawia czytelność i estetykę tekstu. Na przykład, gdy chcemy wyróżnić ważne informacje, możemy użyć 'text-decoration: underline;'. Ciekawostka: niektóre efekty, jak 'blink', mogą sprawić problemy z dostępnością, więc lepiej ich unikać. Właściwe użycie 'text-decoration' w połączeniu z odpowiednimi znacznikami HTML, jak <span> lub <a>, może naprawdę poprawić interaktywność naszej strony. Dobrze jest o tym pamiętać, gdy pracujemy nad projektami.

Pytanie 28

Aby zaktualizować maksymalną długość kolumny imie w tabeli klienci do 30 znaków, należy zastosować w języku SQL poniższy kod

A. CHANGE TABLE klienci MODIFY imie CHAR(30);
B. CHANGE TABLE klienci TO COLUMN imie SET CHAR(30);
C. ALTER TABLE klienci CHANGE imie TEXT;
D. ALTER TABLE klienci MODIFY COLUMN imie VARCHAR(30);
Aby zmienić maksymalną długość pola 'imie' w tabeli 'klienci' na 30 znaków, używamy polecenia SQL 'ALTER TABLE', które jest standardowym sposobem modyfikacji struktury tabeli w bazach danych. W tym przypadku wykorzystujemy 'MODIFY COLUMN', co jest istotne, ponieważ pozwala na precyzyjne określenie, że chcemy zmienić właściwości konkretnej kolumny. Typ danych 'VARCHAR' oznacza, że kolumna może przechowywać zmienne długości tekstu, a wartość 30 oznacza maksymalną liczbę znaków. Przykładowo, jeśli w bazie danych już istnieją rekordy, to zmiana ta nie wpłynie na dane, które są krótsze niż 30 znaków, ale może być problematyczna, jeśli próbujemy wprowadzić dane dłuższe niż dozwolone, ponieważ takie operacje mogą kończyć się błędami. Warto również zaznaczyć, że różne systemy zarządzania bazami danych, takie jak MySQL, PostgreSQL czy Oracle, mogą mieć drobne różnice w składni, ale zasada działania polecenia 'ALTER TABLE' pozostaje zasadniczo taka sama. To podejście jest zgodne z zaleceniami standardu SQL i jest powszechnie stosowane w praktykach administracji bazami danych.

Pytanie 29

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

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

Jakie zapytanie umożliwi Administratorowi odebranie uprawnień do przeglądania oraz edytowania danych w bazie gazeta, dla użytkownika redaktor?

A. GRANT SELECT, ALTER ON gazeta.* TO 'redaktor'@'localhost';
B. REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost';
C. GRANT SELECT, UPDATE ON gazeta.* TO 'redaktor'@'localhost';
D. REVOKE SELECT, ALTER ON gazeta.* FROM 'redaktor'@'localhost';
Odpowiedź jest poprawna, ponieważ zapytanie REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost'; skutecznie odbiera użytkownikowi redaktor prawa do przeglądania (SELECT) oraz aktualizacji (UPDATE) danych w tabeli gazeta. W kontekście zarządzania uprawnieniami w systemach baz danych, kluczowym elementem jest kontrola dostępu. Standard SQL definiuje polecenie REVOKE jako sposób na cofnięcie przyznanych wcześniej uprawnień. W praktyce, administratorzy baz danych muszą ścisle zarządzać uprawnieniami użytkowników, aby zapewnić bezpieczeństwo danych i zgodność z politykami ochrony informacji. Przykładem zastosowania mogłoby być ograniczenie dostępu do poufnych danych w przypadku, gdy użytkownik przestaje pełnić określoną rolę w organizacji. Rezygnacja z uprawnień powinna być zawsze udokumentowana i przeprowadzona zgodnie z procedurami, by zapobiec nieautoryzowanemu dostępowi do danych. Zarządzanie uprawnieniami to kluczowy aspekt administrowania bazami danych, który wpływa na bezpieczeństwo i integralność informacji.

Pytanie 31

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

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

Pytanie 32

Kolor zdefiniowany kodem RGB o wartości rgb(128, 16, 8) w formacie szesnastkowym przyjmuje wartość

A. #801008
B. #FF1008
C. #FF0F80
D. #800F80
Odpowiedzi takie jak #FF1008, #800F80 i #FF0F80 są wynikiem błędnych konwersji wartości RGB do formatu szesnastkowego. Gdybyśmy przyjrzeli się pierwszej z tych odpowiedzi, widzimy, że wartość 'FF' oznacza 255 w systemie dziesiętnym, co nie odpowiada wartości 128 w kanale czerwonym tego koloru. Zastosowanie 'FF' w tym kontekście prowadzi do znacznego przeszacowania intensywności koloru czerwonego. Przechodząc do drugiej odpowiedzi, #800F80, wartość '0F' odpowiada 15, co również nie jest zgodne z pierwotną wartością 16 w kanale zielonym. To wskazuje na niedoszacowanie intensywności zielonej, co wpływa na percepcję koloru. Ostatnia odpowiedź, #FF0F80, znowu używa 'FF' w kanale czerwonym, co prowadzi do podobnych błędów jak w pierwszym przypadku. Kluczowym błędem, który można zidentyfikować w tych odpowiedziach, jest nieprawidłowe przeliczenie wartości RGB do formatu szesnastkowego, co jest powszechnym problemem dla osób, które nie są zaznajomione z konwersją systemów liczbowych. W praktyce, aby uniknąć takich pomyłek, warto korzystać z narzędzi online lub specjalistycznego oprogramowania, które automatycznie wykonuje te konwersje, co pozwala na zaoszczędzenie czasu i zminimalizowanie ryzyka błędów.

Pytanie 33

Fragment kodu SQL wskazuje, że klucz obcy

Ilustracja do pytania
A. wiąże się z kolumną imiona
B. jest obecny w tabeli obiekty
C. stanowi odniesienie do siebie samego
D. jest ustawiony na kolumnie obiekty
W przedstawionym fragmencie kodu SQL klucz obcy (foreign key) służy do zapewnienia integralności referencyjnej między dwiema tabelami. W tym przypadku klucz obcy wskazuje, że pole imie w jednej tabeli jest powiązane z polem imiona w tabeli obiekty. Takie podejście pomaga w utrzymaniu spójności danych, ponieważ wymusza istnienie każdej wartości w polu imie w kolumnie imiona tabeli obiekty. W praktyce oznacza to, że nie można dodać wartości do pola imie, jeśli nie istnieje odpowiadająca wartość w kolumnie imiona. Klucze obce są kluczowym elementem w projektowaniu baz danych, wspierając normalizację i redukcję redundancji danych. Prawidłowe wykorzystanie kluczy obcych pozwala na efektywne zarządzanie relacjami pomiędzy danymi, co jest zgodne z najlepszymi praktykami w zakresie projektowania baz danych. Dodatkowo, prawidłowe stosowanie kluczy obcych przyczynia się do poprawy wydajności zapytań, ponieważ umożliwia optymalizację operacji łączenia danych. To podejście jest zgodne ze standardami SQL, a jego zastosowanie jest powszechne w różnych systemach zarządzania bazami danych jak MySQL, PostgreSQL czy Oracle.

Pytanie 34

Ile razy zostanie wykonany blok pętli napisanej w PHP, przy założeniu, że zmienna sterująca nie jest modyfikowana podczas działania pętli?

for($i=0; $i <=10; $i+=2) {
       . . . . . .
}
A. 5
B. 0
C. 6
D. 10
Nieprawidłowe rozumienie działania pętli for w języku PHP może wynikać z niedokładnego zrozumienia jej składni oraz mechanizmu iteracji W tym przypadku pętla zaczyna się od wartości 0 i przyrasta o 2 aż do momentu gdy i przekroczy 10 Kluczowym elementem jest zrozumienie jak działa warunek i<=10 który wskazuje że pętla zakończy się po osiągnięciu wartości 10 ale zostanie wykonana również dla tej wartości Stąd liczba iteracji wynosi 6 a nie mniej lub więcej Jeżeli ktoś uznał że pętla wykonuje się 10 razy mógł zignorować fakt że krok iteracji wynosi 2 a nie 1 co jest typowym błędem gdy analizujemy pętle z niestandardowym przyrostem Inny błąd polega na przypuszczeniu że pętla nie wykona się wcale co wynika z nieprawidłowego założenia że warunek początkowy lub krok są błędnie skonfigurowane Warto zatem zawsze przeprowadzić symulację iteracji lub skorzystać z debuggera aby zrozumieć działanie pętli i sposób w jaki operują na niej warunki Dobrą praktyką jest również testowanie pętli z różnymi wartościami początkowymi i krokami aby uzyskać pewność co do oczekiwanego wyniku oraz uniknięcie błędów wynikających z nieprawidłowej interpretacji kodu

Pytanie 35

Aby na stronie internetowej umieścić logo z przezroczystym tłem, jaki format powinien być zastosowany?

A. PNG
B. CDR
C. JPG
D. BMP
Format PNG (Portable Network Graphics) jest preferowany do przechowywania obrazów z przezroczystym tłem, co czyni go idealnym wyborem dla logo. Główne zalety PNG to obsługa przezroczystości oraz wysoka jakość grafiki bez utraty danych, dzięki kompresji bezstratnej. W praktyce, kiedy logo jest umieszczane na różnych tłach, przezroczystość pozwala na harmonijne wpasowanie się w otoczenie, co zwiększa estetykę strony. Ponadto, PNG obsługuje różne poziomy przezroczystości (alfa), co daje projektantom więcej możliwości w zakresie efektów wizualnych. Użycie PNG w projektach internetowych jest zgodne z dobrymi praktykami w zakresie tworzenia responsywnych i estetycznych interfejsów, a także zapewnia kompatybilność z większością przeglądarek internetowych. Warto zauważyć, że PNG jest również często stosowany w grafikach wektorowych i ikonach, które wymagają przejrzystości. Korzystając z PNG, projektanci mogą być pewni, że ich grafiki będą wyglądać profesjonalnie na każdej platformie.

Pytanie 36

Wyrażenie JavaScript:

document.write(5==='5');
Co zostanie wyświetlone?
A. 0
B. false
C. 1
D. true
Odpowiedzi, które wybrałeś, jak '0', 'true' i '1', pokazują, że mogło dojść do pewnych nieporozumień w zrozumieniu, jak działają operatory porównania w JavaScript. Na przykład '0' może sugerować, że sądzisz, że wynik jest liczbowy, a nie logiczny. Warto pamiętać, że w JavaScript liczby i wartości logiczne to różne typy danych. '0' oznacza fałsz, więc to nie jest właściwy wynik. Odpowiedź 'true' świadczy o błędnym przekonaniu, że porównywane wartości są takie same, co nie jest zgodne z tym, co robi '===' . Natomiast odpowiedź '1' sugeruje, że mogłeś pomylić wynik porównania z kodem prawdy w formie 1, co zdarza się w niektórych językach, ale w JavaScript to nie działa. Kluczowe jest to, że '===' porównuje zarówno wartości, jak i typy, więc porównując liczbę i ciąg znaków, dostajemy 'false'. W JavaScript mamy 'true' i 'false', a porównania powinny uwzględniać typy danych, żeby uniknąć zamieszania. Fajnie byłoby, gdybyś zgłębił temat typów danych w JavaScript i sam spróbował różnych porównań, żeby lepiej to ogarnąć.

Pytanie 37

Jakie polecenie pozwala na dodanie kolumny zadanie kompletne do tabeli zadania?

A. ADD COLUMN zadanie kompletne WITH zadania
B. CREATEINDEX zadania ADD COLUMN zadanie_kompletne int
C. INSERT INTO zadania VALUES zadania kompletne
D. ALTER TABLE zadania ADD COLUMN zadaniekompletne int
Odpowiedź 'ALTER TABLE zadania ADD COLUMN zadaniekompletne int' jest na pewno trafna. To polecenie ALTER TABLE to taki standard do zmiany struktury tabeli w relacyjnych bazach, jak MySQL czy PostgreSQL. Dzięki temu możemy dodać nową kolumnę do tabeli, co w tym przypadku robimy, dodając 'zadaniekompletne' jako kolumnę typu całkowitego (int). To jest super, gdy chcemy przechowywać liczby, na przykład ile zadań zostało już ukończonych. Warto pamiętać, że dobrze jest, żeby nazwy kolumn były jasne i jednoznaczne, bo to potem bardzo ułatwia pracę z danymi. Przykład: jak mamy tabelę 'zadania' i chcemy widzieć, jak sobie radzą użytkownicy, to dodanie kolumny 'zadaniekompletne' pozwoli nam śledzić, ile rzeczy zostało ukończonych, co pomoże w ocenie efektywności działań. Można też pomyśleć, żeby zamiast liczby używać flagi boolowskiej, ale to już zależy od systemu. Jeśli chcesz dalej rozwijać swoje umiejętności, to warto zajrzeć do dokumentacji SQL różnych baz, żeby lepiej złapać różnice w działaniu.

Pytanie 38

Zastosowanie klauzuli PRIMARY KEY w poleceniu CREATE TABLE sprawi, że dane pole stanie się

A. kluczem podstawowym
B. indeksem unikalnym
C. indeksem klucza
D. kluczem obcym
Klauzula PRIMARY KEY w instrukcji CREATE TABLE definiuje unikalny identyfikator dla każdej rekord w tabeli, co oznacza, że pole oznaczone jako klucz podstawowy musi mieć unikalne wartości i nie może zawierać wartości NULL. Klucz podstawowy jest fundamentalnym elementem w relacyjnych bazach danych, ponieważ umożliwia tworzenie relacji między tabelami oraz zapewnia integralność danych. Na przykład, jeśli mamy tabelę 'Użytkownicy' z kolumną 'ID', która jest kluczem podstawowym, to każda wartość w tej kolumnie będzie unikalna, co pozwala na jednoznaczne identyfikowanie użytkowników. Zgodnie z normami SQL, klucz podstawowy może składać się z jednej lub wielu kolumn, a w przypadku złożonego klucza podstawowego, wszystkie kolumny muszą spełniać warunki unikalności oraz nie mogą mieć wartości NULL. W praktyce, użycie klucza podstawowego jest kluczowe dla organizacji danych i optymalizacji zapytań, ponieważ bazy danych mogą tworzyć indeksy na tych polach, co przyspiesza operacje wyszukiwania i sortowania.

Pytanie 39

Zmienna o typie integer lub int jest w stanie przechowywać

A. znak
B. liczbę całkowitą
C. liczbę rzeczywistą
D. łańcuch znaków
Zmienna typu integer, znana również jako int, jest podstawowym typem danych w wielu językach programowania, takich jak C, C++, Java czy Python. Jej kluczową zaletą jest możliwość przechowywania tylko liczb całkowitych, co czyni ją idealnym wyborem do operacji arytmetycznych, które wymagają precyzyjnego zarządzania wartościami całkowitymi bez części dziesiętnych. Przykłady zastosowania to m.in. przechowywanie ilości przedmiotów w magazynie, zliczanie punktów w grze lub reprezentowanie indeksów w tablicach. W praktyce, użycie zmiennych typu integer umożliwia efektywne wykorzystanie pamięci, ponieważ zajmują one mniej miejsca niż zmienne typu zmiennoprzecinkowego, a ich operacje są wykonywane szybciej. Ponadto, stosowanie zmiennych całkowitych jest zgodne z dobrymi praktykami programowania, które zalecają dobór odpowiednich typów danych do specyficznych potrzeb aplikacji, co zwiększa ich wydajność i czytelność kodu. Warto także zrozumieć, że w kontekście programowania, typ zmiennej determinuje zakres wartości, które można przechowywać, co w przypadku typu integer zwykle wynosi od -2,147,483,648 do 2,147,483,647 w standardzie 32-bitowym, co czyni go wystarczającym dla wielu zastosowań.

Pytanie 40

W dokumentacji CMS WordPress znajduje się zdanie:
"Enable comments for this post"
Co oznacza to zdanie?

A. Włącz edycję wpisu.
B. Włącz publikację wpisu.
C. Włącz formatowanie wpisu.
D. Włącz możliwość dodawania komentarzy do wpisu.
Poprawnie – komunikat „Enable comments for this post” w WordPressie oznacza dokładnie włączenie możliwości dodawania komentarzy do konkretnego wpisu. W praktyce jest to po prostu przełącznik, który decyduje, czy pod danym postem będzie widoczny formularz komentowania i lista komentarzy użytkowników. Z mojego doświadczenia to jedna z podstawowych opcji zarządzania interakcją z czytelnikami w systemach CMS. WordPress ma wbudowany system komentarzy i dla każdego wpisu z osobna można zdecydować, czy chcesz dopuścić dyskusję, czy raczej ma to być „statyczna” treść bez opinii użytkowników. Włączenie komentarzy nie wpływa na możliwość edycji, publikacji ani formatowania treści – to zupełnie osobne funkcje. Edycja odbywa się w edytorze blokowym lub klasycznym, publikacja jest kontrolowana przyciskiem „Opublikuj” / „Zaktualizuj”, a formatowanie dotyczy układu tekstu, nagłówków, obrazków, list itd. Włączanie komentarzy to raczej kwestia konfiguracji modułu dyskusji. W dobrych praktykach administracji WordPressa zaleca się świadome zarządzanie komentarzami: włączać je tam, gdzie istotna jest interakcja (np. blog, poradniki, aktualności), a wyłączać na stronach typu regulamin, polityka prywatności czy strony czysto informacyjne. W ustawieniach dyskusji można też ustawić moderację, wymóg zatwierdzania komentarzy, filtrowanie spamu czy ograniczenia dla niezalogowanych. W poważniejszych serwisach często łączy się natywne komentarze WordPressa z dodatkowymi wtyczkami (np. antyspam, integracja z social media), ale podstawowy przełącznik zawsze oznacza to samo: czy ten konkretny wpis ma mieć aktywną sekcję komentarzy, czy nie.