Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 30 kwietnia 2026 14:38
  • Data zakończenia: 30 kwietnia 2026 14:50

Egzamin zdany!

Wynik: 28/40 punktów (70,0%)

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

W języku SQL, aby usunąć wszystkie rekordy z tabeli, nie eliminując jej samej, można skorzystać z polecenia

A. DROP
B. UPDATE
C. TRUNCATE
D. ALTER
Wybór polecenia DROP do usunięcia danych z tabeli prowadzi do całkowitego usunięcia zarówno tabeli, jak i jej definicji ze struktury bazy danych. DROP jest stosowane, gdy chcemy usunąć obiekt w całości, co może być nie tylko nieodwracalne, ale także niepożądane w sytuacjach, gdy potrzebujemy zachować strukturę tabeli dla przyszłych operacji. Użycie ALTER w kontekście usuwania danych jest również błędne, ponieważ to polecenie służy do modyfikacji struktury tabeli, takiej jak dodawanie lub usuwanie kolumn, a nie do zarządzania danymi w tabeli. Kolejnym błędem myślowym jest zastosowanie polecenia UPDATE, które jest używane do modyfikacji istniejących danych w tabeli, a nie do ich usuwania. Często mylnie przyjmuje się, że UPDATE można wykorzystać do 'czyszczenia' tabeli, co jednak nie jest zgodne z rzeczywistym działaniem tego polecenia. Poprawne podejście polega na zrozumieniu, że usuwanie danych w SQL wymaga zastosowania odpowiednich poleceń w zależności od celu – czy chcemy usunąć dane, czy całą tabelę. Dlatego kluczowe jest odpowiednie zrozumienie różnicy między tymi poleceniami oraz ich zastosowaniem w praktycznych sytuacjach, aby uniknąć nieodwracalnych błędów w zarządzaniu danymi.

Pytanie 2

Który z poniższych kodów XHTML sformatuje tekst zgodnie z podanym przykładem?

Ala ma kota
a kot ma Alę

A. <p>Ala ma <b>kota <br /> a <i>kot</i> ma Alę</p>
B. <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p>
C. <p>Ala ma <b>kota</b> <br/> a <b>kot</b> ma Alę</p>
D. <p>Ala ma <b>kota</i><br/> a <b>kot</b> ma Alę</p>
Odpowiedź <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p> jest poprawna, ponieważ zgodnie z zasadami XHTML, użycie znaczników <b> i <i> do formatowania tekstu jest odpowiednie; <b> stosowany jest do wyróżniania tekstu pogrubionego, a <i> do kursywy. W tej odpowiedzi zastosowano również poprawny znacznik <br/>, który jest samodzielnym znacznikiem i nie wymaga zamknięcia w parze. Zgodnie z dobrymi praktykami, kod XHTML powinien być poprawnie sformatowany, a każdy otwierający znacznik powinien mieć odpowiadający mu zamykający znacznik, chyba że jest to znacznik samodzielny, jak <br/>. Warto zaznaczyć, że XHTML wymaga również, aby wszystkie atrybuty były zapisane w formacie małych liter, co zostało spełnione w tej odpowiedzi. Przykład zastosowania tej wiedzy można znaleźć w tworzeniu stron internetowych, gdzie poprawne sformatowanie kodu HTML lub XHTML jest kluczowe dla prawidłowego wyświetlania treści w przeglądarkach.

Pytanie 3

W formularzu, wartości z pola input o typie number zostały przypisane do zmiennej a, a następnie przetworzone w skrypcie JavaScript w pokazany sposób. Jaki typ będzie miała zmienna x?

var x = parseInt(a);
A. zmiennoprzecinkowy
B. liczbowy, całkowity
C. napisowy
D. NaN
Funkcja parseInt() w JavaScript jest super przydatna, bo pozwala zamienić ciąg znaków na liczbę całkowitą. Jak masz zmienną a, która bierze dane z inputu typu number, to parseInt() łapie te liczby i wyrzuca wszystko, co nie jest cyfrą. Dzięki temu dostajesz liczby całkowite. Warto wiedzieć, że ta funkcja nie zaokrągla wyników, tylko obcina część dziesiętną. To świetna opcja, gdy potrzebujesz tylko całkowitych wartości. parseInt() dobrze działa w programowaniu – często wykorzystuje się go do walidacji i manipulacji liczbami. Z mojego doświadczenia, kiedy pracujesz z różnymi typami danych, musisz zadbać, żeby przekształcenia były na miejscu, bo to bardzo ważne dla aplikacji. Użycie parseInt() jest zgodne z zasadami ECMAScript, co oznacza, że działa w różnych środowiskach JavaScript. Przykładem dobrego zastosowania są aplikacje webowe, gdzie często potrzebujesz liczb całkowitych, na przykład w kalkulatorach czy formularzach z wyborem ilości produktów.

Pytanie 4

W wyniku działania pętli zapisanej w języku PHP zostanie wypisany ciąg liczb:

 $liczba = 10;
while ($liczba < 50) {
    echo "$liczba ";
    $liczba = $liczba + 5;
}
A. 0 5 10 15 20 25 30 35 40 45 50
B. 10 15 20 25 30 35 40 45 50
C. 0 5 10 15 20 25 30 35 40 45
D. 10 15 20 25 30 35 40 45
Dobrze zrozumiałeś działanie pętli while w języku PHP. Wybrana przez Ciebie sekwencja liczb (10, 15, 20, 25, 30, 35, 40, 45) jest poprawna. Pętla while, znajdująca się w skrypcie PHP, rozpoczyna działanie od wartości zmiennej, którą określono jako 10 i zwiększa ją o 5 za każdą iteracją, dopóki jej wartość jest mniejsza niż 50. Tak więc, ostatnią wydrukowaną liczbą jest 45, ponieważ w kolejnym kroku wartość zmiennej wynosiłaby już 50, co jest wartością większą od maksymalnej zdefiniowanej w warunku pętli. Zrozumienie działania pętli to klucz do efektywnego programowania, umożliwiającego tworzenie skomplikowanych algorytmów. Dobre praktyki zalecają, aby zawsze dokładnie analizować i rozumieć, jak daną pętle będą interpretowane przez interpreter języka.

Pytanie 5

W poniższym zapisie CSS kolor zielony zostanie zastosowany do

h2
{
    background-color: green;
}
A. czcionki wszystkich nagłówków na stronie
B. czcionki nagłówka drugiego poziomu
C. tła całej witryny
D. tła tekstu nagłówka drugiego poziomu
Zapis CSS h2 { background-color: green; } oznacza, że każdemu elementowi nagłówka drugiego stopnia przypisany zostanie zielony kolor tła. W CSS selektor h2 odnosi się bezpośrednio do wszystkich elementów HTML o tagu <h2>. Właściwość background-color służy do definiowania koloru tła elementu, nie wpływając na kolor czcionki samego nagłówka. W praktyce takie podejście pozwala na wyraźne wyróżnienie nagłówków na tle innych elementów strony, co może być kluczowe dla poprawy czytelności. Przyjęte w kodzie standardy zapewniają zgodność z najnowszymi wytycznymi W3C, pozwalając na efektywne zarządzanie stylami w projekcie. Wiedza o tym jak stylizować nagłówki za pomocą background-color jest fundamentalna dla każdego web developera, umożliwiając tworzenie atrakcyjnych i czytelnych interfejsów użytkownika w sposób zgodny z zasadami responsywnego projektowania. Ponadto, stosowanie takich stylizacji wspiera semantyczne podejście do strukturyzacji treści, co jest ważne dla optymalizacji SEO.

Pytanie 6

Fragment kwerendy SQL zaprezentowany w ramce ma na celu uzyskanie

SELECT COUNT(wartosc) FROM ...
A. liczbę kolumn.
B. średnią wartość w kolumnie wartosc.
C. sumę wartości w kolumnie wartosc.
D. liczbę wierszy.
Instrukcja COUNT w kwerendzie SQL służy do zliczania liczby wierszy w tabeli, które spełniają określone kryteria. Wyrażenie SELECT COUNT(wartosc) FROM ... zlicza wiersze, które mają niepustą wartość w kolumnie wartosc. Funkcja COUNT jest jedną z funkcji agregujących w SQL, które pozwalają na wykonywanie operacji na zestawach danych. Zastosowanie tej funkcji jest szczególnie istotne w sytuacjach, gdy potrzebujemy szybko uzyskać informację o liczebności danych, co jest kluczowe w analizie danych oraz raportowaniu. Warto zauważyć, że COUNT(*) policzyłoby wszystkie wiersze, niezależnie od tego, czy zawierają wartości NULL, natomiast COUNT(kolumna) ignoruje wiersze z wartościami NULL w podanej kolumnie. To rozróżnienie jest kluczowe w optymalizacji zapytań oraz w zapewnieniu dokładności wyników. W praktyce biznesowej, zliczanie wierszy może być wykorzystywane do śledzenia liczby zamówień, ilości produktów w magazynie oraz innych wskaźników operacyjnych, co sprawia, że funkcja COUNT jest podstawowym narzędziem każdego analityka danych.

Pytanie 7

Wskaż przycisk sformatowany przedstawionym stylem CSS.

#przycisk {
    background-color: white;
    padding: 10px;
    border-width: 2px;
    border-bottom-style: dashed;
}



Przycisk 1

Przycisk 2

Przycisk 3

Przycisk 4
A. Przycisk 1
B. Przycisk 4
C. Przycisk 2
D. Przycisk 3
Przycisk 2 jest jedynym, który spełnia wszystkie warunki określone w podanym stylu CSS. Białe tło, odstęp wewnętrzny 10 pikseli, szerokość obramowania 2 piksele oraz przerywana dolna krawędź obramowania są elementami, które zostały ustawione w stylach CSS dla przycisku 2. Ta wiedza jest niezwykle przydatna przy projektowaniu i tworzeniu stron internetowych, gdzie kształtowanie elementów interaktywnych, takich jak przyciski, jest często kluczowym elementem doświadczenia użytkownika. Pamiętaj, że CSS pozwala na dużą swobodę w dostosowywaniu wyglądu poszczególnych elementów strony, a zrozumienie, jak działa selekcja elementów i stylizacja, to fundamenty tworzenia atrakcyjnych i funkcjonalnych projektów webowych. Zrozumienie, jakie style zostały zastosowane do danego elementu, pozwala na szybkie i efektywne dostosowywanie strony do potrzeb klienta.

Pytanie 8

Jak określa się program, który wykonuje polecenia zawarte w kodzie źródłowym tworzonego oprogramowania bez wcześniejszego generowania rezultatu finalnego?

A. Interpreter
B. Konwerter języka
C. Kompilator
D. Konwerter kodu
Kompilator to narzędzie, które tłumaczy kod źródłowy na kod maszynowy i tworzy plik wynikowy, który potem uruchamia system operacyjny. Często ludzie mylą to z interpreterem, ale różnica jest taka, że kompilacja potrzebuje przetworzenia całego programu zanim go uruchomimy. Dlatego, jak zmienisz coś w kodzie, to musisz to znowu skompilować, co może zabrać czas. Konwerter kodu i konwerter języka też są narzędziami, ale ich zadania są trochę inne. Konwerter kodu zmienia kod z jednego języka na inny, co czasami się przydaje przy przenoszeniu projektów, ale nie wykonuje kodu na żywo. Podobnie konwertery języka tłumaczą składnię, ale też nie działają jak narzędzia wykonawcze. Często ludzie myślą, że te wszystkie narzędzia robią to samo, a to może wprowadzać zamieszanie w pracy nad projektami.

Pytanie 9

Testy aplikacji webowej, których celem jest ocena wydajności aplikacji oraz bazy danych, a także architektury serwera i konfiguracji, określane są mianem testów

A. bezpieczeństwa
B. użyteczności
C. kompatybilności
D. funkcjonalności
Testy bezpieczeństwa koncentrują się na ocenie, jak dobrze aplikacja chroni dane użytkowników oraz jak reaguje na próby nieautoryzowanego dostępu. W tym kontekście testy te mają na celu identyfikację luk bezpieczeństwa, które mogłyby być wykorzystane przez atakujących. Testy te nie koncentrują się na aspektach skalowalności ani architektury serwera, a ich celem jest zapewnienie, że aplikacja jest odporna na zagrożenia. Z kolei testy funkcjonalności mają na celu weryfikację, czy wszystkie elementy aplikacji działają zgodnie z wymaganiami. Obejmują one testowanie poszczególnych funkcji i ich interakcji, ale nie badają wydajności systemu w warunkach dużego obciążenia ani nie analizują architektury bazy danych. Funkcjonalność aplikacji może być poprawna, ale nieprzystosowana do obsługi wzrastającej liczby użytkowników, co jest istotne w kontekście skalowalności. Testy użyteczności oceniają, jak łatwo użytkownicy mogą korzystać z aplikacji, koncentrując się na interfejsie, ergonomii oraz ogólnym doświadczeniu użytkownika. Choć te aspekty są niezwykle ważne, nie mają one bezpośredniego związku z testowaniem architektury serwera czy skalowalności systemu, co jest kluczowe dla odpowiedzi na postawione pytanie.

Pytanie 10

Który z wymienionych formatów wideo nie jest wspierany przez standard HTML5?

A. D. WebM
B. B. Ogg
C. A. AVI
D. C. MP4
Odpowiedź A. AVI jest trafna, bo format AVI (Audio Video Interleave) nie jest wspierany przez HTML5. W HTML5 mamy trzy główne formaty wideo, które przeglądarki akceptują: Ogg, MP4 i WebM. AVI to starszy format od Microsoftu, który nie spełnia dzisiejszych standardów. Warto używać formatów, które pasują do HTML5, takich jak MP4 (z kodekiem H.264) czy WebM (z kodekiem VP8), bo to zapewnia lepszą wydajność i szeroką kompatybilność z różnymi urządzeniami i przeglądarkami. Na przykład, kiedy osadzamy filmy na stronach, ważne jest, żeby wszystko działało płynnie na różnych platformach, bez potrzeby dodatkowych wtyczek. Dodatkowo, korzystanie z tych formatów wspiera SEO i poprawia wrażenia użytkowników, co w dzisiejszym cyfrowym świecie jest naprawdę istotne.

Pytanie 11

W języku PHP funkcja trim służy do

A. podawania długości tekstu
B. porównywania dwóch tekstów i wyświetlania ich wspólnej części
C. redukcji tekstu o liczbę znaków określoną w parametrze
D. usuwania białych znaków lub innych określonych w parametrze znaków z obu końców tekstu
Funkcja <i>trim</i> w języku PHP ma na celu usuwanie białych znaków oraz innych znaków, które są określone w jej parametrach, z obu końców napisu. To niezwykle przydatne narzędzie w programowaniu, szczególnie podczas przetwarzania danych wejściowych, gdzie użytkownicy mogą nieświadomie dodawać zbędne spacje, tabulatory lub nowe linie. Na przykład, gdy przetwarzamy dane formularzy, może się zdarzyć, że użytkownik wprowadzi swoje imię z dodatkowymi spacjami na początku lub końcu. Użycie <i>trim</i> pozwala na zapewnienie, że dane będą miały odpowiednią formę przed dalszym przetwarzaniem, co jest kluczowe w kontekście walidacji i normalizacji danych. Dodatkowo, funkcja ta wspiera podawanie własnych znaków do usunięcia, co czyni ją bardzo elastycznym narzędziem w codziennym programowaniu. Używanie <i>trim</i> jako standardowej praktyki przy obróbce danych tekstowych jest rekomendowane przez wielu ekspertów, ponieważ zwiększa to jakość i spójność przetwarzanych informacji.

Pytanie 12

W JavaScript utworzono obiekt. Jak zmienić wartość właściwości x tego obiektu w dalszej części kodu?

var obiekt1 = {
  x: 0,
  y: 0,
  wsp: function() { … }
}
A. obiekt1.x = …
B. wsp.x = …
C. x = …
D. obiekt1::x = …
JavaScript to fajny język, który pozwala na pracę z obiektami, a właściwie to obiekty są jego podstawą. Chodzi o to, że można w nich przechowywać różne dane w formie par klucz-wartość. Gdy chcesz zmienić jakąś właściwość obiektu, używasz notacji kropkowej. To z pozoru proste, ale bardzo praktyczne. Po prostu wpisujesz nazwę obiektu, kropkę i nazwę właściwości, którą chcesz edytować. Na przykład mamy obiekt o nazwie obiekt1 i właściwość x. Żeby zmienić wartość x, piszesz obiekt1.x, a potem przypisujesz nową wartość. To wszystko jest zgodne z zasadami ECMAScript, które mówią, jak powinno się pracować z obiektami w JavaScript. Takie podejście jest nie tylko jasne, ale również umożliwia szybkie wskazanie, co dokładnie zmieniasz. W praktyce fajnie jest pokazać to na przykładzie, jak np. chcesz zaktualizować imię użytkownika w obiekcie, to robisz coś takiego: user.name = 'Jan'.

Pytanie 13

Instrukcję for można zastąpić inną instrukcją

A. case
B. switch
C. while
D. continue
Wybór odpowiedzi, którymi są 'case', 'switch' oraz 'continue', wskazuje na pewne nieporozumienia dotyczące funkcji oraz zastosowań tych konstrukcji w programowaniu. Instrukcje 'case' i 'switch' są wykorzystywane do realizacji struktury warunkowej, a nie do iteracji. Służą one do wykonania określonego bloku kodu w zależności od wartości zmiennej, co jest zupełnie innym zastosowaniem niż pętle. Programista, który myli te konstrukcje, może napotkać problemy z logicznym rozumieniem przepływu programu. Z kolei instrukcja 'continue' jest stosowana w kontekście pętli i pozwala na pominięcie bieżącej iteracji pętli, co również jest innym zastosowaniem niż podstawowe wykonywanie kodu w pętli. Dobrą praktyką w programowaniu jest rozróżnianie tych różnych typów instrukcji i stosowanie ich zgodnie z ich przeznaczeniem. Niezrozumienie różnicy między pętlami a instrukcjami warunkowymi może prowadzić do błędów w kodzie, zmniejszenia czytelności oraz trudności w jego późniejszej modyfikacji. W kontekście pętli, 'for' i 'while' są bardziej odpowiednie do realizacji powtarzających się operacji, podczas gdy 'switch' i 'case' powinny być stosowane, gdy konieczne jest wykonywanie różnych działań w zależności od wartości zmiennej.

Pytanie 14

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

A. Progowanie.
B. Barwienie.
C. Krzywe.
D. Inwersja.
Wiele osób myli w GIMP-ie różne narzędzia z menu Kolory, bo na pierwszy rzut oka kilka z nich „mocno zmienia” obraz. Jednak efekt pokazany na filmie, gdzie obraz staje się dwuwartościowy (czarno-biały, bez półtonów), jest typowym działaniem funkcji Progowanie. Kluczowe jest tu zrozumienie, czym różnią się od siebie dostępne operacje. Krzywe służą do zaawansowanej korekcji tonalnej i kontrastu. Można nimi mocno przyciemnić lub rozjaśnić wybrane zakresy jasności, robić tzw. efekt kontrastu „S”, korygować prześwietlenia itd. Ale nawet przy bardzo agresywnych ustawieniach krzywych obraz nadal zawiera półtony – pojawiają się stopniowe przejścia między odcieniami, a nie ostre odcięcie na zasadzie czarne/białe. To świetne narzędzie do retuszu zdjęć, ale nie do uzyskania efektu progowania. Inwersja (Kolory → Inwersja) po prostu odwraca wartości kolorów lub jasności: jasne staje się ciemne, czerwony zmienia się na cyjan, zielony na magentę itd. To jak negatyw fotograficzny. Struktura szczegółów pozostaje identyczna, zmienia się tylko ich „biegun”. Nie pojawia się żadne odcięcie progowe, więc obraz wciąż ma pełne spektrum odcieni. W praktyce inwersja przydaje się np. przy przygotowaniu masek lub pracy z materiałami skanowanymi, ale nie generuje typowego, „plakatowego” efektu czerni i bieli jak progowanie. Barwienie z kolei (Kolory → Barwienie) służy do nadania całemu obrazowi jednolitego odcienia, zwykle po wcześniejszym sprowadzeniu go do skali szarości. Można w ten sposób uzyskać np. sepię, niebieski ton nocny albo dowolny kolorystyczny „filtr”. Jasność i kontrast lokalny pozostają bardzo podobne, zmienia się dominująca barwa. To zupełnie inna kategoria operacji niż progowanie, które pracuje na poziomie progów jasności, a nie na poziomie koloru. Typowym błędem jest patrzenie tylko na to, że „obraz bardzo się zmienił” i przypisywanie tego narzędziom takim jak krzywe czy inwersja. W pracy z grafiką warto zawsze zadać sobie pytanie: czy efekt polega na zmianie rozkładu jasności, na odwróceniu kolorów, czy na twardym podziale na dwa poziomy? Jeśli widzisz brak półtonów i ostre granice, praktycznie zawsze chodzi o progowanie, które zostało wskazane jako poprawna funkcja.

Pytanie 15

Jakie formaty wideo są obsługiwane przez standard HTML5?

A. MP4, Ogg, WebM
B. Ogg, AVI, MPEG
C. MP4, AVI
D. Ogg, QuickTime
Odpowiedź MP4, Ogg, WebM jest prawidłowa, ponieważ wszystkie te formaty są zgodne ze standardem HTML5 i są powszechnie stosowane w aplikacjach internetowych. MP4, z wykorzystaniem kodeka H.264, zapewnia wysoką jakość obrazu i dźwięku przy stosunkowo małych rozmiarach plików, co czyni go jednym z najpopularniejszych formatów w sieci. Ogg, szczególnie w wersji Vorbis dla audio i Theora dla wideo, jest otwartym formatem, co oznacza, że nie wymaga licencji na użycie, co sprzyja jego zastosowaniu w projektach, które preferują otwarte technologie. WebM, stworzony przez Google, również korzysta z otwartych kodeków, takich jak VP8/VP9 dla wideo oraz Vorbis/Opus dla audio, co czyni go idealnym do zastosowań w środowisku internetowym. W praktyce, korzystając z tych formatów, deweloperzy mogą zapewnić szeroką kompatybilność z różnymi przeglądarkami oraz urządzeniami, co jest kluczowe w kontekście dostępności treści multimedialnych dla użytkowników. Warto również zwrócić uwagę na dobór formatów w kontekście SEO oraz szybkości ładowania stron, gdyż odpowiednia konfiguracja może wpływać na wyniki w wyszukiwarkach oraz doświadczenie użytkownika.

Pytanie 16

Dla strony internetowej stworzono styl, który będzie stosowany tylko do wybranych znaczników, takich jak niektóre nagłówki oraz kilka akapitów. W tej sytuacji, aby przypisać styl do konkretnych znaczników, najodpowiedniejsze będzie użycie

Ilustracja do pytania
A. pseudoklasy
B. selektora akapitu
C. klasy
D. identyfikatora
Użycie klasy w CSS jest najlepszym rozwiązaniem, gdy chcemy zastosować ten sam styl do wielu elementów HTML, ale nie do wszystkich. Klasy w CSS są definiowane za pomocą kropki przed nazwą klasy, np. .nazwa-klasy, i mogą być przypisane do dowolnego elementu HTML za pomocą atrybutu class. Dzięki temu możemy elastycznie i efektywnie zarządzać stylami na stronie internetowej. Klasy są bardzo przydatne w dużych projektach, gdzie powtarzalność i spójność stylów są kluczowe. Pozwalają także na ponowne wykorzystanie tych samych stylów w różnych miejscach projektu bez konieczności kopiowania kodu CSS. Użycie klas zwiększa czytelność i organizację kodu, co jest zgodne z najlepszymi praktykami programowania. Stosowanie klas jest także zalecane w kontekście frameworków CSS, takich jak Bootstrap, które intensywnie wykorzystują klasy do definiowania komponentów i układów. Przykład zastosowania klasy: .align-right { text-align: right; } można przypisać do różnych nagłówków czy akapitów, które mają być wyrównane do prawej.

Pytanie 17

Rodzaj programowania, w którym zestaw poleceń (sekwencja instrukcji) przekazywanych komputerowi postrzega się jako program, określa się mianem programowania

A. logicznego
B. stanowego
C. funkcyjnego
D. imperatywnego
Programowanie imperatywne to paradygmat, w którym programista definiuje sekwencję instrukcji, które komputer ma wykonać, aby osiągnąć określony cel. Jest to najpopularniejszy i najczęściej stosowany sposób programowania, który koncentruje się na tym, jak osiągnąć pożądany rezultat, a nie tylko na tym, co ma być osiągnięte. W programowaniu imperatywnym zazwyczaj używa się zmiennych, struktur kontrolnych takich jak pętle i instrukcje warunkowe, co pozwala na kontrolę przepływu wykonania programu. Przykłady języków programowania, które implementują ten paradygmat, to C, C++, Java oraz Python. Zastosowanie programowania imperatywnego w praktyce jest szerokie: od tworzenia aplikacji desktopowych, przez gry, aż po systemy operacyjne. Standardy takie jak ISO C określają wytyczne dla programowania w języku C, co dodatkowo podkreśla znaczenie tego paradygmatu w branży programistycznej. Zrozumienie programowania imperatywnego stanowi fundament dla dalszej nauki bardziej zaawansowanych technik i paradygmatów programowania.

Pytanie 18

Po wykonaniu instrukcji języka JavaScript  x = Math.ceil(2.4); wartość zmiennej x będzie wynosić

A. 3
B. 8
C. 2
D. 4
W tym przykładzie kluczowe jest zrozumienie, co dokładnie robi funkcja Math.ceil() w JavaScript. Ta funkcja zawsze zaokrągla liczbę w górę do najbliższej liczby całkowitej, i to niezależnie od tego, jak mała jest część ułamkowa. Dla wartości 2.4 najbliższa liczba całkowita „w górę” to 3, więc po wykonaniu instrukcji x = Math.ceil(2.4); zmienna x przyjmie wartość 3. Nie interesuje nas tu klasyczne zaokrąglanie matematyczne do „najbliższej” liczby, tylko zawsze w stronę dodatniej nieskończoności. W standardzie ECMAScript Math.ceil() jest jedną z podstawowych funkcji do pracy z liczbami, obok Math.floor() (zaokrąglenie w dół) i Math.round() (zaokrąglenie do najbliższej liczby całkowitej). Dla porównania: Math.floor(2.4) da 2, Math.round(2.4) też da 2, a tylko Math.ceil(2.4) zwróci 3. W praktyce webowej takie funkcje są często używane np. przy dzieleniu elementów na strony (paginacja), liczeniu ilości stron w wynikach wyszukiwania, obliczaniu liczby wierszy w siatce (grid), czy przy przeliczaniu miejsc w koszyku, kiedy musisz zawsze „doliczyć” pełną jednostkę. Moim zdaniem warto od razu wyrobić sobie nawyk, żeby przy liczbach zmiennoprzecinkowych w JavaScript pamiętać o różnicach między ceil, floor i round, bo to są podstawowe narzędzia przy każdym kalkulatorze, module cenowym, przeliczaniu czasu trwania, dzieleniu zadań na porcje itd. Dobra praktyka jest też taka, żeby zawsze jasno nazywać zmienne, np. totalPages = Math.ceil(itemsCount / itemsPerPage); – od razu widać, że chodzi o zaokrąglenie w górę. Podsumowując: poprawna odpowiedź to 3, bo Math.ceil() zawsze przesuwa wynik do najbliższej większej lub równej liczby całkowitej. Dla 2.4 jest to właśnie 3.

Pytanie 19

Aby uruchomić kod JavaScript w przeglądarce, potrzebne jest

A. interpretowanie
B. debugowanie
C. kompilowanie
D. przetwarzanie na kod maszynowy
Wykonywanie kodu JavaScript wymaga zrozumienia różnych procesów, które mogą mylnie sugerować, że debugowanie, zamiana na kod maszynowy czy kompilowanie są kluczowe w tym kontekście. Debugowanie to proces identyfikacji i naprawy błędów w kodzie, który odbywa się już po interpretacji kodu. Kiedy kod jest uruchamiany, programista może używać narzędzi debugujących dostępnych w przeglądarkach, aby analizować działanie skryptu, co jednak nie jest wymogiem do jego wykonania. Zamiana na kod maszynowy oraz kompilowanie dotyczą języków programowania, które nie są interpretowane, a ich kod źródłowy jest przekształcany do postaci zrozumiałej dla procesora przed uruchomieniem. Przykładem mogą być języki takie jak C++ czy Java, które wymagają złożonego procesu kompilacji. W przypadku JavaScript, silnik interpretuje kod w czasie rzeczywistym, co pozwala na natychmiastowe wykonanie skryptów bez wcześniejszego kompilowania, co jest dużą zaletą w kontekście tworzenia aplikacji webowych. Pojęcie kompilacji może prowadzić do nieporozumień, ponieważ niektóre nowoczesne narzędzia, takie jak TypeScript, mogą wymagać kompilacji, ale to nie zmienia faktu, że czysty JavaScript jest interpretowany. Dlatego kluczowym elementem pracy z JavaScript w przeglądarkach jest zrozumienie jego interpretacyjnej natury oraz umiejętność korzystania z narzędzi dostępnych dla programistów.

Pytanie 20

W aplikacjach webowych tablice asocjacyjne to struktury, w których

A. posiadają co najmniej dwa wymiary
B. elementy tablicy zawsze są indeksowane od 0
C. w każdej komórce tablicy znajduje się inna tablica
D. indeks ma postać łańcucha znakowego
W kontekście tablic asocjacyjnych, nie jest prawdą, że muszą one mieć przynajmniej dwa wymiary. Tablice asocjacyjne są zazwyczaj jednowymiarowe, gdzie każdy klucz odnosi się do jednej wartości. Możliwe jest oczywiście zagnieżdżanie tablic asocjacyjnych, tworząc struktury wielowymiarowe, ale sama definicja tablicy asocjacyjnej nie wymaga tego. Dodatkowo, stwierdzenie, że elementy tablicy są zawsze indeksowane od 0, odnosi się głównie do tradycyjnych tablic indeksowanych liczbami całkowitymi, gdzie pierwszy element ma indeks 0. W przypadku tablic asocjacyjnych, klucze mogą być dowolnymi łańcuchami tekstowymi, co oznacza, że nie ma jednolitego sposobu indeksowania. Ostatnia niepoprawna odpowiedź sugeruje, że każda komórka tablicy przechowuje inną tablicę, co jest mylące. W rzeczywistości, w tablicach asocjacyjnych każda komórka może przechowywać dowolny typ danych, w tym liczby, łańcuchy tekstowe, obiekty czy inne tablice. Ostatecznie, w tablicach asocjacyjnych klucze są używane do dostępu do wartości, a nie do indeksowania jak w tradycyjnych tablicach.

Pytanie 21

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

Ilustracja do pytania
A. numerowaną.
B. skrótów.
C. wypunktowaną.
D. odnośników.
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 22

Jaką metodę zastosowano do dodania arkusza stylów do dokumentu HTML w pokazanym kodzie?

Ilustracja do pytania
A. Styl wewnętrzny
B. Styl alternatywny, zewnętrzny
C. Styl zewnętrzny
D. Styl wpisany, lokalny
Styl wpisany lokalny w HTML to metoda definiowania stylów CSS bezpośrednio wewnątrz elementów HTML za pomocą atrybutu style. Jest to często stosowane, gdy chcemy szybko zdefiniować unikalne style dla pojedynczego elementu bez tworzenia lub edytowania zewnętrznego pliku CSS. Przykładowo poniższy kod HTML pokazuje jak możemy zmienić kolor tekstu w paragrafie na czerwony używając właśnie stylu pisanego zwanego również inline. Choć jest to proste i szybkie rozwiązanie nie jest zalecane dla większych projektów ze względu na brak możliwości ponownego użycia kodu i problematyczną jego konserwację. W praktyce najlepszym podejściem jest stosowanie stylów zewnętrznych które umożliwiają centralne zarządzanie wyglądem całego dokumentu. Standardy HTML i CSS promują modularność i oddzielenie warstwy prezentacyjnej od struktury co jest bardziej efektywne i zgodne z zasadami projektowania responsywnych aplikacji internetowych. Styl wpisany może być jednak przydatny w testach szybkich prototypach lub sytuacjach gdy zmiany muszą być wprowadzone lokalnie i mają one charakter jednorazowy. Dla bardziej złożonych aplikacji zaleca się jednak stosowanie bardziej zorganizowanych metod stylizacji takich jak style zewnętrzne.

Pytanie 23

Jakie wartości zostaną wypisane po wykonaniu poniższego skryptu?

var x = 1;
var y;
/*0*/ ++y;
/*1*/ document.write(++x);
/*2*/ document.write(" ");
/*3*/ document.write(x--);
/*4*/ document.write(" ");
/*5*/ document.write(x);
A. 1 2 2
B. 2 2 1
C. 2 1 1
D. 1 2 1
Analizując wyniki działania skryptu, warto zwrócić uwagę na różnice wynikające z użycia operatorów preinkrementacji i postdekrementacji. Wiele osób mylnie interpretuje, jak te operatory wpływają na zmienną w danej kolejności operacji. Preinkrementacja (++x) zwiększa wartość zmiennej o 1 przed jej użyciem w wyrażeniu, co oznacza, że każda operacja wykonywana później będzie bazować na już zwiększonej wartości. Z kolei postdekrementacja (x--) najpierw używa bieżącej wartości zmiennej, a dopiero potem ją zmniejsza, co może prowadzić do błędnych założeń, jeśli nie jest się świadomym tej różnicy. Częstym błędem jest założenie, że obie operacje działają jednocześnie, co nie jest prawdą. Różnica ta jest kluczowa, ponieważ ma znaczący wpływ na kolejność wykonania operacji i rezultat końcowy. Przy programowaniu w JavaScript należy zatem nie tylko znać różnice między tymi operatorami, ale także dokładnie rozumieć, jak wpływają one na przepływ sterowania w kodzie. Znajomość tego mechanizmu pozwala unikać typowych błędów, które prowadzą do nieoczekiwanych wyników i problemów z debugowaniem kodu. Jest to nieodzowna wiedza w inżynierii oprogramowania, szczególnie przy optymalizacji i pisaniu efektywnego kodu.

Pytanie 24

Debugger to narzędzie wykorzystywane do

A. analizy właściwości programu
B. optymalizacji pamięci zajmowanej przez aplikację
C. oceny szybkości działania programu
D. identyfikacji błędów w kodzie programu
Debugger to narzędzie, które odgrywa kluczową rolę w procesie tworzenia oprogramowania, umożliwiając programistom identyfikację i naprawę błędów w kodzie. Główną funkcją debuggera jest pozwolenie na analizę działania programu na poziomie linii kodu, co umożliwia użytkownikowi śledzenie wykonania programu, monitorowanie wartości zmiennych oraz sprawdzanie logiki warunkowej. Użycie debuggera pozwala na wykrywanie błędów w czasie rzeczywistym, co jest niezwykle istotne, zwłaszcza w przypadku aplikacji, które muszą działać na różnych platformach i z różnymi danymi wejściowymi. Przykładem może być programowanie w języku Python, gdzie debugger umożliwia krokowe przechodzenie przez kod, co pomaga zrozumieć proces wykonania i zidentyfikować miejsca, gdzie występują nieprawidłowości. Dobrym zwyczajem jest korzystanie z debuggera na wczesnych etapach tworzenia oprogramowania, aby zminimalizować późniejsze problemy w fazie testowania i wdrażania.

Pytanie 25

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

A. łącznie warstw
B. kadrowanie
C. zmiana rozmiaru
D. odwrócenie obrazu
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 26

W relacyjnych bazach danych, gdy dwie tabele są ze sobą powiązane przez ich klucze główne, mamy do czynienia z relacją

A. 1 .. 1
B. 1 .. n
C. n .. n
D. n .. 1
Odpowiedź 1 .. 1 jest prawidłowa, ponieważ opisuje relację, w której każdemu rekordowi w jednej tabeli odpowiada dokładnie jeden rekord w drugiej tabeli. Taka relacja jest często wykorzystywana w systemach baz danych, gdzie klucz główny jednej tabeli jest jednocześnie kluczem obcym w drugiej tabeli. Przykładem może być relacja między tabelą 'Użytkownicy' a tabelą 'Profile', gdzie każdy użytkownik ma dokładnie jeden profil, a każdy profil jest przypisany do jednego użytkownika. W kontekście standardów baz danych, relacje 1 .. 1 pomagają w eliminacji redundancji danych i zapewniają integralność danych. Dobrą praktyką jest stosowanie takich relacji w sytuacjach, gdy dane mogą być logicznie podzielone, ale nie powinny być powielane. Inne podejścia, jak relacje 1 .. n czy n .. n, mogą prowadzić do większej złożoności w modelowaniu danych oraz potencjalnych problemów z integralnością danych, dlatego stosowanie relacji 1 .. 1 jest korzystne dla przejrzystości i efektywności struktury bazy danych.

Pytanie 27

Jaką cechę posiada format PNG?

A. zapis grafiki wektorowej
B. brak wsparcia dla kanału alfa
C. wsparcie dla animacji
D. bezstratna kompresja
Wybór odpowiedzi związanych z obsługą animacji jest mylny, ponieważ format PNG nie obsługuje animacji w standardowy sposób. Choć istnieje rozszerzenie o nazwie APNG (Animated PNG), które pozwala na tworzenie prostych animacji, nie jest to powszechnie akceptowany standard, co czyni PNG głównie formatem statycznym. W kontekście braku obsługi kanału alfa, warto zauważyć, że format PNG został zaprojektowany z myślą o pełnej obsłudze przezroczystości, co jest kluczowe dla wielu zastosowań graficznych. Z kolei sugerowanie, że PNG reprezentuje grafikę wektorową, jest całkowicie błędne, ponieważ ten format jest przeznaczony do obrazów rastrowych, czyli opartych na pikselach, a nie wektorowych, które są definiowane matematycznie. Typowe błędy myślowe prowadzące do takich wniosków często wynikają z niepełnej znajomości standardów formatów graficznych lub mylenia różnych typów grafik. W branży graficznej ważne jest zrozumienie właściwości formatów używanych do różnych zastosowań, a wybór niewłaściwego formatu może prowadzić do utraty jakości lub funkcjonalności obrazów.

Pytanie 28

Co robi funkcja przedstawiona w kodzie JavaScript?

function tekst() {
var h = location.hostname;
document.getElementById("info").innerHTML = h;
}
A. pokazać na przycisku lokalizację hosta, a po jego naciśnięciu umożliwić przejście do określonej lokalizacji
B. wyświetlić w elemencie o id = "info" nazwę hosta, z którego pochodzi wyświetlona strona
C. umożliwić przejście do wskazanej lokalizacji hosta
D. wyświetlić w elemencie o id = "info" adres hosta wskazany przez pierwszy odnośnik
Nieprawidłowe odpowiedzi wynikają z błędnego zrozumienia działania obiektu Location oraz manipulacji DOM w JavaScript. Jedna z odpowiedzi sugeruje, że funkcja umożliwia przejście do wskazanej lokalizacji hosta, co nie jest zgodne z działaniem location.hostname. Metoda ta jedynie pobiera nazwę hosta, nie wykonuje żadnych operacji nawigacyjnych. Innym błędnym założeniem jest twierdzenie, że funkcja wyświetla adres hosta wskazany pierwszym odnośnikiem. W rzeczywistości, location.hostname zwraca nazwę hosta aktualnej strony, a nie żadnego odnośnika w dokumencie. Kolejna błędna odpowiedź dotyczy umieszczenia tej nazwy na przycisku. Kod wyraźnie pokazuje, że manipulacja dotyczy elementu o id info, a nie przycisku, nie ma więc nic wspólnego z interakcją użytkownika poprzez kliknięcie. Takie nieporozumienia mogą wynikać z niedostatecznej znajomości specyfikacji obiektu Location oraz technik manipulacji DOM w JavaScript, co jest kluczowe dla efektywnego tworzenia dynamicznych i responsywnych stron internetowych. Poprawne zrozumienie pozwala tworzyć aplikacje, które są zarówno funkcjonalne, jak i bezpieczne dla użytkowników, co jest istotne w kontekście współczesnych standardów webowych.

Pytanie 29

Wykonanie zapytania SQL: DELETE FROM mieszkania WHERE status=1; spowoduje usunięcie

A. tabel, w których pole status ma wartość 1, z bazy danych mieszkania
B. pola o nazwie status w tabeli mieszkania
C. tabeli mieszkania w bazie danych
D. rekordów, gdzie pole status ma wartość 1, z tabeli mieszkania
Użycie kwerendy SQL: DELETE FROM mieszkania WHERE status=1; jest poprawne, ponieważ polecenie DELETE ma na celu usunięcie rekordów z określonej tabeli, w tym przypadku z tabeli mieszkania. Klauzula WHERE filtruje te rekordy, które mają wartość pola status równą 1. To podejście jest zgodne z zasadami zarządzania danymi, które sugerują, że operacje usuwania powinny być przeprowadzane z użyciem odpowiednich filtrów, aby zminimalizować ryzyko przypadkowego usunięcia niezamierzonych danych. Na przykład, jeśli w tabeli mieszkania mamy 1000 rekordów, a tylko 150 z nich ma status równy 1, to po wykonaniu tej kwerendy usunięte zostaną dokładnie te 150 rekordów, a pozostałe pozostaną nienaruszone. Dobrą praktyką jest również tworzenie kopii zapasowych danych przed wykonaniem operacji usuwania, aby móc je przywrócić w razie potrzeby. Kwerendy DELETE są niezwykle przydatne w zarządzaniu bazami danych, zwłaszcza w sytuacjach, gdzie wymagana jest aktualizacja danych lub usunięcie nieaktualnych informacji.

Pytanie 30

Ile razy zostanie wykonana pętla przedstawiona w języku PHP, zakładając, że zmienna kontrolna nie jest zmieniana w jej wnętrzu?
for($i = 0; $i <= 10; $i++) { ...... }

A. 10 razy
B. 0 razy
C. Nieskończoność
D. 11 razy
Pętla for w języku PHP, jak w przedstawionym przykładzie, ma na celu wykonanie bloku kodu wielokrotnie, w zależności od stanu zmiennej sterującej. W tym przypadku, początkowa wartość zmiennej $i wynosi 0, a warunek kontynuacji pętli to $i <= 10. Oznacza to, że pętla będzie kontynuować swoje działanie, dopóki zmienna $i będzie mniejsza lub równa 10. W każdym przebiegu pętli wartość $i jest inkrementowana o 1 za pomocą operatora ++, co oznacza, że przy każdym przejściu przez pętlę $i przyjmuje wartości 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 i 10. Ostatecznie, pętla wykonuje się, gdy $i osiąga wartość 10, a następnie po wykonaniu bloku kodu następuje inkrementacja, co sprawia, że $i staje się 11, co narusza warunek $i <= 10. Zatem pętla wykonuje się 11 razy, co czyni odpowiedź 11 poprawną. Przykładem zastosowania takiej pętli może być iteracja po elementach tablicy lub generowanie sekwencji liczb. Zgodnie z najlepszymi praktykami programistycznymi, ważne jest, aby zawsze kontrolować zmienne sterujące w pętli, aby uniknąć sytuacji takich jak nieskończone pętle, co jest szczególnie istotne w kontekście wydajności aplikacji.

Pytanie 31

Która z metod komentowania kodu nie jest używana w PHP?

A. // komentarz
B. /* komentarz */
C. # komentarz
D. <!-- komentarz -->
Pierwsze trzy odpowiedzi sugerują metody komentowania, które są rzeczywiście stosowane w PHP, co może prowadzić do zamieszania. Komentarz zaczynający się od znaku '#' jest często używany w innych językach programowania, takich jak Bash czy Python, ale nie jest dozwolony w PHP. Użycie '#' w PHP spowoduje błąd podczas wykonania skryptu, ponieważ interpreter PHP nie rozpoznaje tego znaku jako oznaczenia początku komentarza. Podobnie, komentarz oznaczony jako '//' dla jednoliniowych komentarzy oraz '/* ... */' dla wieloliniowych komentarzy są standardowo stosowane w PHP i pozwalają na tworzenie jasnych oraz zrozumiałych sekcji kodu. Dzięki nim programiści mogą łatwo wprowadzać objaśnienia lub wykluczać fragmenty kodu bez ich usuwania. Użycie dobrze ustrukturyzowanych komentarzy jest kluczowe dla wsparcia przyszłych zespołów developerskich w rozwoju projektów. Ponadto, niepoprawne podejście do komentowania kodu może prowadzić do błędów i nieporozumień w zespole. Komentarze pełnią funkcję dokumentacyjną i powinny jasno opisywać logikę kodu, co jest istotne w kontekście rozwoju oprogramowania, w szczególności w dużych projektach, gdzie wiele osób pracuje nad tym samym kodem. Dlatego ważne jest, aby stosować właściwe metody i unikać potencjalnych pułapek związanych z używaniem niepoprawnych składni komentarzy.

Pytanie 32

Baza danych zawiera tabelę uczniowie z kolumnami: imie, nazwisko, klasa. Jakie polecenie SQL powinno być użyte, aby wyświetlić imiona i nazwiska uczniów, których nazwiska zaczynają się na literę M?

A. SELECT nazwisko, imie FROM uczniowie ORDER BY nazwisko IN "M%"
B. SELECT nazwisko, imie FROM uczniowie WHERE nazwisko IN "M%"
C. SELECT nazwisko, imie FROM uczniowie ORDER BY nazwisko = "M%"
D. SELECT nazwisko, imie FROM uczniowie WHERE nazwisko LIKE "M%"
Wybór opcji SELECT nazwisko, imie FROM uczniowie WHERE nazwisko LIKE "M%" jest poprawny, ponieważ używa klauzuli WHERE do filtrowania rekordów na podstawie warunków. Operator LIKE pozwala na wyszukiwanie wzorców w danych tekstowych, a symbol % jest używany jako wildcard, co oznacza, że zastępuje dowolny ciąg znaków. Dzięki temu zapytanie zwraca wszystkich uczniów, których nazwiska zaczynają się na literę M. Takie podejście jest zgodne z najlepszymi praktykami w SQL, gdzie klauzula WHERE jest fundamentalnym elementem selekcji danych. W praktyce, gdy chcemy wyszukiwać dane w bazach danych, użycie LIKE w połączeniu z symbolami wieloznacznymi (takimi jak %) jest powszechną techniką, stosowaną w aplikacjach webowych i systemach zarządzania danymi. Przykładowo, w systemie szkolnym, takie zapytanie może być używane do generowania listy uczniów w celu wysyłania powiadomień lub gromadzenia informacji o postępach w nauce.

Pytanie 33

Jakie technologie są konieczne do uruchomienia systemu CMS Joomla!?

A. Apache, PHP i MySQL
B. Apache oraz PHP
C. PHP oraz MySQL
D. IIS, PERL i MySQL
Joomla! jest systemem zarządzania treścią, który wymaga specyficznych technologii do prawidłowego działania. Do uruchomienia Joomla! niezbędne jest środowisko, które obejmuje serwer WWW Apache, język skryptowy PHP oraz bazę danych MySQL. Apache jest najpopularniejszym serwerem WWW, który obsługuje wiele funkcji, takich jak obsługa dynamicznych treści oraz zarządzanie dużymi ilościami ruchu. PHP jest językiem skryptowym, który pozwala na interakcję z bazą danych oraz generowanie treści w czasie rzeczywistym, co jest kluczowe dla działania CMS-a. MySQL natomiast jest systemem zarządzania bazą danych, który przechowuje wszystkie dane dotyczące witryny, takie jak artykuły, ustawienia i użytkownicy. Przykładem zastosowania tych technologii może być stworzenie strony internetowej dla lokalnej organizacji non-profit, gdzie Joomla! umożliwia łatwe zarządzanie treścią przez osoby nieposiadające zaawansowanej wiedzy technicznej. Dobre praktyki w branży zalecają stosowanie najnowszych wersji tych technologii, aby zapewnić bezpieczeństwo oraz wydajność witryny.

Pytanie 34

Jakie kolory wchodzą w skład modelu barw CMYK?

A. czerwony, zielony, niebieski oraz kanał alfa
B. cyjan, magenta, żółty i karmazyn
C. cyjan, magenta, żółty i czarny
D. czerwony, zielony oraz niebieski
Czerwony, zielony i niebieski to kolory, które są składowymi modelu RGB (Red, Green, Blue), który jest stosowany głównie w kontekście wyświetlaczy elektronicznych, takich jak monitory i telewizory. W modelu RGB kolory są generowane przez dodawanie światła, co różni się od modelu CMYK, w którym kolory są uzyskiwane przez subtraktywne mieszanie barw. W kontekście druku, użycie RGB może prowadzić do nieprzewidywalnych rezultatów, gdyż kolory na ekranie nie zawsze odpowiadają tym, które pojawią się na wydruku. Często następuje konieczność konwersji kolorów z RGB na CMYK, aby uzyskać właściwe odwzorowanie kolorów. Cyjan, magenta, żółty i karmazyn to kombinacja kolorów, która nie jest standardowym zestawem składowych w modelu barw. Karmazyn, jako kolor pochodny, nie jest uznawany za podstawowy składnik modelu CMYK, a zamiast tego jest blisko związany z magentą, co może wprowadzać w błąd. Z kolei pojęcie kanału alfa odnosi się do przezroczystości w obrazach rastrowych, co jest związane z modelem kolorów RGBA, a nie z CMYK. Kanał alfa jest istotny w kontekście edycji grafiki komputerowej, ale nie ma zastosowania w tradycyjnych procesach druku, gdzie priorytetem jest odwzorowanie kolorów w formacie CMYK.

Pytanie 35

Jakie znaczniki należy zastosować, aby umieścić kod w języku PHP w pliku z rozszerzeniem php?

A. <?php ........... ?>
B. <php> ........... </php>
C. <?php>........... <php?>
D. <php ........... />
Odpowiedź <?php ........... ?> jest poprawna, ponieważ to właśnie te znaczniki służą do wstawiania kodu PHP w plikach o rozszerzeniu .php. Znak zapytania przed 'php' informuje serwer, że dalsza część kodu jest napisana w tym języku, a zamknięcie znacznika za pomocą '?>' sygnalizuje koniec tej sekcji. To podejście jest zgodne z zaleceniami PHP, które podkreślają znaczenie wyraźnego oddzielenia kodu HTML od PHP. Przykładowo, możemy wstawić kod PHP wewnątrz pliku HTML, co pozwala na dynamiczne generowanie treści: <html><body><?php echo 'Witaj, świecie!'; ?></body></html>. Ponadto, używanie tych znaczników pozwala na łatwą integrację z innymi językami skryptowymi oraz szersze możliwości w zakresie zarządzania danymi, takich jak interakcje z bazami danych. Warto również pamiętać o dobrych praktykach, takich jak stosowanie pętli i warunków w PHP, aby tworzyć bardziej zaawansowane aplikacje webowe. Takie umiejętności są niezbędne w programowaniu backendowym, co czyni tę wiedzę kluczową dla każdego dewelopera.

Pytanie 36

W systemie zarządzania bazą danych MySQL, aby uzyskać listę wszystkich przywilejów przyznanych użytkownikowi anna, można użyć polecenia

A. GRANT * TO anna;
B. SHOW GRANTS FOR anna;
C. REVOKE GRANTS FROM anna;
D. SELECT GRANTS FOR anna;
Odpowiedź 'SHOW GRANTS FOR anna;' jest trafna. To polecenie w MySQL to coś jak standard do wyświetlania przydzielonych uprawnień dla konkretnego użytkownika. Dzięki temu administrator bazy danych może szybko zobaczyć, co użytkownik o imieniu 'anna' może zrobić. Na przykład, jeśli chcemy wiedzieć, jakie operacje są dozwolone dla tego użytkownika, to właśnie to polecenie będzie na to najlepsze. Przydaje się to zwłaszcza przy audytach czy rozwiązywaniu problemów z dostępem. Warto też dodać, że w MySQL można przypisywać różnorodne uprawnienia, na przykład SELECT, INSERT, UPDATE, czy DELETE, a także konkretnym bazom danych czy tabelom. Regularne sprawdzanie uprawnień to dobra praktyka, bo pomaga utrzymać bezpieczeństwo danych i zminimalizować ryzyko nieautoryzowanego dostępu. Znajomość polecenia 'SHOW GRANTS' jest naprawdę ważna, zwłaszcza w większych systemach, gdzie kontrola dostępu odgrywa istotną rolę.

Pytanie 37

Zdefiniowana jest tabela uczniowie z polami id, nazwisko, imie oraz klasa. Jakie zapytanie SQL pozwoli nam uzyskać liczbę osób w danym klasa i wskazać jej nazwę?

A. SELECT COUNT(id), klasa FROM uczniowie GROUP BY klasa
B. SELECT SUM(id), klasa FROM uczniowie GROUP BY klasa
C. SELECT COUNT(id), klasa FROM uczniowie ORDER BY klasa
D. SELECT SUM(id), klasa FROM uczniowie ORDER BY klasa
Odpowiedź 'SELECT COUNT(id), klasa FROM uczniowie GROUP BY klasa;' jest prawidłowa, ponieważ wykorzystuje funkcję agregującą COUNT do zliczenia liczby uczniów w każdej klasie. Kluczowym elementem jest tutaj klauzula GROUP BY, która grupuje wyniki według kolumny 'klasa'. Dzięki temu uzyskujemy dla każdej klasy osobny wynik z liczbą uczniów. To podejście jest zgodne z dobrymi praktykami w SQL, gdzie użycie funkcji agregujących z grupowaniem pozwala na efektywne przetwarzanie danych. Przykładowo, w przypadku szkoły, taka analiza może być użyta do zarządzania zasobami lub planowania, na przykład, przy ustalaniu liczby nauczycieli potrzebnych w danej klasie. Użycie COUNT zapewnia również, że wynik będzie liczbowy, co jest istotne dla dalszej analizy danych. Warto również pamiętać, że korzystanie z odpowiednich aliasów dla wyników może poprawić czytelność wyników zapytania.

Pytanie 38

Rozmiary ekranu w formacie 16:9 (zakładając, że piksel jest kwadratem) można osiągnąć przy rozdzielczości

A. 320 na 240 pikseli
B. 1366 na 768 pikseli
C. 2560 na 2048 pikseli
D. 800 na 480 pikseli
Odpowiedź 1366 na 768 pikseli jest poprawna, ponieważ proporcja szerokości do wysokości wynosi dokładnie 16:9. Aby to obliczyć, dzielimy szerokość przez wysokość: 1366 / 768 = 1,78, co jest bliskie wartości 1,77 (16:9). Proporcje 16:9 stały się standardem w telewizji wysokiej rozdzielczości oraz w produkcji wideo, co oznacza, że są szeroko stosowane w przemysłach związanych z mediami i technologią. Przykładem zastosowania tej rozdzielczości może być wyświetlanie filmów na nowoczesnych telewizorach, gdzie forma obrazu 16:9 pozwala na pełne wykorzystanie ekranu bez czarnych pasków po bokach. Stosując to w projektach multimedialnych, warto zawsze dążyć do zgodności z tymi standardami, aby zapewnić optymalne wrażenia wizualne dla użytkowników. Zrozumienie tych proporcji jest kluczowe dla profesjonalistów zajmujących się grafiką, filmem i projektowaniem UX/UI.

Pytanie 39

Który z poniższych zapisów CSS zmieni tło bloku na odcień niebieskiego?

A. div {background-color:blue;}
B. div {color:blue;}
C. div {shadow:blue;}
D. div {border-color:blue;}
Zapis 'div {background-color:blue;}' jest jak najbardziej na miejscu. Właściwość 'background-color' jest kluczowa, bo ustawia kolor tła dla elementów blokowych w CSS. Kiedy używasz 'blue' jako wartości, to mówisz, że tło ma być niebieskie. Ta właściwość jest częścią tego całego systemu CSS, który decyduje, jak powinny wyglądać elementy HTML. Ustawienie koloru tła jest ważne, bo wpływa na wygląd strony i to, jak kontrastują ze sobą tekst i tło, co jest istotne, by strona była dostępna dla każdego. Jeśli chciałbyś zmienić kolor tła, możesz korzystać z różnych wartości, takich jak kody HEX (np. #0000FF) albo RGB (np. rgb(0, 0, 255)). Możesz to zobaczyć w praktyce, na przykład: <div style='background-color:blue;'>Treść</div>, co ustawi tło 'diva' na niebieskie.

Pytanie 40

Który typ danych należy przypisać do atrybutu Telefon encji Student zakładając, że numer rozpoczyna się od znaku + i następującego po nim numeru kierunkowego kraju?

A. Tekstowy
B. Liczbowy
C. Binarny
D. Wyliczeniowy
Poprawny typ danych dla atrybutu Telefon w encji Student to typ tekstowy, ponieważ numer telefonu nie jest zwykłą liczbą, tylko ciągiem znaków o określonej strukturze. Mamy tam znak plus na początku, potem numer kierunkowy kraju, często spacje, czasem myślniki, nawiasy. System informatyczny nie powinien wykonywać na tym polu działań arytmetycznych, tylko przechowywać dokładnie to, co użytkownik wpisał. W bazach danych i w większości języków programowania przyjętym standardem jest traktowanie numerów telefonów jako stringów, właśnie po to, żeby nie tracić formatu i nie usuwać znaków specjalnych. Moim zdaniem to jedna z takich pułapek początkujących: skoro są cyfry, to kusi, żeby dać typ liczbowy. A potem wychodzą kwiatki, typu ucinanie zera na początku, problemy z numerami międzynarodowymi, brak możliwości zapisania +48 albo numeru wewnętrznego. W praktyce w modelu danych stosuje się typ tekstowy (np. VARCHAR o rozsądnej długości) i ewentualnie nakłada się walidację po stronie aplikacji lub bazy, np. wyrażeniem regularnym, żeby pilnować formatu zgodnego z E.164 (+48123456789 itd.). Dobre praktyki mówią też, żeby nie łączyć w jednym polu różnych znaczeń, więc jeśli oprócz numeru trzeba przechowywać np. opis typu telefonu (komórkowy, stacjonarny, służbowy), to lepiej dać osobny atrybut albo nawet osobną tabelę. Sam numer jednak zawsze jako tekst, bo jego „wartość” logiczna to identyfikator, a nie wielkość liczbowa.