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: 8 czerwca 2026 23:09
  • Data zakończenia: 8 czerwca 2026 23:31

Egzamin zdany!

Wynik: 35/40 punktów (87,5%)

Wymagane minimum: 20 punktów (50%)

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

Jakie możliwości daje funkcja phpinfo()?

A. uzyskanie informacji o środowisku pracy serwera obsługującego PHP
B. uruchomienie kodu w języku PHP
C. zweryfikowanie wartości zmiennych użytych w kodzie PHP
D. analizowanie kodu PHP
Funkcja phpinfo() jest niezwykle przydatnym narzędziem, które dostarcza szczegółowych informacji na temat konfiguracji środowiska PHP na serwerze. Wywołanie tej funkcji generuje stronę HTML z danymi takimi jak wersja PHP, załadowane rozszerzenia, zmienne konfiguracyjne oraz informacje o systemie operacyjnym. Przykładowo, podczas rozwiązywania problemów z aplikacjami PHP, programiści mogą skorzystać z phpinfo() w celu weryfikacji, czy odpowiednie rozszerzenia są załadowane, co może być kluczowe dla poprawnego działania aplikacji. Dodatkowo, funkcja ta umożliwia identyfikację potencjalnych problemów z konfiguracją, takich jak niewłaściwie ustawione ścieżki do skryptów czy braki w wymaganych rozszerzeniach. Zgodnie z najlepszymi praktykami, phpinfo() powinno być używane tylko w środowiskach deweloperskich, a nie produkcyjnych, aby nie ujawniać wrażliwych informacji o serwerze. Dobrą praktyką jest również usunięcie lub zabezpieczenie dostępu do stron, które wywołują tę funkcję, aby zminimalizować ryzyko ataków.

Pytanie 2

Który znacznik HTML oznacza fragment tekstu jako KOD programistyczny?

A.
<em>
B.
<code>
C.
<blockquote>
D.
<span>
Znacznik <code> oznacza fragment tekstu jako KOD programistyczny - przeglądarki domyślnie wyświetlają go czcionką o stałej szerokości (monospace). Dlatego kod oznacza <code>.

Pytanie 3

Kwerenda ma za zadanie w tabeli artykuly ALTER TABLE artykuly MODIFY cena float;

A. zmienić typ na float dla kolumny cena
B. zmienić nazwę kolumny z cena na float
C. usunąć kolumnę cena typu float
D. dodać kolumnę cena o typie float, jeśli nie istnieje
Odpowiedź, która zmienia typ kolumny 'cena' na 'float' jest prawidłowa, gdyż użycie kwerendy ALTER TABLE z poleceniem MODIFY pozwala na modyfikację istniejącej kolumny w już utworzonej tabeli. W praktyce, jeśli w tabeli 'artykuły' kolumna 'cena' była wcześniej zdefiniowana jako typ inny niż float, zastosowanie polecenia ALTER TABLE jest właściwą metodą, by dostosować ten typ do wymagań aplikacji, które mogą wymagać precyzyjnych wartości liczbowych, na przykład w kontekście obliczeń finansowych. W SQL, typ float jest używany do przechowywania liczb zmiennoprzecinkowych, co jest szczególnie istotne w przypadku cen, które mogą mieć wartości dziesiętne. Dobre praktyki sugerują, aby zmiana typu danych dokonywana była w sposób przemyślany i po uprzednim sprawdzeniu, czy zmiana nie wpłynie negatywnie na istniejące dane. Warto pamiętać, że przed modyfikacją schematu bazy danych, dobrze jest wykonać kopię zapasową, aby zminimalizować ryzyko utraty danych.

Pytanie 4

Kiedy zakończy się wykonanie poniższego fragmentu kodu w języku C/C++, do zmiennej zwanej zmienna2 zostanie przypisane:

...
int zmienna1 = 158;
int *zmienna2 = &zmienna1;
A. przypisana zamieniona na łańcuch wartość przechowywana w zmienna1
B. przypisana ta sama wartość, co przechowywana w zmienna1
C. przypisany adres zmiennej o nazwie zmienna1
D. przypisana liczba w kodzie binarnym odpowiadająca wartości przechowywanej w zmienna1
Wskaźniki w językach C/C++ są jednymi z fundamentalnych koncepcji, które pozwalają na efektywne zarządzanie pamięcią oraz manipulację danymi na niskim poziomie. Błędne rozumienie przypisania wskaźników może prowadzić do nieporozumień. Kiedy przypisujemy zmienną typu wskaźnikowego, jak w int *zmienna2 = &zmienna1, przypisywany jest adres, a nie wartość. Odpowiedzi sugerujące przypisanie bezpośredniej wartości, jej binarnej reprezentacji lub konwersji do łańcucha są niepoprawne, ponieważ ignorują działanie operatora '&' oraz specyfikę wskaźników. Operator '&' zawsze zwraca adres pamięci, co umożliwia wskaźnikowi przechowywanie tego adresu. Pomijanie tego faktu jest częstym błędem, wynikającym z braku zrozumienia mechanizmów pamięci i wskaźników. Zrozumienie różnicy między wskaźnikiem a zwykłą zmienną jest kluczowe. Wskaźniki nie przechowują wartości zmiennych, lecz ich adresy, co pozwala na manipulację danymi w ich oryginalnym miejscu w pamięci. Ignorowanie tego aspektu prowadzi do logicznych błędów w programach i potencjalnych problemów z zarządzaniem pamięcią.

Pytanie 5

Który System Zarządzania Bazą Danych jest standardowo używany w pakiecie XAMPP?

A. Oracle
B. Firebird
C. PostgreSQL
D. MariaDB
XAMPP to darmowy pakiet do uruchomienia środowiska serwerowego na własnym komputerze. Skrót oznacza: X (wieloplatformowość), Apache, MariaDB, PHP i Perl. Standardową bazą danych jest w nim MariaDB - otwarty następca i odpowiednik MySQL, z którym jest w pełni zgodny (zarządza się nim m.in. przez phpMyAdmin). Dzięki XAMPP można lokalnie testować strony PHP korzystające z bazy. Dlatego domyślnym systemem bazodanowym XAMPP jest MariaDB.

Pytanie 6

W przedstawionej definicji stylu CSS, powtarzanie dotyczy

body {
  background-image: url("rysunek.gif");
  background-repeat: repeat-y;
}
A. tła każdego ze znaczników akapitu.
B. rysunku umieszczonego w tle strony w poziomie.
C. rysunku umieszczonego znacznikiem img.
D. rysunku umieszczonego w tle strony w pionie.
Twoja odpowiedź jest na miejscu. To, co mówi 'background-repeat: repeat-y;' w CSS, oznacza, że tło będzie się powtarzać w pionie. Super sprawa, jeśli chcesz, by obraz w tle pokrywał całą wysokość elementu, niezależnie od tego, jak duży on jest. Używa się tego często w projektowaniu stron, żeby stworzyć fajne efekty wizualne, jak na przykład tło, które działa w pasku nawigacyjnym. Warto pamiętać, że powtarzanie tła to zaledwie jedna z wielu opcji, jakie mamy w CSS. Możesz również ustawiać pozycję tła czy jego rozmiar, żeby wszystko wyglądało tak, jak chcesz.

Pytanie 7

ALTER TABLE transport MODIFY COLUMN rok_produkcji INT;
Wykonanie powyższej kwerendy SQL w bazie MySQL spowoduje:
A. dodanie kolumny rok_produkcji typu INT w tabeli transport.
B. utworzenie tabeli transport zawierającej kolumnę rok_produkcji.
C. usunięcie kolumny rok_produkcji w tabeli transport.
D. zmianę typu danych w kolumnie rok_produkcji na INT.
Poprawnie – polecenie ALTER TABLE ... MODIFY COLUMN w MySQL służy do modyfikowania istniejącej kolumny, a nie do jej tworzenia czy usuwania. W podanym przykładzie baza danych szuka tabeli o nazwie `transport`, a następnie zmienia definicję kolumny `rok_produkcji` tak, aby jej typ danych był `INT`. Jeśli kolumna już istnieje (a musi istnieć, żeby MODIFY zadziałało), to po wykonaniu polecenia dalej będzie miała tę samą nazwę, ale jej typ i właściwości zostaną nadpisane nową definicją. W MySQL warto pamiętać, że przy MODIFY COLUMN trzeba podać pełną definicję kolumny, nie tylko sam typ. Czyli jeśli wcześniej była np. NOT NULL albo miała domyślną wartość, to dobra praktyka jest napisać coś w stylu: `ALTER TABLE transport MODIFY COLUMN rok_produkcji INT NOT NULL DEFAULT 2000;` – inaczej można przypadkiem zgubić część ustawień. W praktyce takie polecenia stosuje się przy zmianach w projekcie bazy: np. najpierw kolumna jest typu VARCHAR, bo ktoś przechowuje tam rok jako tekst, a potem, zgodnie z lepszymi zasadami projektowania, zmienia się to na typ liczbowy INT, żeby można było łatwo filtrować, sortować, robić warunki typu `WHERE rok_produkcji > 2015`. Z mojego doświadczenia dobrze jest przed taką zmianą sprawdzić, czy wszystkie dane da się bezpiecznie skonwertować na liczbę, bo jeśli w kolumnie są jakieś śmieciowe wartości tekstowe, to MySQL może je obciąć albo zamienić na 0, co później robi bałagan w raportach. W środowiskach produkcyjnych takie ALTER TABLE najlepiej wykonywać po zrobieniu kopii zapasowej i często w oknie serwisowym, bo przy dużych tabelach operacja może chwilowo blokować dostęp do danych.

Pytanie 8

Która funkcja edytora grafiki wektorowej spowoduje przekształcenie z przedstawionych po lewej stronie figur koła i prostokąta do figury półkola widocznej po prawej stronie?

Ilustracja do pytania
A. Część wspólna.
B. Różnica.
C. Wykluczenie.
D. Podział.
W grafice wektorowej operacje na kształtach, takie jak Różnica, Podział, Wykluczenie czy Część wspólna, to tzw. operacje boole’owskie. One nie są losowe – każda z nich ma bardzo konkretne, matematyczne znaczenie. Typowy błąd polega na tym, że patrzymy tylko na „intuicyjną” nazwę funkcji, a nie na to, co faktycznie dzieje się z obszarami wypełnienia. Różnica (ang. Subtract / Difference) polega na tym, że jedna figura „wycina” fragment z drugiej. Gdyby w naszym przykładzie użyć różnicy, to z jednej figury zostałby usunięty fragment zajmowany przez drugą. W efekcie dostalibyśmy kształt przypominający np. prostokąt z zaokrąglonym wycięciem, a nie pełne półkole. To przydaje się np. do robienia otworów, ramek, ikon z „dziurą”, ale nie do budowy półkola. Podział (ang. Divide / Fragment) dzieli obszar wszędzie tam, gdzie kształty się przecinają, na kilka osobnych obiektów. Wizualnie może to chwilowo wyglądać podobnie, ale końcowy efekt to kilka fragmentów, które trzeba ręcznie usuwać lub scalać. W testowym zadaniu chodzi o jedną, gotową figurę półkola, bez dodatkowego sprzątania, więc to nie jest optymalna operacja. Wykluczenie (ang. Exclude / XOR) działa odwrotnie do części wspólnej – usuwa obszar nakładania się, a zostawia tylko to, co jest „na zewnątrz” przecięcia. Gdyby użyć wykluczenia na kole i prostokącie, środek, czyli miejsce ich wspólnego nakładania, zniknie, a zostaną dwa osobne dziwne kształty po bokach. To dobra funkcja do tworzenia bardziej dekoracyjnych, ażurowych form, ale kompletnie nie nadaje się do uzyskania klasycznego półkola. W tym zadaniu kluczowe jest zrozumienie, że półkole jest dokładnie tym obszarem, gdzie koło i prostokąt się pokrywają. Stąd jedynie „Część wspólna” daje czysty, poprawny efekt bez dodatkowej obróbki. Warto przy takich pytaniach wyobrażać sobie, które fragmenty zostaną, a które zostaną usunięte, zamiast sugerować się tylko nazwą funkcji w menu programu.

Pytanie 9

Elementarna animacja może być zapisana w formacie

A. BMP
B. PSD
C. GIF
D. TIFF
Format GIF (Graphics Interchange Format) jest powszechnie stosowany do tworzenia prostych animacji ze względu na swoją zdolność do kompresji obrazów i obsługi przez większość przeglądarek internetowych. GIF pozwala na zapisanie sekwencji obrazów w jednej pliku, co umożliwia ich wyświetlanie jako animacji. Standard GIF obsługuje maksymalnie 256 kolorów z palety, co czyni go idealnym do prostych grafik, takich jak ikony czy animacje internetowe. Dzięki metodzie kompresji Lempel-Ziv-Welch (LZW) możliwe jest zmniejszenie rozmiaru pliku bez utraty jakości, co jest kluczowe w kontekście transferu danych przez sieć. Przykłady zastosowania formatu GIF obejmują animowane banery reklamowe, emotikony oraz krótkie klipy wideo w formie GIF, które stały się popularne na platformach społecznościowych. Ponadto GIF wspiera przezroczystość i animacje w cyklu, co podnosi jego użyteczność w wielu aplikacjach multimedialnych. Z tego powodu GIF jest formatem, który oferuje zarówno funkcjonalność, jak i kompatybilność, co czyni go najlepszym wyborem dla prostych animacji.

Pytanie 10

Fragment kodu napisany w języku JavaScript, który realizuje sumowanie dwóch liczb, wygląda następująco (zobacz ramka): Aby operacja dodawania odbywała się po naciśnięciu przycisku zatytułowanego "dodaj", należy w miejsce wykropkowane wprowadzić

Ilustracja do pytania
A. <button onclick="return obliczj()">dodaj</button>
B. <button onclick="return dodaj()">dodaj</button>
C. <button onselect="return dodaj()">oblicz</button>
D. <button onselect="return dodaj()">dodaj</button>
Odpowiedź jest prawidłowa, ponieważ w języku JavaScript zdarzenie onclick jest standardowym sposobem uruchamiania funkcji w odpowiedzi na kliknięcie przycisku. W tym przypadku funkcja dodaj() zostanie wywołana, gdy użytkownik kliknie przycisk z napisem "dodaj". Jest to zgodne z powszechnymi praktykami w tworzeniu interfejsów użytkownika dla aplikacji webowych, gdzie zdarzenia są przypisywane do elementów HTML za pomocą atrybutów takich jak onclick czy onsubmit. Takie podejście pozwala na bezpośrednią interakcję użytkownika z elementami strony, co jest kluczowe dla dynamicznych aplikacji internetowych. Przy tworzeniu stron internetowych ważne jest, aby zdarzenia były jednoznacznie przypisane do odpowiednich funkcji, co ułatwia zarządzanie logiką aplikacji. Dodatkowo takie rozwiązanie zwiększa czytelność kodu i ułatwia jego dalsze utrzymanie i rozwój. W przypadku bardziej skomplikowanych projektów można również rozważyć oddzielanie logiki JavaScript od struktury HTML, używając zewnętrznych plików skryptów i bibliotek, takich jak jQuery czy React, co sprzyja lepszej organizacji kodu.

Pytanie 11

W skrypcie PHP konieczne jest stworzenie cookie o nazwie owoce, które przyjmie wartość jabłko. Cookie powinno być dostępne przez jedną godzinę od momentu jego utworzenia. W tym celu w skrypcie PHP należy wykorzystać funkcję:

A. cookie("jabłko","owoce",3600);
B. setcookie("jabłko","owoce",time()+3600);
C. setcookie("owoce","jabłko",time()+3600);
D. cookie("owoce","jabłko",3600);
Funkcja setcookie w PHP jest kluczowym narzędziem do zarządzania ciasteczkami, a w szczególności do ich tworzenia. W przypadku prawidłowej odpowiedzi, setcookie("owoce","jabłko",time()+3600) poprawnie ustawia nazwę ciasteczka na 'owoce', przypisując mu wartość 'jabłko'. Funkcja time() zwraca aktualny czas w sekundach od 1 stycznia 1970 roku, a dodanie 3600 do tej wartości ustawia czas wygaśnięcia ciasteczka na jedną godzinę od momentu jego utworzenia. Jest to standardowa praktyka, by zapewnić, że cookie będzie dostępne przez określony czas. W kontekście aplikacji webowych, cookies są często wykorzystywane do przechowywania informacji o preferencjach użytkowników, sesjach logowania czy koszykach zakupowych. Ważne jest, aby przy tworzeniu ciasteczek upewnić się, że nazwa i wartość są odpowiednio sformatowane, a czas wygaśnięcia jest zgodny z oczekiwaniami. Prawidłowe zarządzanie ciasteczkami przyczynia się do lepszej interakcji z użytkownikami oraz zwiększa wydajność aplikacji.

Pytanie 12

Ile razy zostanie wykonana pętla w języku PHP, jeśli zmienna kontrolna pozostaje niezmienna podczas działania pętli?

for($i=0; $i<=10; $i++) {
        .......
}
A. Nieskończoność
B. 0
C. 10
D. 11
Pętla for w języku PHP, zapisana jako for($i=0; $i<=10; $i++), będzie miała 11 iteracji ponieważ warunek $i<=10 pozwala na wykonanie pętli aż do momentu gdy $i wynosi 10 włącznie. Pętla zaczyna się od wartości 0 dla zmiennej $i i zwiększa jej wartość o 1 w każdej iteracji. Ponieważ warunek końcowy dopuszcza wartość 10 pętla wykona się dla wartości 0 1 2 3 4 5 6 7 8 9 i 10 co daje łącznie 11 iteracji. Tego typu pętla jest często wykorzystywana do iteracyjnego przetwarzania elementów tablic czy generowania sekwencji liczb. Jest to zgodne ze standardowymi praktykami programistycznymi gdzie pętle for są używane do iteracji tam gdzie liczba kroków jest z góry znana. Znajomość podstawowych struktur iteracyjnych takich jak pętla for jest kluczowa w efektywnym programowaniu i umożliwia tworzenie czytelnego i efektywnego kodu. Ważne jest też aby odpowiednio definiować warunki początkowe i końcowe oraz krok iteracji zgodnie z zamierzonym działaniem algorytmu aby uniknąć nieskończonych pętli lub błędów logicznych wynikających z niewłaściwie ustawionych warunków.

Pytanie 13

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

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

Pytanie 14

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. części wspólnej.
B. sumy.
C. wykluczenia.
D. grupowania.
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno.
Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji.
Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 15

Zidentyfikuj styl CSS, który doprowadził do uzyskania pokazanego efektu.

Ilustracja do pytania
A. Styl 3
B. Styl 4
C. Styl 2
D. Styl 1
Odpowiedź Styl 2 jest prawidłowa, ponieważ zastosowanie border-radius w wartości 50px pozwala osiągnąć efekt zaokrąglenia narożników elementu do kształtu koła, o ile element jest kwadratem. W tym przypadku obraz ma szerokość 100px, co oznacza, że promień zaokrąglenia równy 50px sprawia, że wszystkie narożniki zbiegają się w punktach centralnych ścianek kwadratu, tworząc idealny okrąg. Ta technika jest szeroko stosowana w projektowaniu stron internetowych zwłaszcza w odniesieniu do awatarów lub elementów graficznych, które wymagają zaokrąglonego kształtu. Stosowanie odpowiednich wartości border-radius jest zgodne z dobrymi praktykami w CSS, co pozwala projektantom na eleganckie i efektywne kształtowanie wyglądu witryny. Dzięki temu można tworzyć intuicyjne i estetyczne interfejsy użytkownika. Ważne jest również, aby testować wyświetlanie na różnych urządzeniach, ponieważ CSS powinien być responsywny i adaptowalny do różnorodnych rozdzielczości wyświetlaczy co zwiększa dostępność oraz użyteczność witryn.

Pytanie 16

GRANT SELECT, INSERT, UPDATE ON klienci TO anna;
Zakładając, że użytkownik wcześniej nie posiadał żadnych uprawnień, to polecenie SQL przyzna użytkownikowi anna prawa jedynie do:
A. wybierania, wstawiania oraz aktualizacji danych tabeli o nazwie klienci
B. wybierania, dodawania rekordów oraz modyfikacji struktury tabeli o nazwie klienci
C. wybierania, dodawania rekordów oraz zmiany struktury wszystkich tabel w bazie o nazwie klienci
D. wybierania, wstawiania oraz aktualizacji danych wszystkich tabel w bazie o nazwie klienci
Wybrane odpowiedzi mylnie sugerują, że przyznawane uprawnienia obejmują szerszy zakres niż rzeczywiście mają miejsce. Na przykład, odpowiedzi wskazujące na możliwość 'zmiany struktury tabeli' są błędne, ponieważ polecenie GRANT w tym kontekście nie daje takich uprawnień. Zmiana struktury tabeli, jak dodawanie czy usuwanie kolumn, wymagałaby uprawnień DDL (Data Definition Language), takich jak ALTER, które nie zostały przyznane w tym przypadku. Ponadto, odpowiedzi związane z 'wszystkimi tabelami w bazie' są również niepoprawne. Komenda GRANT została zastosowana wyłącznie do konkretnej tabeli 'klienci', co oznacza, że użytkownik 'anna' nie zyskuje uprawnień do innych tabel ani do bazy danych jako całości. To pokazuje istotne znaczenie precyzyjnego zarządzania uprawnieniami w środowisku baz danych, aby uniknąć nieautoryzowanego dostępu i niezamierzonych zmian w danych. Błędne interpretacje mogą wynikać z nieznajomości kontekstu użycia polecenia GRANT oraz jego ograniczeń, co często prowadzi do nadmiernego przyznawania uprawnień lub błędnych założeń dotyczących kontroli dostępu. Dążenie do dokładności w przydzielaniu uprawnień jest fundamentalne dla zapewnienia bezpieczeństwa i wydajności systemów baz danych.

Pytanie 17

Wskaż funkcję JavaScript, która umożliwia obliczenie połowy kwadratu liczby podanej jako argument.

A. function wynik(a) { return a*a/2; }
B. function wynik(a) { return a*2/2; }
C. function wynik(a) { return 2*a/a; }
D. function wynik(a) { return a/2+a/2; }
Funkcja 'wynik' w postaci 'function wynik(a) { return a*a/2; }' poprawnie oblicza połowę kwadratu liczby 'a', co można zapisać matematycznie jako (a^2)/2. Takie podejście jest zgodne z definicją funkcji w programowaniu, gdzie argument 'a' jest przekazywany jako parametr, a następnie wykorzystany w obliczeniach. Przykładowo, jeśli przekazalibyśmy liczbę 4, wynik funkcji wyniósłby (4*4)/2 = 8. W praktycznych zastosowaniach, takie obliczenia mogą być przydatne w różnych dziedzinach, jak grafika komputerowa, gdzie oblicza się pola powierzchni, czy inżynieria, gdzie analizuje się różne parametry techniczne. Użycie operatora mnożenia i dzielenia zapewnia, że wyniki są zgodne z oczekiwaniami matematycznymi, co jest zgodne z najlepszymi praktykami programistycznymi, polegającymi na precyzyjnym oddzieleniu operacji arytmetycznych i dbałości o czytelność kodu.

Pytanie 18

Przedstawiono efekt formatowania CSS oraz kod HTML. Jak należy zdefiniować styl, aby osiągnąć takie formatowanie?

<p>
Mimozami jesień się zaczyna,<br>
Złotawa, krucha i miła.<br>
To ty, to ty jesteś ta dziewczyna,<br>
Która do mnie na ulicę wychodziła.
</p>
Ilustracja do pytania
A. .first-line { font-size: 200%; color: brown; }
B. p::first-line { font-size: 200%; color: brown; }
C. #first-line { font-size: 200%; color: brown; }
D. p.first-line { font-size: 200%; color: brown; }
Gratulacje! Wybrałeś prawidłową odpowiedź. Pseudoelement ::first-line jest specyficznym selektorem CSS służącym do formatowania pierwszej linii wewnątrz bloku tekstu. Jest to zgodne ze standardami CSS3. Wszystkie style zdefiniowane za pomocą ::first-line będą miały wpływ tylko na pierwszą linię paragrafu, niezależnie od tego, ile zdań zawiera. W tym konkretnym przypadku, zastosowanie selektora `p::first-line` powoduje powiększenie czcionki do 200% oraz zmianę jej koloru na brązowy, ale tylko dla pierwszej linii tekstu zawartego w paragrafie (znacznik `<p>`). Jest to przydatne, gdy chcemy wyróżnić pierwszą linię tekstu, na przykład w dużej ilości tekstu lub artykułach. Pseudoelementy, takie jak ::first-line, pomagają w tworzeniu bardziej złożonych i precyzyjnych stylów bez konieczności dodawania dodatkowych znaczników do naszego kodu HTML.

Pytanie 19

Który warunek będzie prawdziwy, gdy $a < -10 LUB $b należy do przedziału (25, 75)?

A.
($a < -10) or (($b > 25) and ($b < 75))
B.
($a < -10) and (($b > 25) or ($b < 75))
C.
($a < -10) or (($b > 25) or ($b < 75))
D.
($a < -10) and (($b > 25) and ($b < 75))
Wyrażenie ma być prawdziwe, gdy $a < -10 LUB gdy $b mieści się w przedziale (25, 75) - a przedział to dwa warunki naraz ($b > 25 i $b < 75). Łączy się je tak: ($a < -10) or (($b > 25) and ($b < 75)). Dlatego ten warunek jest poprawny.

Pytanie 20

W bazie danych wykonano poniższe polecenia dotyczące uprawnień użytkownika adam:

GRANT ALL PRIVILEGES ON klienci TO adam;
REVOKE SELECT, INSERT, UPDATE ON klienci FROM adam;
Po wykonaniu tych instrukcji użytkownik adam uzyska dostęp do:
A. usunięcia tabeli lub jej rekordów
B. zmiany danych oraz przeglądania tabeli klienci
C. tworzenia tabeli klienci i modyfikowania w niej danych
D. przeglądania tabeli klienci oraz dodawania do niej rekordów
Użytkownik <b>adam</b> rzeczywiście uzyskuje pełne prawa do zarządzania tabelą <b>klienci</b> po wykonaniu polecenia GRANT ALL PRIVILEGES. To polecenie nadaje wszystkie możliwe uprawnienia, w tym SELECT (przeglądanie danych), INSERT (wstawianie nowych rekordów), UPDATE (aktualizowanie istniejących danych) oraz DELETE (usuwanie rekordów). W kontekście praktycznym, posiadanie ALL PRIVILEGES oznacza, że użytkownik ma swobodę w manipulowaniu danymi, co jest kluczowe w pracy z bazami danych. Na przykład, w aplikacji zarządzającej klientami, <b>adam</b> może zaktualizować szczegóły klienta, dodać nowych klientów do bazy oraz usunąć tych, którzy już nie są aktywni. Jednakże, ważne jest, aby przyznawanie takich uprawnień odbywało się zgodnie z zasadami minimalnych uprawnień, aby zredukować ryzyko nieautoryzowanych zmian. Dlatego też praktyki zarządzania użytkownikami w bazach danych powinny obejmować dokładne audyty uprawnień oraz regularne przeglądy przyznanych praw, aby zapewnić bezpieczeństwo danych.

Pytanie 21

Którą funkcją PHP sprawdzić WARTOŚĆ oraz TYP zmiennej?

A.
implode()
B.
var_dump()
C.
readfile()
D.
strlen()
Funkcja var_dump() wypisuje zarówno WARTOŚĆ zmiennej, jak i jej TYP (oraz np. długość napisu), np. var_dump($x) pokaże int(5) czy string(3) "abc". To podstawowe narzędzie diagnostyczne PHP. Dlatego wartość i typ pokazuje var_dump().

Pytanie 22

Podczas testowania skryptu JavaScript można w konsoli wyświetlać obecnie przechowywane wartości zmiennych przy użyciu funkcji

A. console.log()
B. console.error()
C. console.count()
D. console.warn()
Funkcja console.log() jest najczęściej używaną metodą do wyświetlania informacji w konsoli JavaScript. Umożliwia ona programistom monitorowanie wartości zmiennych w czasie rzeczywistym, co jest niezwykle pomocne podczas debugowania aplikacji. Używając console.log(), można łatwo wprowadzić komunikaty do konsoli, co pozwala na śledzenie zachowań aplikacji oraz identyfikację potencjalnych problemów. Przykładowo, jeśli mamy zmienną 'x' i chcemy zobaczyć jej wartość, wystarczy wpisać console.log(x). Dobre praktyki inżynierii oprogramowania sugerują, aby używać tego narzędzia do logowania istotnych informacji, w tym danych wejściowych oraz wyników operacji, co ułatwia późniejszą analizę i utrzymanie kodu. Ponadto, console.log() jest częścią standardu Web API, co potwierdza jego znaczenie i powszechność w branży. Warto też pamiętać, że nadmierne logowanie może prowadzić do zagracenia konsoli, dlatego kluczowe jest stosowanie tej funkcji w umiarkowany sposób, szczególnie w środowisku produkcyjnym.

Pytanie 23

W tabeli pracownicy zdefiniowano klucz główny jako INTEGER z atrybutami NOT NULL oraz AUTO_INCREMENT. Dodatkowo zdefiniowano kolumny imie oraz nazwisko. W przypadku wykonania poniższej kwerendy SQL wprowadzającej dane, w której pominięto pole klucza, w bazie danych MySQL wystąpi:

INSERT INTO pracownicy (imie, nazwisko) VALUES ('Anna', 'Nowak');
A. dodanie rekordu do tabeli, dla klucza głównego zostanie przypisana kolejna wartość naturalna
B. dodanie rekordu do tabeli, dla klucza głównego zostanie przypisana wartość NULL
C. ignorowanie polecenia, tabela nie ulegnie zmianie
D. błąd związany z nieprawidłową liczbą kolumn
Jak używasz polecenia INSERT w MySQL i masz klucz główny ustawiony jako AUTO_INCREMENT, to system sam zajmie się przydzieleniem nowej, unikalnej wartości dla tego klucza dla każdego nowego rekordu. Kiedy wprowadzasz dane o pracowniku, takie jak imię i nazwisko, to nie musisz martwić się o podawanie wartości klucza głównego. MySQL świetnie to rozumie i dodaje kolejny wolny numer. To jest zgodne z dobrymi praktykami w bazach danych, gdzie klucz główny musi być unikalny dla każdego rekordu, ale niekoniecznie musisz go podawać ręcznie, szczególnie gdy korzystasz z mechanizmu AUTO_INCREMENT. Weźmy na przykład tabelę zamówień – tam każdy nowy wpis automatycznie dostaje unikalny numer zamówienia, co eliminuje ryzyko błędów i ułatwia późniejsze śledzenie danych. Dzięki AUTO_INCREMENT wprowadzanie danych staje się dużo prostsze, a szansa na pomyłki przy manualnym wpisywaniu wartości klucza głównego znacznie maleje.

Pytanie 24

Aby w języku PHP odwołać się do danych formularza przesłanych metodą POST, należy użyć tablicy:

A.
$_SERVER
B.
$_FILES
C.
$_SESSION
D.
$_POST
Dane pól formularza wysłanego metodą POST PHP udostępnia w tablicy superglobalnej $_POST. Odwołujesz się do konkretnego pola po jego atrybucie name, na przykład $_POST["login"]. Jest ona dostępna w każdym miejscu skryptu bez deklarowania. Analogicznie dane wysłane metodą GET trafiają do $_GET. Dlatego do odczytania pól formularza przesłanego przez POST używa się właśnie $_POST.

Pytanie 25

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. wsp.x = …
B. x = …
C. obiekt1::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 26

Która cecha wyróżnia format PNG?

A. brak obsługi kanału alfa
B. obsługa animacji
C. kompresja bezstratna
D. reprezentacja grafiki wektorowej
PNG wyróżnia kompresja BEZSTRATNA - zmniejsza rozmiar pliku bez utraty jakości, dzięki czemu format nadaje się do grafik z ostrymi krawędziami, logo i przezroczystością (obsługuje kanał alfa). Dlatego cechą PNG jest kompresja bezstratna.

Pytanie 27

Za pomocą stylu CSS zdefiniowano obramowanie pojedyncze o następujących kolorach krawędzi:

border: solid 1px;
border-color: red blue green yellow;
Jakie kolory będą miały poszczególne krawędzie?
A. lewa – czerwona, dolna – niebieska, prawa – zielona, górna – żółta.
B. prawa – czerwona, dolna – niebieska, lewa – zielona, górna – żółta.
C. górna – czerwona, lewa – niebieska, dolna – zielona, prawa – żółta.
D. górna – czerwona, prawa – niebieska, dolna – zielona, lewa – żółta.
W tym pytaniu kluczowe jest zrozumienie skróconej składni własności `border-color` w CSS. Gdy podamy cztery wartości kolorów, przeglądarka interpretuje je zawsze w tej samej kolejności: góra (top), prawa (right), dół (bottom), lewa (left). Dokładnie tak samo działa to jak przy `margin` czy `padding`. Czyli zapis `border-color: red blue green yellow;` oznacza: górna krawędź – czerwona, prawa – niebieska, dolna – zielona, lewa – żółta. Styl `border: solid 1px;` określa tylko typ obramowania (ciągła linia) i grubość (1px), ale bez kolorów. Kolory są dopiero dodane przez `border-color`. W praktyce bardzo często używa się tej skróconej notacji, np. żeby wyróżnić jedną krawędź: `border-color: transparent transparent red transparent;` – daje to efekt podkreślenia tylko od dołu. Z mojego doświadczenia w front‑endzie lepiej zapamiętać prostą zasadę: przy czterech wartościach zawsze idziemy zgodnie z ruchem wskazówek zegara, zaczynając od góry: top → right → bottom → left. To się powtarza przy wielu własnościach CSS. Warto też wiedzieć, że można podać mniej wartości: jedną (wszystkie krawędzie ten sam kolor), dwie (góra/dół i prawa/lewa), trzy (góra, prawa/lewa, dół). Jednak w tym zadaniu są cztery, więc każda krawędź ma osobny kolor. Takie podejście jest zgodne ze specyfikacją CSS (box model) i jest powszechnie stosowane w projektach produkcyjnych do tworzenia np. ramek, strzałek, wyróżnień nagłówków czy kart.

Pytanie 28

W analizowanym fragmencie algorytmu wykorzystano

Ilustracja do pytania
A. jedną pętlę.
B. trzy bloki operacyjne (procesy).
C. jeden blok decyzyjny.
D. dwie pętle.
Na tym schemacie blokowym mamy jedną pętlę, co oznacza, że jeden z kroków powtarza się aż do momentu, kiedy spełni się określony warunek. Pętle to podstawa programowania, bo dzięki nim możemy wielokrotnie coś robić, co jest super przydatne. Używamy ich na przykład do sortowania danych w tablicy albo przetwarzania informacji w aplikacjach. Warto pamiętać, żeby nie robić zbyt skomplikowanych pętli, bo mogą potem sprawiać problemy, co do łatwości w utrzymaniu kodu. Dobrze jest też dodawać komentarze do warunków kończących pętle, bo to znacznie poprawia czytelność. Na prezentowanym schemacie pętla jest przedstawiona jako połączenie bloku decyzyjnego z wcześniejszym krokiem, co pokazuje, że proces się powtarza – to całkiem typowe w takich schematach.

Pytanie 29

Jak nazywa się organizacja społeczna, która skupia pracowników oraz chroni ich prawa i interesy zawodowe?

A. związek zawodowy
B. kierownik zakładu
C. komisja BHP
D. Straż Pożarna
Organizacja społeczna skupiająca pracowników i chroniąca ich prawa oraz interesy zawodowe to ZWIĄZEK ZAWODOWY - reprezentuje pracowników wobec pracodawcy, np. w negocjacjach płacowych. Dlatego mowa o związku zawodowym.

Pytanie 30

W bazie danych znajduje się tabela pracownicy z kolumnami: id, imie, nazwisko, pensja. W nadchodzącym roku postanowiono zwiększyć wynagrodzenie wszystkim pracownikom o 100 zł. Zmiana ta w bazie danych będzie miała formę

A. UPDATE pracownicy SET pensja = 100;
B. UPDATE pensja SET 100;
C. UPDATE pracownicy SET pensja = pensja +100;
D. UPDATE pensja SET +100;
W celu podniesienia pensji wszystkim pracownikom o 100 zł, zastosowanie ma polecenie SQL UPDATE. Poprawna instrukcja 'UPDATE pracownicy SET pensja = pensja + 100;' działa na zasadzie modyfikacji istniejących wartości w kolumnie 'pensja' w tabeli 'pracownicy'. Ta konstrukcja przyjmuje bieżącą wartość pensji każdego pracownika i dodaje do niej 100 zł. Jest to standardowa praktyka w SQL, gdzie używamy operatora '+', aby zmodyfikować dane. Warto pamiętać, że takie operacje są powszechnie wykorzystywane w systemach baz danych do aktualizacji informacji, co pozwala na efektywne zarządzanie danymi. Dla porównania, instrukcje SELECT, które służą do pobierania danych, nie są odpowiednie w tym kontekście. W rezultacie każdy pracownik w tabeli otrzyma nową, zwiększoną pensję, co odzwierciedli aktualizację w bazie danych.

Pytanie 31

Na ilustracji przedstawiono strukturę bloków na stronie internetowej. Który z poniższych fragmentów CSS odpowiada takim ustawieniom? (Dla uproszczenia pominięto właściwości dotyczące koloru tła, wysokości oraz czcionki)

Ilustracja do pytania
A. #pierwszy{float:left; width:30%;} #drugi {clear:both; width:70%;} #trzeci {clear:both; width:70%;} #czwarty {float:left; width:100%;}
B. #pierwszy { width: 30%; } #drugi { width: 70%; } #trzeci { width: 70%; } #czwarty { width: 100%; }
C. #pierwszy {float:left; width:30%; } #drugi {clear:both; width:70%; } #trzeci {float:left; width:70%; } #czwarty {clear:both; }
D. #pierwszy {float:left; width:30%;} #drugi {float:left; width:70%;} #trzeci {float:left; width:70%;} #czwarty {clear:both; }
Odpowiedź pierwsza jest prawidłowa, gdyż prawidłowo wykorzystuje właściwość float w stylach CSS, aby uzyskać pożądany układ bloków na stronie internetowej. Float pozwala elementom przemieszczać się na lewą lub prawą stronę kontenera, co jest kluczowe w tworzeniu layoutów. W tym przypadku #pierwszy, #drugi i #trzeci mają ustawione float:left, co umożliwia ich równoległe ustawienie w poziomie aż do momentu, gdy szerokości kontenera są zapełnione. Następnie blok #czwarty wymaga clear:both, aby przemieszczać się poniżej wszystkich poprzednich elementów z ustawionym float. To powszechna technika stosowana w projektowaniu responsywnych układów stron, gdzie równoległe pozycjonowanie elementów pozwala na efektywne wykorzystanie przestrzeni. Float w połączeniu z odpowiednimi szerokościami procentowymi pomaga tworzyć elastyczne projekty, które dobrze skalują się na różnych urządzeniach, co jest zgodne z nowoczesnymi standardami web developmentu. Ponadto zrozumienie działania float i clear jest fundamentem przy tworzeniu klasycznych layoutów typu grid przed wprowadzeniem nowoczesnych rozwiązań takich jak Flexbox czy CSS Grid, co pokazuje zrozumienie podstawowych zasad CSS.

Pytanie 32

Aby strona poprawnie skalowała się na urządzeniach mobilnych, w sekcji <head> należy umieścić:

A.
<meta charset="utf-8">
B.
<link rel="stylesheet">
C.
<title>
D.
<meta name="viewport" content="width=device-width, initial-scale=1">
Znacznik <meta name="viewport" content="width=device-width, initial-scale=1"> mówi przeglądarce mobilnej, że szerokość rzutni (viewport) ma odpowiadać szerokości urządzenia, a strona ma startować w skali 1:1. Bez niego telefon renderuje stronę jako szeroką i pomniejsza ją, przez co media queries nie działają jak należy. Dlatego dla poprawnego skalowania na komórkach niezbędny jest meta viewport.

Pytanie 33

Które narzędzie do zarządzania bazą danych jest wbudowane w pakiet XAMPP?

A. SQLite
B. pgAdmin
C. phpMyAdmin
D. MySQL Workbench
Pakiet XAMPP (Apache, MySQL/MariaDB, PHP) zawiera wbudowane narzędzie phpMyAdmin do zarządzania bazą przez przeglądarkę - tworzenia baz, tabel i uruchamiania zapytań. Dlatego w XAMPP znajdziesz phpMyAdmin.

Pytanie 34

W języku JavaScript zmienna i, która ma przechowywać wynik dzielenia równy 1, powinna być zadeklarowana jako

A. var i = Number(3/2)
B. var i = parseFloat(3/2)
C. var i = parseInt(3/2)
D. var i = 3/2
Odpowiedź "var i = parseInt(3/2);" jest prawidłowa, ponieważ funkcja parseInt konwertuje podaną wartość na liczbę całkowitą, w tym przypadku wynik dzielenia 3/2 wynosi 1.5. Funkcja ta zaokrągla wynik w dół do najbliższej liczby całkowitej, co skutkuje wartością 1, która jest następnie przypisywana do zmiennej i. W praktyce, użycie parseInt jest często spotykane w sytuacjach, gdy zachodzi potrzeba uzyskania liczby całkowitej z wartości zmiennoprzecinkowej, na przykład podczas obliczeń wymagających całkowitych jednostek, takich jak liczba produktów w koszyku. Ponadto, ważne jest również, aby rozumieć, że parseInt przyjmuje drugi argument, który określa podstawę liczbową, co jest zgodne z najlepszymi praktykami programistycznymi, aby unikać niejednoznaczności w interpretacji wartości. W związku z tym, używanie parseInt w kontekście takich operacji jest zgodne z dobrymi praktykami programistycznymi i pozwala na uniknięcie nieprzewidzianych błędów w obliczeniach.

Pytanie 35

W jakim formacie powinien być zapisany obraz, aby mógł być wyświetlany na stronie internetowej z zachowaniem przezroczystości?

A. CDR
B. BMP
C. PNG
D. JPG
Format PNG (Portable Network Graphics) jest szeroko stosowany w sieci internetowej, ponieważ obsługuje przezroczystość, co jest kluczowe przy tworzeniu grafik, które mają być używane na stronach internetowych. Przezroczystość pozwala na nałożenie grafik na różne tła bez widocznych prostokątów czy kolorowych krawędzi, co znacznie poprawia estetykę oraz elastyczność projektów graficznych. PNG wykorzystuje kompresję bezstratną, co oznacza, że jakość obrazu nie ulega pogorszeniu podczas jego zapisywania, co jest istotne dla profesjonalnych projektów. Przykłady zastosowania formatu PNG obejmują ikony, logotypy oraz różnego rodzaju ilustracje, które muszą być wyświetlane na różnych tłach. W branży internetowej dobrym standardem jest używanie PNG do grafik wymagających przezroczystości, szczególnie w kontekście responsywnych projektów, gdzie różne elementy mogą mieć różne tła w zależności od urządzenia. Ponadto, PNG obsługuje kolor 24-bitowy oraz przezroczystość 8-bitową, co daje możliwość tworzenia bardziej złożonych efektów wizualnych. Zastosowanie tego formatu jest zgodne z dobrymi praktykami w projektowaniu stron, co czyni go preferowanym wyborem w wielu sytuacjach.

Pytanie 36

Którą funkcją PHP przekierować użytkownika na inną stronę?

A.
include();
B.
upload();
C.
require();
D.
header();
require() i include() DOŁĄCZAJĄ zawartość innego pliku do skryptu, a nie przekierowują przeglądarki. upload() nie jest funkcją PHP. Przekierowanie wykonuje header().

Pytanie 37

W języku JavaScript rezultat wykonania polecenia zmienna++; będzie identyczny jak polecenia

A. zmienna --;
B. zmienna+=1;
C. zmienna===zmienna+1;
D. zmienna=zmienna+10;
W języku JavaScript operator inkrementacji '++' zwiększa wartość zmiennej o 1. Zapis 'zmienna++' jest równoważny z 'zmienna += 1', ponieważ obydwa polecenia prowadzą do tej samej końcowej wartości zmiennej. Operator '+=' to skrót, który dodaje wartość po prawej stronie operatora do aktualnej wartości zmiennej. Warto nadmienić, że 'zmienna++' działa w trybie post-inkrementacji, co oznacza, że zwraca pierwotną wartość przed inkrementacją, podczas gdy '++zmienna' działa w trybie pre-inkrementacji, zwracając wartość po inkrementacji. Przykładowo, jeśli zmienna wynosi 5, to po zastosowaniu 'zmienna++' jej nowa wartość stanie się 6, a jej wartość zwracana to 5. Zastosowanie operatora '+=' jest zgodne z ECMAScript, standardem, na którym oparty jest JavaScript. Użycie tych operatorów jest powszechne w programowaniu, zwłaszcza w iteracjach i obliczeniach. Przykładając to do praktyki, w kodzie można zobaczyć takie zastosowanie: let x = 5; x++; console.log(x); // wypisze 6, a let y = 5; y += 1; console.log(y); // również wypisze 6.

Pytanie 38

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

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

Pytanie 39

Który kod szesnastkowy oznacza kolor żółty (w RGB: czerwony + zielony)?

A.
#FFFF00
B.
#F0F0F0
C.
#FF00FF
D.
#00FFFF
W modelu RGB żółty powstaje z pełnej czerwonej i pełnej zielonej, bez niebieskiej - czyli #FFFF00 (FF czerwony, FF zielony, 00 niebieski). To addytywne mieszanie świateł: czerwone + zielone światło daje żółte. Zapamiętaj: żółty = R i G na maksa, B na zero.

Pytanie 40

Język JavaScrypt umożliwia obsługę

A. wysyłania ciastek z identycznymi informacjami do wielu klientów strony
B. funkcji wirtualnych
C. obiektów DOM
D. klas abstrakcyjnych
Obsługa funkcji wirtualnych nie jest częścią języka JavaScript, ponieważ ten język nie obsługuje typów i mechanizmów programowania obiektowego w sposób, w jaki robią to inne języki, takie jak C++ czy Java. JavaScript nie posiada koncepcji 'wirtualnych funkcji', które są charakterystyczne dla języków, które implementują mechanizmy dziedziczenia oparte na klasach. W JavaScript, programowanie obiektowe opiera się na prototypach, co oznacza, że obiekty mogą dziedziczyć właściwości i metody bez użycia wirtualnych funkcji, co czyni to pojęcie nieadekwatnym w kontekście tego języka. Ponadto, klasa abstrakcyjna jest także pojęciem, które jest źle zrozumiane w kontekście JavaScript. W rzeczywistości, JavaScript nie wspiera klas abstrakcyjnych w tradycyjnym sensie znanym z języków statycznie typowanych. Wprowadzenie klas w ECMAScript 6 dodało nową składnię, ale nie zmieniło fundamentalnej natury języka. JavaScript nie wymusza implementacji metod w klasach pochodnych, co jest kluczowym aspektem klas abstrakcyjnych. Wreszcie, kwestia wysyłania ciastek z tą samą informacją do wielu klientów stron internetowych odnosi się bardziej do mechanizmów serwerowych i zarządzania sesjami niż do samego języka JavaScript. JavaScript działa głównie po stronie klienta, a ciasteczka są zarządzane przez przeglądarki internetowe, gdzie mogą być ustalane przez skrypty, ale samo wysyłanie ciasteczek do klientów nie jest bezpośrednio związane z jego funkcjonalnością. Te aspekty techniczne ukazują, dlaczego podane odpowiedzi nie są poprawne w kontekście pytania o obsługę JavaScript.