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: 5 marca 2026 12:28
  • Data zakończenia: 5 marca 2026 12:58

Egzamin zdany!

Wynik: 30/40 punktów (75,0%)

Wymagane minimum: 20 punktów (50%)

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

Kolor reprezentowany w formacie heksadecymalnym #0000FF to

A. niebieski
B. czerwony
C. zielony
D. czarny
Kolor zapisany w notacji heksadecymalnej #0000FF to odcień niebieskiego. Notacja heksadecymalna jest powszechnie stosowana w projektowaniu stron internetowych oraz grafice komputerowej do definicji kolorów w systemie RGB. W tej notacji sześć znaków reprezentuje wartości czerwonego, zielonego i niebieskiego (RGB), gdzie pierwsze dwa znaki to wartość czerwonego, kolejne dwa to wartość zielonego, a ostatnie dwa to wartość niebieskiego. W przypadku #0000FF, wartości są następujące: 00 (czerwony), 00 (zielony), FF (niebieski), co oznacza maksymalny poziom niebieskiego światła. Taki kolor jest czystym niebieskim, uzyskiwanym gdy intensywność czerwonego i zielonego jest zerowa, a niebieskiego maksymalna. Przykładami użycia niebieskiego w designie mogą być logo Facebooka, które wykorzystuje podobny odcień, czy tła niektórych stron internetowych. Heksadecymalne kody kolorów są zgodne z standardem W3C, co zapewnia ich uniwersalność i spójność w różnych aplikacjach graficznych i interfejsach użytkownika.

Pytanie 2

W znaczniku meta w miejsce kropek należy wpisać

Ilustracja do pytania
A. streszczenie treści strony
B. nazwa edytora
C. informację o dostosowaniu do urządzeń mobilnych
D. język dokumentu
Znacznik meta opatrzony atrybutem name="description" służy do zamieszczenia streszczenia treści strony internetowej. Jest to element HTML używany w nagłówku dokumentu, który dostarcza wyszukiwarkom i innym usługom internetowym informacji o zawartości strony. Opis ten pomaga w lepszym indeksowaniu strony przez wyszukiwarki oraz może wpływać na to, jak strona jest prezentowana w wynikach wyszukiwania. Dzięki dobrze sformułowanemu opisowi użytkownicy mogą szybciej zrozumieć, czego mogą się spodziewać po odwiedzeniu danej strony. Jest to dobra praktyka SEO, ponieważ poprawia widoczność strony w wyszukiwarkach. Zawartość opisana w znaczniku meta description nie powinna przekraczać 160 znaków, aby zapewnić odpowiednie wyświetlanie w wynikach wyszukiwania. Użycie streszczenia w odpowiedni sposób zwiększa atrakcyjność kliknięcia przez potencjalnych odwiedzających. To podejście jest zgodne z wytycznymi Google, które zaleca tworzenie unikalnych i treściwych opisów dla każdej strony w serwisie.

Pytanie 3

Fragment kodu w języku HTML zawarty w ramce ilustruje zestawienie

Ilustracja do pytania
A. odnośników.
B. skrótów.
C. wypunktowaną.
D. numerowaną.
Kod HTML zawierający znaczniki <ol> oraz <li> tworzy listę numerowaną ponieważ <ol> oznacza ordered list czyli listę uporządkowaną co skutkuje automatycznym numerowaniem każdego elementu w przeglądarkach internetowych. Znaczniki <li> reprezentują pojedyncze elementy listy zapewniając organizację danych w czytelnej formie. Taki sposób przedstawiania informacji jest powszechnie stosowany w tworzeniu dokumentów HTML i stron internetowych gdzie hierarchia i kolejność elementów ma kluczowe znaczenie. Za pomocą CSS można dodatkowo dostosować styl numerowania oraz wizualne aspekty listy co pozwala na większą elastyczność w projektowaniu interfejsu użytkownika. Standardy internetowe takie jak te rekomendowane przez W3C zachęcają do stosowania semantycznych znaczników co poprawia dostępność i SEO strony. Ponadto listy numerowane są użyteczne w sytuacjach gdy wymagana jest jasna kolejność wykonywania zadań lub prezentacja kroków w procesie co czyni je idealnym narzędziem zarówno w dokumentacji technicznej jak i w interaktywnych przewodnikach online.

Pytanie 4

Wskaż najefektywniejszą metodę wyczyszczenia wszystkich danych z tabeli adresy, nie wpływając na jej strukturę

A. DELETE * FROM adresy;
B. TRUNCATE TABLE adresy;
C. DROP TABLE adresy;
D. DELETE TABLE adresy;
TRUNCATE TABLE adresy; jest najszybszym sposobem na usunięcie wszystkich rekordów z tabeli bez usuwania jej struktury. Operacja TRUNCATE działa na poziomie strony, co oznacza, że nie przetwarza pojedynczych wierszy, jak ma to miejsce w przypadku DELETE. Dzięki temu, TRUNCATE jest znacznie wydajniejszy, szczególnie w przypadku dużych zbiorów danych. W praktyce, użycie TRUNCATE TABLE jest zalecane, gdy chcemy szybko oczyścić tabelę z danych, a następnie wprowadzić nowe rekordy. Warto jednak pamiętać, że TRUNCATE nie wywołuje kaskadowych usunięć w tabelach powiązanych z kluczami obcymi, co może być istotne w projektowaniu bazy danych. Użycie TRUNCATE może również przywrócić licznik identyfikatorów (np. AUTO_INCREMENT w MySQL) do wartości początkowej, co jest ważnym aspektem, jeśli zależy nam na tym, by nowe dane zaczynały się od określonej wartości. Praktyka wykorzystania TRUNCATE powinna być jednak stosowana ostrożnie, szczególnie w kontekście transakcji, ponieważ operacja ta nie jest odwracalna w przypadku dużych zbiorów danych, co skontrastować należy z DELETE, które można wykorzystać w ramach transakcji i przywrócić dane, jeśli zajdzie taka potrzeba. Dlatego, TRUNCATE TABLE jest zalecaną metodą w odpowiednich scenariuszach, ale jej użycie wymaga pełnego zrozumienia kontekstu bazy danych oraz powiązań między tabelami.

Pytanie 5

W CSS określono styl dla stopki. Jak można zastosować to formatowanie do bloku oznaczonego znacznikiem div?

#stopka { ... }
A. <div title = "stopka"> …
B. <div "stopka"> …
C. <div id = "stopka"> …
D. <div class = "stopka"> …
Poprawnie – zapis #stopka w CSS oznacza selektor identyfikatora (ID), więc w HTML musimy użyć atrybutu id="stopka" dokładnie z tą samą nazwą. W CSS znak # wskazuje, że styl jest przypisany do elementu o konkretnym identyfikatorze, a nie do klasy czy czegokolwiek innego. Dlatego jedynym prawidłowym sposobem podpięcia tego stylu do bloku div jest konstrukcja: <div id="stopka">…</div>. W praktyce wygląda to tak: CSS: #stopka { background-color: #333; color: white; padding: 20px; } HTML: <div id="stopka">To jest stopka strony</div> Przeglądarka łączy selektor #stopka z elementem, który ma id="stopka" i nakłada na niego zdefiniowane właściwości. Identyfikator powinien być unikalny w obrębie całego dokumentu HTML, co jest zgodne z zaleceniami W3C i ogólnie przyjętą dobrą praktyką. Do jednego ID odwołujemy się w CSS przez #, a w JavaScript przez document.getElementById("stopka"). Moim zdaniem warto zapamiętać prostą zasadę: # w CSS = id w HTML, kropka (.) w CSS = class w HTML. Gdy projektujesz layout strony, zwykle elementy typu nagłówek, stopka, główna nawigacja mają unikalne ID, bo występują raz na stronie. Natomiast powtarzalne elementy (np. kafelki z produktami) dostają klasy. Dzięki temu kod jest czytelniejszy, łatwiej się go utrzymuje i unikamy dziwnych konfliktów stylów. Dobrą praktyką jest też używanie opisowych nazw, np. id="stopka" zamiast skrótów typu id="s1", bo po miesiącu nikt nie pamięta, co to znaczyło.

Pytanie 6

Zapis w CSS `h2 {background-color: green;}` spowoduje, że kolor zielony będzie dotyczył

A. czcionki nagłówków drugiego poziomu
B. tła tekstu nagłówka drugiego poziomu
C. tła całej witryny
D. czcionki wszystkich nagłówków na stronie
Zapis CSS 'h2 {background-color: green;}' ustawia styl dla nagłówków drugiego stopnia. Dzięki właściwości 'background-color' tło nagłówka zrobi się zielone, co oznacza, że obszar za tekstem tego nagłówka będzie miał kolor zielony. Ważne, żeby pamiętać, że to działa tylko na tło samego nagłówka, a nie na całą stronę. Na przykład, jeśli w elemencie h2 jest tekst 'Witamy na naszej stronie', to tło tego nagłówka dostaje zielony kolor. To podejście jest zgodne z CSS, które pozwala na precyzyjne stylizowanie różnych elementów w dokumencie. Można też używać różnych trybów kolorów jak RGB, HEX czy HSL, co daje jeszcze większe możliwości w projektowaniu.

Pytanie 7

Na stronie www znajduje się formularz, do którego należy zaimplementować następujące funkcje: walidacja: podczas wypełniania formularza w czasie rzeczywistym sprawdzana jest poprawność danych, oraz przesyłanie danych: po wypełnieniu formularza i jego zatwierdzeniu informacje są przesyłane do bazy danych na serwerze. Aby wprowadzić tę funkcjonalność w najprostszy sposób, trzeba zapisać

A. walidację w języku JavaScript, a przesyłanie danych w skrypcie PHP
B. walidację i przesyłanie danych w języku PHP
C. walidację i przesyłanie danych w języku JavaScript
D. walidację w skrypcie PHP, a przesyłanie danych w JavaScript
Mówiąc szczerze, podejście, które zakłada walidację i przesyłanie danych tylko w PHP, to nie za bardzo dobry pomysł. Dlaczego? Bo każde weryfikowanie danych po stronie serwera wymaga przesyłania ich tam, co powoduje zbędne obciążenie. To z kolei może spowalniać interakcję z użytkownikiem, co jest frustrujące, zwłaszcza w przypadku większych formularzy. A walidacja w PHP i przesyłanie w JavaScript? Znowu nie jest to najlepsze rozwiązanie. Walidacja po stronie serwera nie jest natychmiastowa, więc użytkownik może czekać, co zazwyczaj nie jest fajne. Gdy ktoś weźmie niepoprawne dane, to musi czekać na odpowiedź serwera i to jest czasochłonne. Najlepiej łączyć walidację w JavaScript, bo to poprawia interakcję, a wysyłanie danych do serwera robić w PHP, bo on dba o bezpieczeństwo i kontakt z bazą danych. Takie rozdysponowanie zadań sprawia, że wszystko chodzi sprawnie i łatwiej to potem rozwijać, co jest zgodne z aktualnymi standardami.

Pytanie 8

W formularzu zdefiniowano kontrolki do wpisania imienia i nazwiska. Który atrybut reprezentuje podpowiedź umiejscowioną w polu kontrolki, znikającą w momencie, gdy użytkownik rozpocznie wpisywanie wartości?

<label for="imie">Imię: </label>
<input id="imie" value="Wpisz dane" title="Wpisz imię"><br>
<label for="nazw">Nazwisko: </label>
<input id="nazw" placeholder="Wpisz dane" title="Wpisz nazwisko">
A. value
B. for
C. title
D. placeholder
Dobrze! Poprawna odpowiedź to 'placeholder'. Atrybut 'placeholder' w elemencie input HTML jest używany do wyświetlania podpowiedzi wewnątrz pola formularza, która znika, gdy użytkownik zaczyna wpisywanie danych. Jest to zgodne z pytaniem, w którym poproszono o atrybut reprezentujący podpowiedź w polu formularza, która znika, gdy użytkownik rozpoczyna wpisywanie. Przykładem może być formularz logowania, gdzie w polach 'Użytkownik' i 'Hasło' można umieścić podpowiedzi 'Wpisz nazwę użytkownika' i 'Wpisz hasło' odpowiednio. Atrybut 'placeholder' jest bardzo przydatny w interaktywnym designie, pomagając użytkownikom zrozumieć, jakie informacje są od nich oczekiwane w danym polu formularza.

Pytanie 9

Wynikiem działania algorytmu dla c = 3 jest liczba

Ilustracja do pytania
A. 12
B. 60
C. 6
D. 24
Poprawna odpowiedź 24 wynika z dokładnego prześledzenia działania algorytmu krok po kroku. Algorytm najpierw wczytuje wartość c, potem ustawia zmienne: a = 1 oraz b = 2. Następnie sprawdza warunek b <= c + 1. Dla c = 3 mamy c + 1 = 4, więc pętla działa tak długo, jak b <= 4. Teraz iteracje: 1) b = 2, 2 <= 4 – warunek spełniony, więc wykonujemy a = a * b, czyli a = 1 * 2 = 2, potem zwiększamy b: b = 3. 2) b = 3, 3 <= 4 – znowu TAK, więc a = 2 * 3 = 6, b zwiększa się do 4. 3) b = 4, 4 <= 4 – nadal TAK, więc a = 6 * 4 = 24, b rośnie do 5. 4) b = 5, 5 <= 4 – warunek już fałszywy, wychodzimy z pętli i wypisujemy a, czyli 24. W praktyce ten algorytm oblicza iloczyn kolejnych liczb naturalnych od 2 do c+1, czyli w tym przypadku 2 * 3 * 4. To jest po prostu część silni: 4! = 1 * 2 * 3 * 4, tylko bez początkowego 1, więc wynik jest taki sam. Warto tu zauważyć dobry nawyk: inicjacja zmiennej a wartością 1 jest klasycznym wzorcem przy obliczaniu iloczynów (neutralny element mnożenia). Tego typu konstrukcje pętli z warunkiem porównującym do c+1 pojawiają się bardzo często w programowaniu – zarówno w algorytmach obliczających silnię, jak i przy różnego rodzaju iteracjach po zakresach, np. w JavaScript czy PHP. Z mojego doświadczenia dobrze jest zawsze rozpisać sobie kolejne kroki na kartce, szczególnie gdy warunek zawiera dodawanie lub odejmowanie, bo to właśnie tam najłatwiej o pomyłkę o jeden krok (tzw. błąd off-by-one).

Pytanie 10

Graficzny interfejs użytkownika, który umożliwia wprowadzanie danych do bazy, to

A. raport
B. encja
C. formularz
D. kwerenda
Formularz to interaktywny obiekt w graficznym interfejsie użytkownika, który umożliwia użytkownikom wprowadzanie danych do bazy danych w sposób zorganizowany i intuicyjny. Formularze są standardowo używane w aplikacjach webowych oraz desktopowych, pozwalając na zbieranie informacji od użytkowników, takich jak imię, nazwisko, adres e-mail czy inne istotne dane. Stosowanie formularzy w systemach informacyjnych jest zgodne z zasadami projektowania UX (User Experience), które zalecają, aby interfejsy były jak najbardziej przyjazne dla użytkowników. Dobrym przykładem zastosowania formularzy są strony rejestracyjne, gdzie użytkownicy muszą wprowadzić swoje dane, a system zapisuje je w bazie danych. Dobrze zaprojektowany formularz powinien zawierać walidację danych wprowadzanych przez użytkowników, co pozwala na eliminację błędów przed przesłaniem informacji do bazy. Warto również pamiętać o responsywności formularzy, aby były one użyteczne na różnych urządzeniach, co jest jednym z wymogów nowoczesnego web designu.

Pytanie 11

Jaką wartość w formacie szesnastkowym ma kolor określony kodem RGB o wartościach rgb(128,16,8)?

A. #FF1008
B. #801008
C. #FF0F80
D. #800F80
Jak spojrzymy na inne odpowiedzi, to można zauważyć, że mają one jakieś błędy w konwersji kolorów RGB na szesnastkowy. Pierwsza z błędnych odpowiedzi to #FF0F80, gdzie wartość czerwonego jest zbyt wysoka, bo mamy FF zamiast 80, które jest poprawne. Taki błąd zmienia kolor na całkiem inny, więc widać, jak ważne jest poprawne przetwarzanie tych wartości. Druga odpowiedź, #FF1008, też pokazuje za wysoką wartość czerwonego, a zielony jest nieprawidłowy, bo 10 to w rzeczywistości 16 w systemie dziesiętnym, co oczywiście wpływa na końcowy kolor. W ostatniej odpowiedzi, czyli #800F80, mamy złą wartość dla zielonego i niebieskiego. Powinno być 08 dla niebieskiego, a F80 to już coś innego. Takie pomyłki pokazują, że warto znać system RGB i jak go przerobić na szesnastkowy, żeby kolory były odpowiednio odwzorowane w projektach.

Pytanie 12

Który z znaczników ma na celu organizację struktury tekstu w HTML?

A. <h6>
B. <style>
C. <u>
D. <head>
Znacznik <h6> jest jednym z sześciu poziomów nagłówków w HTML, które służą do tworzenia hierarchii tekstu w dokumentach internetowych. Użycie nagłówków, takich jak <h1> do <h6>, jest zgodne z zasadami semantycznego HTML, co ma kluczowe znaczenie dla dostępności i SEO. Poprawne użycie tych znaczników pozwala wyszukiwarkom lepiej zrozumieć strukturę treści na stronie, a także ułatwia nawigację osobom korzystającym z technologii asystujących. Na przykład, <h1> powinien być używany dla głównego tytułu strony, a <h2>, <h3> itd. do podtytułów w hierarchii, gdzie <h6> jest najmniej istotnym nagłówkiem. Dzięki temu każdy nagłówek odzwierciedla poziom ważności treści, co zwiększa przejrzystość i użyteczność strony. Dobrą praktyką jest również ograniczenie liczby nagłówków na stronie, aby uniknąć zamieszania w strukturze. Właściwe stosowanie znaczników nagłówków jest istotne nie tylko z punktu widzenia organizacji treści, ale również wpływa na wydajność SEO, ponieważ wyszukiwarki preferują strony o klarownej hierarchii i dobrze zorganizowanej treści.

Pytanie 13

Aby skutecznie zrealizować algorytm, który znajdzie największą z trzech podanych liczb a, b oraz c, wystarczy użyć

A. pięciu zmiennych
B. jednej pętli
C. dwóch warunków
D. dwóch tablic
Aby znaleźć największą z trzech liczb a, b i c, wystarczy użyć dwóch warunków logicznych. Przykładowo, można porównać a z b, a następnie wynik tego porównania porównać z c. Jeśli a jest większe od b, to następnie sprawdzamy, czy a jest większe od c. W przeciwnym razie, porównujemy b z c. Tego rodzaju podejście pozwala na efektywną i prostą realizację algorytmu w O(1) czasie, co oznacza, że czas wykonania nie zależy od rozmiaru danych. W praktyce, takie podejście jest zgodne z zasadami minimalizmu w programowaniu, gdzie dąży się do używania jak najmniejszej liczby operacji. Dobrym przykładem jest implementacja tego algorytmu w różnych językach programowania, które pokazuje, jak zastosowanie prostych warunków może przyczynić się do zrozumienia i efektywności kodu. Użycie dwóch warunków jest również zgodne z zasadą KISS (Keep It Simple, Stupid), która promuje prostotę w projektowaniu algorytmów.

Pytanie 14

Który z atrybutów obrazu jest niezbędny w znaczniku

<img src="nowa_lektura.jpg" ...>
aby ułatwić korzystanie ze strony użytkownikom z niepełnosprawnością narządu wzroku?
A. alt="technik informatyk"
B. align="middle"
C. "height="42" width="42"
D. usemap="#lekturamap"
W tym zadaniu chodziło o dostępność stron WWW dla osób z niepełnosprawnością narządu wzroku, czyli o to, jak strona współpracuje z czytnikami ekranu i innymi technologiami asystującymi. Wiele osób intuicyjnie skupia się na wizualnych właściwościach obrazka, takich jak wyrównanie, rozmiar czy mapy odsyłaczy, bo to widać od razu w przeglądarce. Problem w tym, że dla użytkownika niewidomego te wizualne parametry nie mają większego znaczenia – dla niego liczy się opis i funkcja elementu, którą czytnik ekranu potrafi odczytać. Atrybut align="middle" dotyczy tylko sposobu wyrównania obrazu na stronie. Kiedyś był częściej używany w starym HTML, dziś jest w zasadzie przestarzały i zgodnie z dobrymi praktykami powinno się go zastępować stylami CSS. Nie wnosi on żadnej informacji semantycznej, niczego nie opisuje, jedynie zmienia położenie elementu na ekranie. Czytnik ekranu nie zyska z niego żadnej treści, którą mógłby przekazać użytkownikowi. Atrybut usemap="..." służy do powiązania obrazu z tzw. mapą odsyłaczy, czyli zdefiniowanymi obszarami klikanymi na grafice. To jest technicznie ciekawa funkcja, ale znowu – ona nie opisuje, co jest na obrazku ani jaką ten obraz pełni rolę. Bez poprawnego tekstu alternatywnego taka mapa może być wręcz trudniejsza do obsługi dla osoby korzystającej z klawiatury i czytnika, bo ma wiele aktywnych pól, ale brak kontekstu. Rozmiar obrazu, ustawiany przez height="..." i width="...", wpływa tylko na sposób wyświetlania w przeglądarce: ile pikseli ma mieć szerokość i wysokość. Z mojego doświadczenia wielu uczniów myśli, że skoro obraz będzie większy lub mniejszy, to może będzie „czytelniejszy”, a więc jakby bardziej dostępny. Dla osoby, która nie widzi, nie ma to żadnego znaczenia – czytnik ekranu nie odczytuje rozmiarów obrazu jako opisu. Takie myślenie jest typowym błędem: mylimy komfort wizualny użytkownika widzącego z dostępnością dla użytkownika niewidomego. Kluczowe w dostępności jest dostarczenie równoważnej informacji w formie tekstu, a nie tylko ładne ustawienie grafiki. W standardach WCAG i zaleceniach W3C jednoznacznie podkreśla się, że każdy istotny obraz powinien mieć odpowiedni atrybut alt. Pozostałe atrybuty, choć czasem przydatne w projektowaniu layoutu lub nawigacji graficznej, nie zastąpią tekstu alternatywnego. Dlatego, kiedy myślisz o użytkownikach z niepełnosprawnością wzroku, najpierw zadbaj o sensowny alt, a dopiero potem o wyrównanie, rozmiar czy bardziej zaawansowane funkcje grafiki.

Pytanie 15

Aby stworzyć poprawną kopię zapasową bazy danych, która będzie mogła zostać później przywrócona, należy najpierw sprawdzić

A. możliwość udostępnienia bazy danych
B. poprawność składni zapytań
C. spójność bazy
D. uprawnienia dostępu do serwera bazy danych
Spójność bazy danych jest kluczowym elementem, który należy sprawdzić przed wykonaniem kopii bezpieczeństwa, ponieważ zapewnia, że wszystkie dane są zgodne i nie zawierają błędów. Spójność oznacza, że wszelkie reguły i ograniczenia, takie jak klucze główne, klucze obce oraz unikalne indeksy, są spełnione. W przypadku naruszenia spójności, kopia bazy danych mogłaby zawierać uszkodzone lub niekompletne dane, co mogłoby uniemożliwić jej prawidłowe odtworzenie w przyszłości. Przykładem może być sytuacja, gdy mamy tabelę zamówień, która odwołuje się do tabeli klientów. Jeśli rekord klienta został usunięty, a zamówienia pozostają, to mamy do czynienia z naruszeniem spójności. Standardy, takie jak ACID (Atomicity, Consistency, Isolation, Durability), podkreślają znaczenie spójności w zarządzaniu bazami danych, co czyni ją niezbędnym krokiem w procesie tworzenia kopii zapasowych.

Pytanie 16

Zapytanie MySQL przedstawione poniżej ma na celu

ALTER TABLE ksiazki MODIFY tytul VARCHAR(100) NOT NULL;
A. usunąć kolumnę tytul z tabeli ksiazki
B. zmienić nazwę kolumny w tabeli ksiazki
C. zmienić typ kolumny tytul w tabeli ksiazki
D. dodać kolumnę tytul do tabeli ksiazki
Polecenie 'ALTER TABLE ksiazki MODIFY tytul VARCHAR(100) NOT NULL;' służy do zmiany typu danych lub ograniczeń kolumny w istniejącej tabeli. W tym przypadku modyfikujemy kolumnę 'tytul' w tabeli 'ksiazki', zmieniając jej typ danych na VARCHAR(100) oraz ustawiając ograniczenie NOT NULL. Polecenie MODIFY jest używane w SQL do zmiany struktury kolumny, takiej jak typ danych, długość, czy też dodawanie ograniczeń. Praktyczne zastosowanie tego polecenia można znaleźć w sytuacjach, gdy oryginalna definicja kolumny jest niewystarczająca, np. zwiększenie długości pola tekstowego, aby pomieścić dłuższe wartości. Dobre praktyki przy modyfikacji kolumn obejmują dokładne zrozumienie zmian, które wprowadzasz, oraz testowanie ich w środowisku deweloperskim przed wdrożeniem na żywo. Ważne jest także rozważenie wpływu na istniejące dane oraz wydajność zapytań. Zmiana typu kolumny na VARCHAR z określoną długością jest szczególnie przydatna, gdy chcemy zminimalizować wykorzystanie pamięci w bazie danych.

Pytanie 17

Jaki typ powinien być wykorzystany, aby pole danych mogło przyjmować liczby zmiennoprzecinkowe?

A. VARCHAR
B. CHAR
C. INT
D. FLOAT
Typ danych FLOAT jest idealnym rozwiązaniem do przechowywania liczb rzeczywistych, ponieważ umożliwia reprezentację wartości z przecinkiem dziesiętnym. W przeciwieństwie do typu INT, który obsługuje jedynie liczby całkowite, FLOAT potrafi przechowywać znacznie szerszy zakres wartości, w tym liczby z miejscami po przecinku. Użycie typu FLOAT jest szczególnie korzystne w aplikacjach wymagających precyzyjnych obliczeń, takich jak kalkulatory, systemy finansowe czy analizy danych. Przykładowo, w systemach baz danych SQL, definiując kolumnę jako FLOAT, możemy przechowywać wartości takie jak 3.14, -0.001 lub 2.71828. Standard SQL określa, że FLOAT może posiadać różne precyzje, co pozwala na dostosowanie pamięci do potrzeb konkretnej aplikacji. W praktyce, FLOAT jest wykorzystywany w złożonych obliczeniach inżynieryjnych, gdzie precyzyjne wartości są kluczowe dla wyników obliczeń.

Pytanie 18

Aby wykonać przycisk na stronę internetową zgodnie z wzorem, potrzebne jest skorzystanie z opcji w programie do grafiki rastrowej

Ilustracja do pytania
A. zniekształcenia i deformacja
B. zaokrąglenie lub wybór opcji prostokąt z zaokrąglonymi rogami
C. propagacja wartości
D. selekcja eliptyczna
Opcja zaokrąglenie lub wybranie opcji prostokąt z zaokrąglonymi rogami jest prawidłowa, ponieważ pozwala na stworzenie przycisku o nowoczesnym i estetycznym wyglądzie. W programach graficznych takich jak Adobe Photoshop lub GIMP opcja ta umożliwia użytkownikowi szybkie utworzenie prostokąta, którego rogi są zaokrąglone według określonego promienia. Jest to szczególnie przydatne w projektowaniu elementów interfejsu użytkownika, gdzie zaokrąglone rogi nadają wrażenie łagodności i nowoczesności. Stosowanie zaokrąglonych rogów jest zgodne z aktualnymi trendami UX/UI, które kładą nacisk na przyjazność i intuicyjność interfejsu. Praktyczne zastosowanie to nie tylko przyciski, ale również inne elementy graficzne takie jak pola tekstowe, karty czy okna dialogowe. Zaokrąglone rogi są również bardziej przyjazne dla oka, co jest istotne w kontekście użyteczności. Technicznie osiąga się to przez modyfikację kształtu obiektu wektorowego lub przez zastosowanie odpowiednich filtrów w grafice rastrowej. Warto też pamiętać o dostosowaniu promienia zaokrągleń do ogólnej estetyki projektu, co jest dobrą praktyką w projektowaniu graficznym.

Pytanie 19

Zdarzenie JavaScript onmousedown występuje, gdy

A. został wciśnięty dowolny klawisz myszy komputerowej na danym elemencie.
B. wskaźnik myszy komputerowej wyszedł poza obręb obiektu.
C. wskaźnik myszy komputerowej znalazł się w obrębie obiektu.
D. został naciśnięty dwa razy klawisz myszy komputerowej.
W tym pytaniu wszystkie niepoprawne odpowiedzi kręcą się wokół podobnego nieporozumienia: pomieszania różnych zdarzeń myszy dostępnych w JavaScript. Przeglądarka rozróżnia bardzo precyzyjnie momenty, kiedy kursor wchodzi w obszar elementu, kiedy go opuszcza, kiedy przycisk jest naciskany, kiedy jest puszczany i kiedy nastąpiło faktyczne kliknięcie lub podwójne kliknięcie. Każda z tych sytuacji ma swój osobny event i warto to mieć poukładane w głowie, bo inaczej łatwo dobrać złe zdarzenie do danego efektu na stronie. Pojawienie się kursora myszy w obrębie elementu nie ma nic wspólnego z onmousedown. Do tego służą zdarzenia onmouseover i onmouseenter, a do opuszczenia obszaru onmouseout lub onmouseleave. Typowy błąd to myślenie w stylu „skoro coś się dzieje z myszą nad elementem, to pewnie onmousedown”, ale specyfikacja DOM Events bardzo jasno definiuje, że mousedown dotyczy tylko fizycznego naciśnięcia przycisku, a nie samego ruchu wskaźnika. Równie mylące bywa utożsamianie onmousedown z podwójnym kliknięciem. Podwójne kliknięcie ma własne zdarzenie ondblclick i jest generowane dopiero, gdy przeglądarka wykryje dwa szybkie kliknięcia pod rząd w krótkim odstępie czasu. Owszem, technicznie przy podwójnym kliknięciu pojawią się dwa mousedown i dwa mouseup, ale to nie znaczy, że mousedown „oznacza” podwójne kliknięcie. To tylko jeden z niższopoziomowych eventów, na podstawie których przeglądarka składa wyższy poziom interakcji. Koncepcja, że onmousedown występuje w momencie wyjścia kursora poza element, też wynika z pomieszania pojęć – za takie sytuacje odpowiadają właśnie zdarzenia typu mouseout, a nie mousedown. Z mojego doświadczenia takie błędy biorą się z patrzenia na zdarzenia bardziej „intuicyjnie” niż zgodnie ze specyfikacją. Dlatego dobrą praktyką jest zapamiętanie prostego schematu: mousedown – fizyczne naciśnięcie przycisku na elemencie, mouseup – puszczenie, click – pełne kliknięcie, dblclick – dwa kliknięcia, mouseover/mouseout – wejście i wyjście kursora. Dopiero mając to w głowie, można świadomie dobierać właściwe zdarzenie do działania, którego potrzebujesz na stronie.

Pytanie 20

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Inwersja.
B. Krzywe.
C. Barwienie.
D. Progowanie.
Prawidłowo wskazana funkcja to „Progowanie”, bo dokładnie ona zamienia obraz kolorowy lub w odcieniach szarości na obraz dwuwartościowy: piksel jest albo czarny, albo biały, w zależności od tego, czy jego jasność przekracza ustawiony próg. W GIMP-ie znajdziesz ją w menu Kolory → Progowanie. Suwakami ustalasz zakres poziomów jasności, które mają zostać potraktowane jako „białe”, a wszystko poza tym zakresem staje się „czarne”. Efekt, który się wtedy uzyskuje, jest bardzo charakterystyczny: mocno kontrastowy, bez półtonów, coś w stylu skanu czarno-białego lub grafiki do druku na ploterze tnącym. Z mojego doświadczenia progowanie świetnie nadaje się do przygotowania logotypów, szkiców technicznych, schematów, a także do wyciągania konturów z lekko rozmytych zdjęć. Często używa się go też przed wektoryzacją, żeby program śledzący krawędzie miał wyraźne granice między czernią a bielą. W pracy z grafiką na potrzeby stron WWW próg bywa stosowany np. przy tworzeniu prostych ikon, piktogramów albo masek (maski przezroczystości można przygotować właśnie na bazie obrazu progowanego). Dobrą praktyką jest najpierw sprowadzenie obrazu do odcieni szarości i dopiero potem użycie progowania, bo wtedy masz większą kontrolę nad tym, jak rozkłada się jasność i gdzie wypadnie granica progu. Warto też pamiętać, że progowanie jest operacją destrukcyjną – traci się informacje o półtonach – więc najlepiej pracować na kopii warstwy, żeby w razie czego móc wrócić do oryginału i poprawić ustawienia progu.

Pytanie 21

Jakie zadania programistyczne mogą być realizowane wyłącznie po stronie klienta w przeglądarce?

A. Bezpieczne wyświetlenie spersonalizowanej treści strony na podstawie uprawnień użytkownika aplikacji
B. Weryfikacja hasła użytkownika w bazie danych powiązanej z aplikacją internetową
C. Zapis danych z formularza w bazie danych związanej z aplikacją internetową
D. Weryfikacja danych wprowadzanych do pola tekstowego w czasie rzeczywistym
Sprawdzanie danych wpisywanych do pola tekstowego w czasie rzeczywistym jest zadaniem, które można wykonać wyłącznie po stronie klienta, korzystając z technologii takich jak JavaScript. Przykładem może być walidacja formularzy, gdzie użytkownik otrzymuje natychmiastową informację zwrotną na temat poprawności danych, zanim jeszcze wyśle formularz. Dzięki temu można zredukować ilość błędów i poprawić doświadczenia użytkownika. Zastosowanie tego typu walidacji jest zgodne z dobrymi praktykami, ponieważ pozwala na szybszą interakcję bez konieczności komunikacji z serwerem, co z kolei zmniejsza obciążenie serwera i przyspiesza czas ładowania strony. Warto również zwrócić uwagę na standardy dostępności, aby zapewnić, że walidacja jest wykonalna także dla osób używających technologii asystujących. Dobrze zaprojektowane formularze z walidacją po stronie klienta są bardziej przyjazne i funkcjonalne, co przekłada się na wyższe wskaźniki konwersji w aplikacjach internetowych.

Pytanie 22

Który z wymienionych systemów nie należy do systemów CMS?

A. Joomla!
B. Drupal
C. Adobe Flash
D. WordPress
Adobe Flash to platforma do tworzenia animacji oraz interaktywnych aplikacji internetowych, a nie system zarządzania treścią (CMS). CMS to oprogramowanie, które umożliwia użytkownikom łatwe tworzenie, zarządzanie i publikowanie treści na stronach internetowych bez potrzeby znajomości języków programowania. Flash, stworzony przez firmę Adobe, był wykorzystywany głównie do animacji, gier i aplikacji multimedialnych w sieci, ale nie oferował funkcji typowych dla systemów CMS, takich jak zarządzanie bazą danych, szeregowanie treści czy obsługa użytkowników. Przykłady popularnych CMS-ów to WordPress, który dominuje wśród blogów i prostych stron internetowych, Joomla! znany z elastyczności i szerokich możliwości, oraz Drupal, który zapewnia zaawansowane funkcje dla większych i bardziej skomplikowanych projektów. Użytkownicy mogą łatwo edytować treści, zmieniać układ strony, dodawać nowe funkcjonalności poprzez wtyczki i modyfikować szablony bez potrzeby kodowania, co jest głównym powodem, dla którego CMS-y stały się tak popularne wśród osób nieposiadających umiejętności programistycznych.

Pytanie 23

W języku JavaScript, element został uzyskany przy pomocy metody getElementById. Jaką właściwość należy zastosować, aby zmienić zawartość tego elementu?

A. innerHTML
B. innerBody
C. HTML
D. Body
Właściwość innerHTML jest kluczowym elementem w manipulacji DOM (Document Object Model) w JavaScript. Umożliwia ona programistom modyfikację zawartości HTML danego elementu. Po pobraniu elementu za pomocą metody getElementById, można zmienić jego wewnętrzną zawartość, przypisując nowy tekst lub kod HTML do innerHTML. Na przykład, jeśli mamy element o id 'example', jego zawartość można zmienić w ten sposób: document.getElementById('example').innerHTML = '<p>Nowa zawartość</p>'; To podejście jest powszechnie stosowane w dynamicznej aktualizacji treści stron internetowych, co jest szczególnie przydatne w aplikacjach jednostronicowych (SPA) oraz przy tworzeniu interaktywnych komponentów użytkownika. Warto również zauważyć, że używanie innerHTML wiąże się z pewnymi zagrożeniami, takimi jak wstrzykiwanie kodu (XSS), dlatego zawsze powinno się dbać o walidację i sanitację wprowadzanych danych. W praktyce, aby zwiększyć bezpieczeństwo aplikacji, można korzystać z innych metod manipulacji DOM, takich jak textContent lub createElement, które nie interpretują kodu HTML.

Pytanie 24

Który selektor stosuje formatowanie dla akapitów tekstu z klasą tekst oraz dla elementu blokowego o ID obrazki?

A. p#tekst + div.obrazki
B. p.tekst + div#obrazki
C. p#tekst, div.obrazki
D. p.tekst, div#obrazki
Odpowiedź 'p.tekst, div#obrazki' jest poprawna, ponieważ selektor 'p.tekst' odnosi się do elementów <p> z klasą 'tekst', a selektor 'div#obrazki' odnosi się do elementu <div> z identyfikatorem 'obrazki'. Oba selektory są zgodne z zasadami CSS, które pozwalają na stylizację elementów na podstawie ich klas i ID. Na przykład, jeśli chcemy zmienić kolor tekstu w akapitach oraz dodać ramkę do elementu div, możemy zastosować następujący kod: css p.tekst { color: blue; } div#obrazki { border: 1px solid black; } Praktyczne zastosowanie selektorów klas i ID w CSS pozwala na precyzyjne dostosowanie stylu poszczególnych elementów na stronie. Zgodność z najlepszymi praktykami oznacza, że stosujemy jednoznaczne i czytelne nazwy klas oraz ID, co ułatwia późniejszą konserwację kodu oraz współpracę z innymi deweloperami. Warto także pamiętać, że wyższej specyfiki selektory, takie jak ID, mają pierwszeństwo wobec klas, co może wpłynąć na końcowy wygląd elementów na stronie.

Pytanie 25

CMYK to kombinacja czterech podstawowych kolorów stosowanych w druku:

A. turkusowego, błękitnego, białego, różowego
B. czerwonego, purpurowego, żółtego, szarego
C. turkusowego, purpurowego, białego, czarnego
D. turkusowego, purpurowego, żółtego, czarnego
Odpowiedź zawierająca kolory turkusowy, purpurowy, żółty i czarny jest poprawna, ponieważ CMYK to standardowy model kolorów stosowany w druku. Składa się on z czterech podstawowych kolorów: cyjan (turkusowy), magenta (purpurowy), żółty i czarny (key). Model ten jest powszechnie wykorzystywany w przemyśle poligraficznym, ponieważ pozwala na uzyskanie szerokiej gamy kolorów poprzez mieszanie tych czterech odcieni. Przykładem zastosowania CMYK jest druk ulotek, plakatów czy książek, gdzie precyzyjne odwzorowanie kolorów jest kluczowe dla jakości i estetyki produktu. W praktyce, mieszanie kolorów w tym modelu odbywa się przez stosowanie różnych proporcji farb, co pozwala na uzyskanie pożądanych odcieni. Warto również zauważyć, że standard CMYK jest podstawą wielu systemów druku cyfrowego oraz offsetowego, co czyni go fundamentalnym narzędziem w pracy projektantów graficznych oraz drukarzy, którzy muszą zrozumieć jego zasady, aby efektywnie realizować projekty graficzne.

Pytanie 26

W CSS, aby stylizować tekst przy użyciu przekreślenia, podkreślenia dolnego lub górnego, należy użyć atrybutu

A. text-transform
B. text-indent
C. text-decoration
D. text-align
Atrybut text-decoration w CSS jest kluczowy do formatowania tekstu, umożliwiając zastosowanie efektów takich jak przekreślenie, podkreślenie dolne oraz górne. Można go użyć w prosty sposób, na przykład: 'text-decoration: underline;' dodaje podkreślenie do tekstu, natomiast 'text-decoration: line-through;' umożliwia przekreślenie. Dzięki tym efektom, projektanci stron mogą skutecznie komunikować różne stany tekstu, takie jak usunięte lub nieaktualne informacje. Standardy CSS, określone przez W3C, zalecają użycie text-decoration w kontekście dostępności, co poprawia czytelność i umożliwia lepsze zrozumienie treści przez użytkowników. Warto pamiętać, że text-decoration posiada również wartość 'none', co pozwala na usunięcie wszelkich dekoracji z tekstu. Dzięki temu deweloperzy mogą z łatwością dostosować wygląd tekstu zgodnie z wymaganiami projektu, co stanowi dobrą praktykę w responsywnym web designie.

Pytanie 27

W środowisku PHP pobrano z bazy danych rezultat działania zapytania przy użyciu komendy mysql_query. W celu uzyskania z otrzymanej kwerendy jednego wiersza danych, konieczne jest użycie polecenia

A. mysql_field_len
B. mysql_list_fields
C. mysql_fetch_lengths
D. mysql_fetch_row
Odpowiedź 'mysql_fetch_row' jest prawidłowa, ponieważ to funkcja w PHP, która pobiera jeden wiersz danych jako tablicę numeryczną z wyników zapytania SQL. Jest to kluczowy element do pracy z danymi zwróconymi przez bazę danych, gdyż umożliwia nam iterację przez wyniki zapytania. Przykładowo, po wykonaniu kwerendy za pomocą 'mysql_query', używamy 'mysql_fetch_row', aby uzyskać pierwszy wiersz wyników: $row = mysql_fetch_row($result);. W praktyce, korzystając z tej funkcji, możemy odnosić się do poszczególnych kolumn, używając indeksów, co jest efektywne, zwłaszcza przy pracy z dużymi zbiorami danych. Warto pamiętać, że 'mysql_fetch_row' jest jedną z podstawowych funkcji w pracy z bazami danych w PHP, jednak w najnowszych projektach zaleca się korzystanie z rozszerzenia PDO lub MySQLi, które oferują lepsze zabezpieczenia oraz wsparcie dla obiektowego podejścia programowania. To także zgodne z najlepszymi praktykami w zakresie bezpieczeństwa i wydajności aplikacji webowych.

Pytanie 28

$liczba = 10;
while($liczba<50){
   echo "$liczba";
   $liczba=$liczba+5;
}
Jakie liczby zostaną wyświetlone w wyniku działania tej pętli w języku PHP?

A. 10 15 20 25 30 35 40 45
B. 0 5 10 15 20 25 30 35 40 45 50
C. 10 15 20 25 30 35 40 45 50
D. 0 5 10 15 20 25 30 35 40 45
Wynik działania pętli w języku PHP jest poprawny, ponieważ zaczyna się od wartości 10, a następnie w każdej iteracji zwiększa tę wartość o 5, aż osiągnie 50, które nie jest wliczane do wypisywanych wyników. Wartości wypisywane w trakcie działania pętli to: 10, 15, 20, 25, 30, 35, 40, 45. Wartością graniczną jest 50, która przerywa działanie pętli. Taki mechanizm jest często stosowany w programowaniu, zwłaszcza w sytuacjach, gdzie musimy iteracyjnie przetwarzać dane w określonym zakresie. Dobrą praktyką jest również upewnienie się, że warunki pętli są jasno określone, co zapobiega niepożądanym wynikom, takim jak nieskończone pętle. W PHP używamy pętli takich jak 'while', 'for' i 'foreach', które są kluczowymi elementami w programowaniu i pozwalają na efektywne przetwarzanie danych.

Pytanie 29

W kaskadowych arkuszach stylów do oznaczenia selektora klasy wykorzystuje się symbol

A. . (kropka)
B. : (dwukropek)
C. #
D. *
Odpowiedź . (kropka) jest prawidłowa, ponieważ w kaskadowych arkuszach stylów (CSS) selektor klasy definiuje się poprzez użycie symbolu kropki przed nazwą klasy. Przykład: jeśli mamy klasę o nazwie 'przyklad', to w CSS zapisujemy selektor jako '.przyklad'. Taki selektor pozwala na stosowanie określonych stylów do wszystkich elementów HTML, które zawierają tę klasę. Dobrą praktyką jest używanie klas do grupowania elementów, co ułatwia zarządzanie stylami oraz zwiększa czytelność kodu. Na przykład, możemy zdefiniować wspólny wygląd dla przycisków: .przycisk { background-color: blue; color: white; }. Ponadto, korzystanie z klas zamiast identyfikatorów (które definiuje się przez symbol #) pozwala na wielokrotne stosowanie jednego stylu w różnych miejscach dokumentu. Klasy są bardziej elastyczne i umożliwiają lepszą organizację kodu, co jest zgodne z zasadami DRY (Don't Repeat Yourself) w programowaniu.

Pytanie 30

W którym z przedstawionych bloków powinien być umieszczony warunek pętli?

Ilustracja do pytania
A. Rys. B
B. Rys. C
C. Rys. D
D. Rys. A
Rysunek C przedstawia romb który w diagramach przepływu jest standardowo używany do reprezentowania decyzji lub warunków warunku pętli. Pętle w programowaniu są często oparte na warunkach które decydują o ich kontynuacji lub zakończeniu. Umiejscowienie warunku w rombie pozwala na wyrażenie warunku logicznego który może być testowany jako prawda lub fałsz co jest kluczowe dla działania pętli takich jak while czy for. Przykładem może być pętla while która kontynuuje swoje działanie tak długo jak warunek w rombie jest spełniony. W ten sposób romb ułatwia wizualne i logiczne śledzenie decyzji w algorytmie co jest zgodne z dobrymi praktykami programowania takimi jak przejrzystość i czytelność kodu. Użycie rombu zgodnie z konwencją diagramów przepływu poprawia także zrozumienie algorytmu przez innych programistów co zwiększa efektywność współpracy w zespołach deweloperskich. Stosowanie tego symbolu jest również wspierane przez standardy takie jak UML co czyni go uniwersalnym narzędziem w modelowaniu procesów.

Pytanie 31

Która z czynności nie wpłynie na objętość zajmowanej pamięci pliku graficznego?

A. Interpolacja
B. Modyfikacja rozdzielczości obrazu
C. Zmiana rozmiaru obrazu przy użyciu atrybutów HTML
D. Kompresja
Zmiana rozdzielczości obrazu, kompresja oraz interpolacja to techniki, które zdecydowanie wpływają na rozmiar pliku graficznego. Zmiana rozdzielczości obrazu polega na modyfikacji liczby pikseli w obrazie, co bezpośrednio wpływa na jego wagę. Im większa rozdzielczość, tym więcej danych jest przechowywanych, co skutkuje większym plikiem. W praktyce, jeśli zredukujemy rozdzielczość obrazu, jego rozmiar pliku również zmaleje, co może być przydatne w kontekście optymalizacji stron internetowych. Kompresja to kolejny kluczowy proces, który może znacznie wpłynąć na rozmiar pliku. Polega ona na zmniejszeniu ilości danych w pliku graficznym, co może być realizowane bez widocznej utraty jakości. Istnieją różne metody kompresji, takie jak JPEG, PNG czy WebP, z których każda ma swoje zastosowania w zależności od rodzaju obrazu i wymagań projektu. Interpolacja, z kolei, to technika stosowana podczas zmiany rozmiaru obrazów, która polega na obliczaniu nowych wartości pikseli na podstawie istniejących. W procesie tym może dojść do degradacji jakości obrazu, co w przypadku niewłaściwego zastosowania prowadzi do niepożądanych efektów wizualnych. Zrozumienie, jak te techniki wpływają na pliki graficzne, jest kluczowe dla każdego twórcy treści, który pragnie optymalizować swoje zasoby i zapewniać użytkownikom jak najlepsze doświadczenia podczas przeglądania stron internetowych.

Pytanie 32

Zidentyfikuj poprawnie zbudowany warunek w języku PHP, który sprawdza brak połączenia z bazą MySQL.

A. if (mysql_connect_error())()
B. if (mysqli_connect_errno()){}
C. if {mysql_connect_errno()}{}
D. if {mysqli_connect_error()}{}
No, odpowiedzi, które wybrałeś, mają sporo błędów. Na przykład, 'if (mysql_connect_error())()' jest źle napisane, bo masz tu podwójne nawiasy, a powinny być pojedyncze. 'if {mysql_connect_errno(){}}' i 'if {mysqli_connect_error()}' używają klamr, gdzie powinny być nawiasy okrągłe, bo w PHP warunki muszą być w nawiasach. Te stare funkcje, takie jak 'mysql_connect_error()' czy 'mysql_connect_errno()', to już przeżytek, zostały usunięte w PHP 7.0. Teraz, wybierając 'mysqli', zapewniasz sobie lepsze bezpieczeństwo i działanie aplikacji. To jest kluczowe, żeby zrozumieć, jak poprawnie pisać kod, bo bez tego ciężko osiągniesz sukces w programowaniu w PHP.

Pytanie 33

Zestawienie dwóch kolorów znajdujących się naprzeciwko siebie w kole kolorów jest zestawieniem

A. sąsiadującym
B. trójkątnym
C. monochromatycznym
D. dopełniającym
Wybór odpowiedzi trójkątnym odnosi się do koncepcji, w której kolory są rozmieszczone w formie trójkąta na kole barw. Takie połączenie nie tworzy jednak charakterystycznej relacji, jaką posiadają kolory dopełniające. W praktyce, kolory trójkątne służą do tworzenia bardziej złożonych palet, gdzie każdy kolor współdziała z pozostałymi, ale nie generują one tak silnego kontrastu jak dopełniające. Odpowiedź sąsiadującym sugeruje, że barwy są blisko siebie w kole barw, co prowadzi do harmonijnego, ale jednolitego efektu, a nie do wyraźnych kontrastów. Barwy sąsiadujące można stosować do uzyskania delikatniejszych przejść kolorystycznych, co jest przydatne w projektach, które wymagają subtelności. Z kolei monochromatycznym odnosi się do jednego koloru i jego odcieni, co pozwala na stworzenie spójnej, ale mało zróżnicowanej palety kolorystycznej. Użycie monochromatycznych kolorów może być przydatne do zbudowania jednolitego stylu, lecz nie oferuje ono intensywności wizualnej, którą uzyskuje się dzięki kolorom dopełniającym. Generalnie, błędne podejścia do kolorów mogą prowadzić do ograniczenia kreatywności i nieefektywnego wykorzystania kolorystyki w projektach artystycznych czy graficznych. Zrozumienie różnic między tymi połączeniami jest kluczowe dla efektywnego wykorzystania teorii kolorów w praktycznych zastosowaniach.

Pytanie 34

Podczas realizacji grafiki na stronę internetową konieczne jest wycięcie jedynie jej części. Jak nazywa się ta czynność?

A. zmiana rozmiaru
B. łącznie warstw
C. odwrócenie obrazu
D. kadrowanie
Kadrowanie to proces, który polega na przycinaniu obrazu w celu uzyskania określonego obszaru, eliminując zbędne fragmenty. W kontekście przygotowywania grafiki na stronę internetową, kadrowanie jest kluczowe, ponieważ pozwala na dostosowanie wymiarów obrazu do wymagań projektu, co jest szczególnie istotne w kontekście responsywnego designu. Przykładowo, jeśli mamy zdjęcie o wysokiej rozdzielczości, a chcemy je wykorzystać jako tło na stronie, kadrowanie pozwala nam wybrać najważniejszy fragment, który będzie najlepiej komponował się w ustalonym układzie. W praktyce kadrowanie nie tylko poprawia estetykę grafiki, ale także wpływa na jej wydajność, zmniejszając rozmiar pliku, co jest korzystne dla szybkości ładowania strony. Warto również zaznaczyć, że dobrym zwyczajem jest zachowanie proporcji obrazu podczas kadrowania, co można osiągnąć przy pomocy narzędzi takich jak Adobe Photoshop czy GIMP, które oferują funkcje do precyzyjnego wycinania i dostosowywania wymiarów.

Pytanie 35

W instrukcji CREATE TABLE w SQL atrybut wskazujący, która kolumna w tabeli pełni rolę klucza podstawowego, to

A. PRIMARY KEY
B. MAIN KEY
C. IDENTITY FIELD
D. UNIQUE
Odpowiedź 'PRIMARY KEY' jest poprawna, ponieważ w poleceniu CREATE TABLE w SQL, klucz podstawowy jest definiowany właśnie za pomocą tego atrybutu. Klucz podstawowy to unikalny identyfikator dla każdej wiersza w tabeli, co oznacza, że wartość w tej kolumnie musi być unikalna i nie może być pusta. Definiowanie klucza podstawowego jest kluczowe dla zapewnienia integralności danych oraz efektywności operacji na bazie danych, ponieważ umożliwia szybkie wyszukiwanie i sortowanie. Na przykład, jeśli tworzysz tabelę 'Użytkownicy', możesz zdefiniować kolumnę 'UserID' jako klucz podstawowy, co zagwarantuje, że każdy użytkownik ma unikalny identyfikator. Warto również pamiętać, że w praktyce, jeśli nie określisz klucza podstawowego, baza danych nie będzie mogła zapewnić unikalności w tabeli, co może prowadzić do problemów z danymi. Zgodnie z dobrymi praktykami, klucz podstawowy powinien być stabilny oraz niezmienny, co oznacza, że nie powinno się go zmieniać po jego utworzeniu.

Pytanie 36

Jakie jest oznaczenie typu stało-znakowego w SQL?

A. time
B. text
C. char
D. bool
Typy text, time oraz bool są niepoprawne w kontekście pytania o stało-znakowy typ danych w SQL. Typ text jest używany do przechowywania łańcuchów o zmiennej długości i jest zaprojektowany do przechowywania większej ilości tekstu, niż typ char. Oznacza to, że text może zawierać znacznie więcej danych, w zależności od implementacji systemu zarządzania bazą danych, jednak nie jest on typem stało-znakowym, co wyklucza go z omawianego pytania. Typ time, z drugiej strony, jest używany do przechowywania danych czasowych, które obejmują godziny, minuty, sekundy oraz, w niektórych przypadkach, ułamki sekundy. Nie ma on żadnego związku z przechowywaniem łańcuchów znaków, a jego zastosowanie jest całkowicie odmienne, koncentrując się na operacjach związanych z czasem. Typ bool jest kolejnym przykładem nieodpowiedniego wyboru. Służy on do przechowywania wartości logicznych, które mogą przyjmować jedynie dwie opcje: prawda (true) lub fałsz (false). Ten typ danych jest używany w kontekście warunków oraz decyzji logicznych, a nie do przechowywania tekstu. Dlatego też, w kontekście pytania o typ stało-znakowy, żaden z wymienionych typów poza char nie jest odpowiedni.

Pytanie 37

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

Ilustracja do pytania
A. zmniejszenie liczby kolorów
B. odcienie szarości
C. barwienie
D. ustawienia jasności i kontrastu
Redukcja kolorów polega na zmniejszeniu liczby kolorów w obrazie, co jest często stosowane w celu optymalizacji plików graficznych do użytku w Internecie. Zasadniczo polega to na kompresji palety kolorów, aby zmniejszyć rozmiar pliku przy jednoczesnym zachowaniu możliwie najlepszej jakości obrazu. Desaturacja natomiast odnosi się do zmniejszenia intensywności kolorów w obrazie, co skutkuje przekształceniem go w obraz czarno-biały lub w odcieniach szarości. Jest to technika używana do tworzenia stylowych efektów monochromatycznych lub do uzyskania klasycznego wyglądu fotografii. Zmiana jasności i kontrastu wpływa na ogólną luminancję obrazu oraz różnicę między najjaśniejszymi i najciemniejszymi fragmentami. Jest to przydatne w przypadku korekty zdjęć, aby wyeksponować detale lub poprawić czytelność obrazu. Typowym błędem jest mylenie tych technik z barwieniem, ponieważ każda z nich ma inne zastosowanie i wpływ na obraz. W przypadku przedstawionej transformacji kluczowe było użycie barwienia, które w sposób bezpośredni zmieniło kolory w obrazie na wybraną jednolitą barwę, co nie może być osiągnięte poprzez zastosowanie desaturacji, redukcji kolorów ani korekty jasności i kontrastu. Zrozumienie różnic między tymi technikami jest istotne dla efektywnego wykorzystania ich w pracy z grafiką komputerową, szczególnie w kontekście projektowania i edycji wizualnej, gdzie precyzja w doborze i modyfikacji kolorów jest kluczowa dla osiągnięcia zamierzonych efektów artystycznych i technicznych.

Pytanie 38

Jakie parametry trzeba przekazać do polecenia PHP, aby wprowadzić dane do bazy?

mysqli_query($zm1, $zm2);
A. identyfikator połączenia z bazą danych w $zm1 oraz zapytanie INSERT INTO w $zm2
B. NULL w $zm1, aby baza mogła zapisać tam kod błędu oraz zapytanie SELECT w $zm2
C. identyfikator połączenia z bazą danych w $zm1 oraz zapytanie SELECT w $zm2
D. id wiersza w $zm1 oraz zapytanie INSERT INTO w $zm2
Aby wstawić dane do bazy danych w PHP za pomocą funkcji mysqli_query musisz przekazać dwa kluczowe parametry. Pierwszym z nich jest identyfikator połączenia z bazą danych który odpowiada zmiennej $zm1. Jest to uchwyt do otwartej sesji z bazą danych który otrzymasz po ustanowieniu połączenia używając funkcji mysqli_connect. Drugim parametrem jest zapytanie SQL w tym przypadku zapytanie typu INSERT INTO które znajduje się w zmiennej $zm2. To zapytanie jest odpowiedzialne za dodanie nowych danych do określonej tabeli w bazie. Korzystanie z mysqli_query jest standardową praktyką w PHP przy pracy z bazami danych MySQL umożliwia interakcję z bazą poprzez wykonywanie różnorodnych zapytań SQL. Dobrą praktyką jest także zabezpieczenie swoich zapytań przed atakami SQL injection co można osiągnąć poprzez wcześniejsze przygotowanie i oczyszczenie danych lub zastosowanie bardziej zaawansowanych mechanizmów takich jak prepared statements dostępnych w bibliotekach rozszerzających możliwości pracy z bazą danych.

Pytanie 39

Który z zaprezentowanych kodów HTML sformatuje tekst zgodnie z podanym wzorem?
Uwaga: słowo "stacji" jest napisane większą czcionką niż pozostałe wyrazy w tej linijce)

Lokomotywa

Stoi na stacji lokomotywa ...

A. <p><small>Lokomotywa</small></p> <p>Stoi na <big>stacji<big> lokomotywa ...</p>
B. <h1>Lokomotywa</h1> <p>Stoi na <big>stacji lokomotywa ...</p>
C. <h1>Lokomotywa</h1> <p>Stoi na <big>stacji</big> lokomotywa ...</p>
D. <h1>Lokomotywa</h1> <p>Stoi na <big>stacji</big> lokomotywa ...</p>
W zaprezentowanych błędnych rozwiązaniach widać kilka typowych problemów z HTML-em: niepełne zamykanie znaczników, obejmowanie tagiem zbyt dużego fragmentu tekstu oraz mylenie roli nagłówków z innymi elementami formatowania. Jeżeli znacznik <big> obejmuje więcej niż powinien, na przykład całe wyrażenie „stacji lokomotywa ...”, to efekt wizualny nie odpowiada wzorcowi – powiększony zostaje nie tylko jeden wyraz, ale cała reszta, co psuje zamierzony wygląd. To jest częsty błąd: zaznaczenie zbyt szerokiego fragmentu tekstu zamiast dokładnie tego słowa, które ma być wyróżnione. Drugi typ problemu to brak zamknięcia znacznika, jak w przypadku użycia <big> bez odpowiadającego mu </big>. Z punktu widzenia specyfikacji HTML takie konstrukcje są niepoprawne, a choć współczesne przeglądarki próbują „naprawiać” kod, skutki bywają nieprzewidywalne: część tekstu może być niechcący powiększona albo cała struktura akapitu zostanie zinterpretowana inaczej. Do tego dochodzi mylenie semantyki: nagłówek <h1> służy do oznaczania tytułu sekcji czy strony, a nie do przypadkowego pomniejszania czy powiększania tekstu. Używanie <small> w miejscu, gdzie w treści powinien wystąpić nagłówek, zaburza hierarchię dokumentu i szkodzi dostępności, bo czytniki ekranu i roboty wyszukiwarek mocno opierają się na strukturze nagłówków. Moim zdaniem warto wyrobić sobie nawyk: najpierw poprawna, logiczna struktura (h1, p, itd.), a dopiero potem delikatne wyróżnianie fragmentów, dokładnie obejmując tagami tylko te słowa, które mają być zmienione. W nowoczesnej praktyce webowej zamiast takich prezentacyjnych tagów jak <big> czy <small> lepiej stosować <span> z klasą i przerzucić całą logikę wyglądu do CSS, ale fundament jest ten sam – precyzyjne zakresy znaczników i poprawnie zamknięte tagi.

Pytanie 40

Hermetyzacja to zasada programowania obiektowego, która mówi, że

A. klasy/obiekty mogą dzielić się funkcjonalnością
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
D. typy pól w klasach/obiektach mogą być zmieniane w sposób dynamiczny w zależności od przypisywanych danych
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.