Wyniki egzaminu

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

Egzamin zdany!

Wynik: 31/40 punktów (77,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

Który z poniższych wpisów w dokumencie HTML umożliwia połączenie z zewnętrznym arkuszem stylów o nazwie style.css?

A. <a href="/style.css">
B. <a src="/style.css">
C. <link rel="stylesheet" href="/style.css">
D. <link rel="stylesheet' src="/style.css">
Czyli tak, zapis <link rel="stylesheet" href="/style.css"> to rzeczywiście dobry sposób na dodanie arkusza stylów zewnętrznych do HTML-a. Element <link> jest super dołączany do zewnętrznych zasobów, a ten atrybut rel mówi przeglądarce, co tak naprawdę dołączamy – w tym wypadku arkusz stylów CSS. Jak ustalamy rel="stylesheet", to mówimy przeglądarce: hej, ten plik to CSS. A atrybut href? No, on wskazuje, gdzie ten plik się znajduje, tutaj to będzie style.css w głównym katalogu serwera. Fajnie jest mieć zewnętrzne arkusze stylów, ponieważ to uporządkowuje nam kod. Możemy zmieniać style w jednym pliku, a nie bawić się w edytowanie każdej strony z osobna. Dodatkowo, przeglądarki mogą buforować te pliki, co przyspiesza ładowanie. No i nie zapominaj o dobrej organizacji plików i sensownych nazwach – to naprawdę ułatwia późniejsze życie z projektem.

Pytanie 2

W skrypcie JavaScript operatory: ||, && są klasyfikowane jako operatorzy

A. logicznymi
B. bitowe
C. arytmetyczne
D. przypisania
Operatory || (OR logiczny) oraz && (AND logiczny) w języku JavaScript należą do grupy operatorów logicznych. Używają ich programiści do prowadzenia operacji na wartościach boolowskich (true/false), co jest kluczowe w tworzeniu warunków w instrukcjach warunkowych i pętlach. Operator && zwraca true, jeśli obie jego operandy są prawdziwe, natomiast operator || zwraca true, gdy przynajmniej jedna z operand jest prawdziwa. Przykładem praktycznego zastosowania operatora && może być sprawdzanie, czy użytkownik jest zalogowany i ma odpowiednie uprawnienia do wykonania danej operacji. Z kolei operator || może być użyty do wyświetlenia komunikatu, jeśli użytkownik nie podał danych, bądź podał niewłaściwe wartości. Dobrze jest stosować te operatory w kontekście logiki programowania, co pozwala na tworzenie bardziej złożonych, ale jednocześnie czytelnych i efektywnych warunków. Warto również pamiętać, aby w kodzie unikać zbyt skomplikowanych warunków, co może prowadzić do trudności w utrzymaniu kodu oraz zwiększać ryzyko błędów.

Pytanie 3

Jaki typ mechanizmu zapewnienia bezpieczeństwa podczas uruchamiania aplikacji jest zawarty w środowisku .NET Framework?

A. Mechanizm wykonywania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
B. Mechanizm wykonywania aplikacji dla bibliotek klas
C. Mechanizm wykonywania aplikacji realizowany przez frameworki aplikacji webowych (ASP.NET)
D. Mechanizm wykonywania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security)
Odpowiedź wskazująca na mechanizm oparty na uprawnieniach kodu (CAS - Code Access Security) oraz rolach (RBS - Role-Based Security) jest poprawna, ponieważ .NET Framework implementuje te mechanizmy w celu zapewnienia bezpieczeństwa aplikacji. CAS pozwala na kontrolowanie dostępu do zasobów systemowych na podstawie tożsamości i uprawnień kodu. To oznacza, że aplikacje mogą działać w ograniczonym środowisku, w którym mogą mieć dostęp tylko do tych zasobów, które zostały im jawnie przydzielone, co minimalizuje ryzyko nieautoryzowanego dostępu. RBS natomiast umożliwia przypisywanie uprawnień na podstawie ról użytkowników, co ułatwia zarządzanie bezpieczeństwem w aplikacjach, zwłaszcza w kontekście aplikacji wieloużytkownikowych. Przykładem zastosowania CAS może być aplikacja, która korzysta z zasobów sieciowych - może być skonfigurowana tak, aby nie miała dostępu do lokalnych plików użytkownika, co zabezpiecza przed nieautoryzowanym odczytem danych. W branży, stosowanie CAS i RBS jest zgodne z najlepszymi praktykami zarządzania bezpieczeństwem, które zalecają ograniczanie dostępu do zasobów na zasadzie minimalnych uprawnień.

Pytanie 4

Jaką właściwość pola w tabeli powinno się ustawić, aby akceptowało ono wyłącznie dane liczbowe?

Ilustracja do pytania
A. Tagi inteligentne
B. Wartość domyślną
C. Regułę sprawdzania poprawności
D. Maskę wprowadzania
Maska wprowadzania to opcja pozwalająca na zdefiniowanie wzorca, według którego użytkownicy mogą wprowadzać dane do pola w bazie danych. W przypadku konieczności przyjmowania wyłącznie cyfr, maska wprowadzania może ograniczyć użytkownika do wpisywania numerów, co jest szczególnie przydatne w aplikacjach wymagających precyzyjnego formatu danych, takich jak numery telefonów, kody pocztowe czy numery identyfikacyjne. Maska zapewnia spójność danych oraz minimalizuje ryzyko błędnych wpisów. Przykładowo, maska 0000-000-000 może być użyta do wymuszenia formatu numeru telefonu, gdzie każda liczba 0 reprezentuje wymaganą cyfrę. W branży IT oraz w procesie projektowania systemów bazodanowych, takie rozwiązania przyczyniają się do podniesienia jakości danych oraz upraszczają proces ich przetwarzania. Stosowanie masek wprowadzania jest zgodne z najlepszymi praktykami w dziedzinie zarządzania danymi, które podkreślają znaczenie walidacji danych na poziomie aplikacji oraz baz danych, aby uniknąć nieprawidłowych lub niekompletnych danych w systemie.

Pytanie 5

W języku JavaScript, w programowaniu obiektowym, zapis this.zawod w przedstawionym kodzie oznacza

function Uczen(){
  this.imie = "";
  this.nazwisko = "";
  this.technik = 'informatyk';
  this.zawod = function(){
    return this.technik;
  };
}
A. klasę
B. metodę
C. konstruktor
D. właściwość
W JavaScript programowanie obiektowe działa trochę inaczej niż w innych językach. W tym kodzie, zapis this.zawod wskazuje, że mamy do czynienia z metodą obiektu. Po prostu, metoda to funkcja przypisana do właściwości obiektu, która może korzystać z danych w obiekcie. Używając this, mamy dostęp do innych właściwości. W tym przypadku, funkcja pod this.zawod zwraca wartość this.technik, co ładnie pokazuje, jak metody mogą zmieniać dane obiektu. To jest właśnie cała filozofia programowania obiektowego, gdzie logika jest umieszczona w funkcjach związanych z danymi. To sprawia, że kod jest bardziej modułowy i łatwiejszy do ogarnięcia. W pracy w zespole dobrze jest, jak nazwy metod mówią, co robią, bo to bardzo pomaga innym zrozumieć, co się dzieje w kodzie.

Pytanie 6

Tabela o nazwie naprawy zawiera kolumny: klient, czyNaprawione. Jakie polecenie należy użyć, aby wykasować rekordy, w których pole czyNaprawione ma wartość prawdziwą?

A. DELETE klient FROM naprawy WHERE czyNaprawione = TRUE;
B. DELETE naprawy WHERE czyNaprawione = TRUE;
C. DELETE FROM naprawy WHERE czyNaprawione = TRUE;
D. DELETE FROM naprawy;
Poprawna odpowiedź to 'DELETE FROM naprawy WHERE czyNaprawione = TRUE;'. To polecenie SQL jest zgodne z syntaksą używaną do usuwania rekordów z tabeli, gdzie spełniony jest określony warunek. W tym przypadku, usuwamy wszystkie rekordy z tabeli 'naprawy', dla których pole 'czyNaprawione' ma wartość TRUE. Użycie słowa kluczowego 'FROM' jest niezbędne, aby wskazać, z której tabeli chcemy usunąć dane. Przykładowo, jeśli w tabeli 'naprawy' mamy wielu klientów, z którymi nie zostały jeszcze dokonane naprawy, a chcemy zachować tylko te, które zostały zakończone, takie polecenie jest idealne. W praktyce, stosowanie takich zapytań jest istotne, aby utrzymywać bazę danych w porządku i eliminować nieaktualne informacje. Ponadto, zgodnie z dobrymi praktykami, przed wykonaniem polecenia DELETE warto wykonać zapytanie SELECT z tym samym warunkiem, aby zobaczyć, które rekordy zostaną usunięte.

Pytanie 7

Jakie formatowanie obramowania jest zgodne ze stylem border-style: dotted solid;?

Ilustracja do pytania
A. Formatowanie 4
B. Formatowanie 3
C. Formatowanie 1
D. Formatowanie 2
Styl obramowania w CSS pozwala na precyzyjne określenie wyglądu krawędzi elementu na stronie internetowej. W przypadku „border-style: dotted solid;” mamy do czynienia z kombinacją dwóch różnych stylów obramowania. Pierwsza wartość „dotted” odnosi się do obramowania o kropkowanej strukturze, co jest często stosowane w celu nadania lekkości i subtelności wizualnej. Druga wartość „solid” oznacza jednolite obramowanie, które jest bardziej wyraźne i stosowane, gdy wymagana jest wyraźna separacja elementów. Formatowanie 2 odpowiada właśnie temu stylowi, ponieważ przedstawia górne i dolne obramowanie jako kropkowane, a boczne jako jednolite. Takie zastosowanie jest typowe w sytuacjach, gdzie potrzebny jest kompromis między estetyką a funkcjonalnością, np. w tabelach danych, gdzie górne i dolne obramowanie może być delikatniejsze, by nie przytłaczać, a boczne wyraźne dla czytelności. Wybór właściwego stylu obramowania jest kluczowy dla użyteczności i estetyki strony, zgodnie z zasadami projektowania zorientowanego na użytkownika.

Pytanie 8

Poniżej zaprezentowano fragment kodu w języku HTML:
<ol>
<li>punkt 1</li>
<li>punkt 2</li>
<ul>
<li>podpunkt1</li>
<li>podpunkt2</li>
<li>podpunkt3</li>
</ul>
<li>punkt3</li>
</ol>

A. 1. punkt 1 2. punkt 2 podpunkt1 podpunkt2 podpunkt3 punkt3
B. 1. punkt 1 2. punkt 2 3. punkt3 podpunkt1 podpunkt2 podpunkt1
C. 1. punkt 1 2. punkt 2 podpunkt1 podpunkt2 podpunkt1 3. punkt3
D. punkt 1 punkt 2 podpunkt1 podpunkt2 podpunkt3 punkt3
Widzisz, w niektórych odpowiedziach pojawiły się błędy, które mogą wprowadzać zamieszanie. Na przykład, użycie <il> zamiast <ul> to spory błąd, bo w HTML nie mamy elementu <il>. To może spowodować problemy z wyświetlaniem strony w przeglądarkach. I w paru przypadkach z kolejnością podpunktów było nie tak – pamiętaj, że hierarchia jest ważna. Dobrze zdefiniowane listy powinny mieć swoje konteksty, czyli otaczać je tagami <ol> lub <ul>. Każdy błąd w tym zakresie może utrudnić nawigację po stronie, zwłaszcza dla osób z niepełnosprawnościami. Ogólnie rzecz biorąc, warto dbać o porządek w HTML, bo to jest kluczowe w tworzeniu stron, które są użyteczne i funkcjonalne.

Pytanie 9

Jakie polecenie pozwala na zwiększenie wartości o jeden w kolumnie RokStudiów w tabeli Studenci dla uczniów, którzy są na roku 1÷4?

A. UPDATE Studenci SET RokStudiow WHERE RokStudiow < 5
B. UPDATE Studenci, RokStudiow+1 WHERE RokStudiow < 5
C. UPDATE RokStudiow SET RokStudiow++ WHERE RokStudiow < 5
D. UPDATE Studenci SET RokStudiow = RokStudiow+1 WHERE RokStudiow < 5
Odpowiedzi, które nie są zgodne z właściwą składnią i logiką SQL, prowadzą do nieprawidłowych aktualizacji w bazie danych. Pierwsze podejście, 'UPDATE Studenci, RokStudiow+1 WHERE RokStudiow < 5;', jest błędne, ponieważ nie wykorzystuje poprawnej struktury polecenia UPDATE. W SQL należy określić kolumnę, która ma być zaktualizowana, a nie używać dodatkowego wyrażenia w sekcji FROM. Drugie podejście, 'UPDATE Studenci SET RokStudiow WHERE RokStudiow < 5;', jest również niekompletne, ponieważ brakuje w nim informacji o nowej wartości, którą należy przypisać. W tym przypadku, SET wymaga zarówno kolumny, jak i nowej wartości. Z kolei trzecia odpowiedź, 'UPDATE RokStudiow SET RokStudiow++ WHERE RokStudiow < 5;', nie jest zgodna z składnią SQL, jako że operator '++' nie jest uznawany w standardzie SQL. Błędy te często wynikają z niewłaściwego zrozumienia, jak działa aktualizacja danych w SQL, co może prowadzić do niepoprawnych lub nieefektywnych zapytań. Kluczowym elementem jest znajomość standardów SQL i praktyczne umiejętności ich stosowania w codziennych operacjach zarządzania danymi.

Pytanie 10

Co uzyskujemy po wykonaniu zapytania SQL?

Ilustracja do pytania
A. suma ocen uczniów, których średnia ocen wynosi 5
B. całkowitą liczbę uczniów
C. liczbę uczniów, których średnia ocen wynosi 5
D. średnią wszystkich ocen uczniów
Zapytanie SQL SELECT count(*) FROM Uczniowie WHERE srednia = 5; wykorzystuje funkcję agregującą count(*), która służy do zliczania liczby wierszy spełniających określone warunki. W tym przypadku warunkiem jest srednia = 5 co oznacza że zapytanie zlicza wszystkich uczniów których średnia ocen wynosi dokładnie 5. Jest to powszechna praktyka w analizie danych gdzie często potrzebujemy określić liczebność pewnych grup danych na przykład aby przeanalizować ich rozkład lub porównać je z innymi grupami. W profesjonalnej bazie danych zliczanie wierszy na podstawie kryteriów jest standardem co umożliwia generowanie raportów i podejmowanie decyzji na podstawie danych. Użycie count(*) bez dodatkowych parametrów jest zgodne z dobrymi praktykami ponieważ jest wydajne i łatwe w interpretacji. W praktyce stosowanie tego typu zapytań jest nieodzowne w działach analizy danych zarządzania relacjami z klientami czy w edukacji gdzie analizujemy wyniki uczniów.

Pytanie 11

Jakie polecenie należy zastosować, aby w trakcie tworzenia tabeli dodać klucz obcy obejmujący wiele kolumn?

A. CONSTRAINT fk_osoba_uczen FOREIGN KEY (nazwisko, imie) REFERENCES osoby (nazwisko,imie)
B. CONSTRAINT fk_osoba_uczen FOREIGN KEY ON (nazwisko, imie) REFERENCES osoby (nazwisko,imie)
C. CONSTRAINT(nazwisko,imie) FOREIGN REFERENCES KEY osoby (nazwisko, imie)
D. CONSTRAINT(nazwisko,imie) FOREIGN KEY REFERENCES osoby (nazwisko, imie)
Odpowiedź 'CONSTRAINT fk_osoba_uczen FOREIGN KEY (nazwisko, imie) REFERENCES osoby (nazwisko,imie)' jest poprawna, ponieważ poprawnie definiuje klucz obcy na wielu kolumnach. Klucz obcy jest używany do ustanawiania relacji między tabelami, co jest kluczowe w modelowaniu danych w relacyjnych bazach danych. W tym przypadku, 'fk_osoba_uczen' to nazwa ograniczenia, która pozwala na łatwe identyfikowanie klucza obcego w przyszłości. Wskazanie wielu kolumn w nawiasach po słowie kluczowym 'FOREIGN KEY' jasno określa, które kolumny tworzą klucz obcy w tabeli, podczas gdy 'REFERENCES osoby (nazwisko, imie)' precyzuje, że te kolumny odnoszą się do kolumn w tabeli 'osoby'. Tego rodzaju konstrukcja jest zgodna ze standardami SQL i dobrymi praktykami, ponieważ umożliwia zachowanie integralności danych oraz zapewnia spójność między związaną tabelą a tabelą główną. Przykładowo, gdy mamy rekordy ucznia i chcemy, aby każdy uczeń był powiązany z jego rodzicem w tabeli 'osoby', dobrze zdefiniowany klucz obcy z użyciem wielu kolumn zapobiegnie wprowadzeniu nieprawidłowych danych. Zastosowanie tej techniki ułatwia także późniejsze zapytania do bazy danych oraz zapewnia lepszą organizację danych.

Pytanie 12

Fragment kodu SQL wskazuje, że klucz obcy

FOREIGN KEY (imie) REFERENCES obiekty (imiona) …
A. wiąże się z kolumną imiona
B. znajduje się w tabeli obiekty
C. jest odniesieniem do siebie samego
D. jest przypisany do kolumny obiekty
Próba interpretacji klucza obcego jako referencji do samego siebie jest niepoprawna, ponieważ klucz obcy w SQL zasadniczo odnosi się do kolumny w innej tabeli, a nie do tej samej tabeli. W rzeczywistości, klucz obcy może być zdefiniowany w obrębie tej samej tabeli, co nazywa się rekurencyjnym kluczem obcym, ale w przedstawionym przypadku odnosi się on do kolumny w tabeli 'obiekty'. Odpowiedź sugerująca, że klucz obcy znajduje się w tabeli 'obiekty' jest myląca, ponieważ definicja klucza obcego nie dotyczy miejsca jego przechowywania, lecz relacji między tabelami. Z kolei stwierdzenie, że klucz obcy jest ustawiony na kolumnie 'obiekty' również jest błędne, ponieważ odnosi się do kolumny 'imiona', co jest kluczowym punktem w zrozumieniu struktury relacyjnych baz danych. Klucz obcy powinien zawsze odnosić się do klucza podstawowego innej tabeli, co ma na celu zapewnienie integralności referencyjnej. Typowe błędy myślowe, które prowadzą do takich nieprawidłowych wniosków, obejmują niepełne zrozumienie koncepcji relacji tabelarycznych oraz mylenie kluczy podstawowych i obcych.

Pytanie 13

Mamy do czynienia z tablicą o nazwie tab, która zawiera liczby całkowite różniące się od zera. Zawarty w języku PHP kod ma na celu:

foreach ($tab as &$liczba)
    $liczba = $liczba * (-1);
unset($liczba);
A. przekształcić elementy tablicy na wartości zapisane w zmiennej liczba
B. obliczyć wartość bezwzględną elementów tej tablicy
C. zmienić wszystkie elementy tablicy na liczby o przeciwnym znaku
D. wyliczenie iloczynu wszystkich wartości w tablicy
Odpowiedź jest prawidłowa, ponieważ przedstawiony kod w języku PHP używa pętli foreach do iteracji po tablicy o nazwie tab. Dzięki zastosowaniu operatora & przed nazwą zmiennej $liczba, zmienna ta jest przekazywana przez referencję. Oznacza to, że każda modyfikacja dokonywana na zmiennej $liczba wpływa bezpośrednio na odpowiedni element tablicy. Wewnątrz pętli każda liczba w tablicy jest mnożona przez -1, co skutkuje zmianą jej znaku na przeciwny. W praktyce taka operacja jest powszechnie stosowana, gdy istnieje potrzeba szybkiej zmiany wszystkich wartości w strukturze danych na ich negatywne odpowiedniki, na przykład w algorytmach matematycznych lub finansowych. Istotnym aspektem jest również unikanie modyfikacji oryginalnych danych, co jest kluczowe w procesie przetwarzania danych. Po zakończeniu pętli unset($liczba) usuwa referencję, aby uniknąć niepożądanych efektów ubocznych. Takie podejście jest zgodne z dobrymi praktykami programowania, które kładą nacisk na zarządzanie pamięcią i poprawność danych.

Pytanie 14

W SQL, używanym w bazie danych MySQL, aby przypisać wartość 0 do kolumny przebieg w tabeli samochody, jaką kwerendę należy zastosować?

A. UPDATE samochody SET przebieg = 0
B. UPDATE samochody SET przebieg VALUE 0
C. UPDATE przebieg SET 0 TABLE samochody
D. UPDATE przebieg SET 0 FROM samochody
Odpowiedź 'UPDATE samochody SET przebieg = 0;' jest jak najbardziej trafna! W SQL używamy klauzuli UPDATE, gdy chcemy coś zmienić w naszej tabeli. W tym konkretnym przypadku ustawiamy wartość kolumny 'przebieg' na 0 dla wszystkich samochodów. Fajne jest to, że operator '=' oznacza, iż zmieniamy wartość w wybranej kolumnie. To podstawa, żeby dobrze zarządzać danymi w bazach. Warto też pomyśleć, czy naprawdę chcemy zmieniać wszystkie rekordy, czy tylko część. Można to zrobić z klauzulą WHERE. Na przykład, jeśli chcemy ustawić przebieg na 0 tylko dla aut konkretnego producenta, to użyjemy: 'UPDATE samochody SET przebieg = 0 WHERE producent = 'NazwaProducenta'. Takie działania powinny być w kontekście transakcji, żeby móc cofnąć zmiany, jeśli coś pójdzie nie tak. Rozumienie tej kwerendy to klucz do zarządzania danymi w MySQL i innych systemach.

Pytanie 15

Aby umieścić plik wideo na stronie internetowej z widocznymi przyciskami sterującymi oraz zapętlonym odtwarzaniem, należy w znaczniku <video> użyć atrybutów

A. controls i loop
B. loop i muted
C. controls i autoplay
D. autoplay i preload
Odpowiedź "controls i loop" jest całkiem dobra, bo te dwa atrybuty są naprawdę istotne, żeby wideo działało jak należy na stronie. Atrybut "controls" dodaje do odtwarzacza przyciski, które pozwalają na zatrzymywanie, odtwarzanie i regulowanie głośności, co jest bardzo wygodne dla ludzi. Z kolei "loop" sprawia, że filmik odtwarza się w kółko, co może być super użyteczne, szczególnie w prezentacjach albo reklamach, które chcemy pokazać kilka razy. Przykładowo, <video src='video.mp4' controls loop> wstawia wideo z przyciskami, które można łatwo obsługiwać, no i od razu się zapętla. W ogóle, korzystanie z tych atrybutów to dobra praktyka, bo sprawia, że strony są bardziej przyjazne dla użytkowników oraz poprawia ich doświadczenia.

Pytanie 16

Rozdzielczość obrazów cyfrowych wyświetlanych na ekranie monitora wyrażona w liczbie pikseli na cal określa jednostka

A. ppi
B. dpi
C. lpi
D. spi
Prawidłowa odpowiedź to ppi, czyli pixels per inch. Ta jednostka opisuje, ile pikseli przypada na jeden cal długości ekranu i dotyczy konkretnie wyświetlaczy: monitorów, ekranów laptopów, smartfonów, tabletów. W praktyce ppi mówi o gęstości pikseli na ekranie, a więc o tym, jak „ostry” będzie obraz przy danej fizycznej wielkości wyświetlacza. Dwa monitory mogą mieć tę samą rozdzielczość w pikselach (np. 1920×1080), ale inne ppi, jeśli mają różne przekątne. Ten o mniejszej przekątnej będzie miał większe ppi, czyli obraz będzie wyglądał na bardziej szczegółowy. W projektowaniu grafiki na potrzeby WWW przyjmuje się, że kluczowa jest właśnie liczba pikseli w poziomie i pionie oraz fizyczne ppi ekranu użytkownika. Moim zdaniem warto pamiętać, że ppi dotyczy świata ekranów i interfejsów użytkownika, a nie druku. W wielu programach graficznych, gdy tworzysz layout strony, ikonę, element UI, ustawienie ppi pliku ma znaczenie głównie przy podglądzie na różnych urządzeniach, a nie dla samego kodu HTML/CSS. Przeglądarka i tak operuje na pikselach logicznych. Jednak przy projektowaniu responsywnym dobrze kojarzyć ppi z pojęciami takimi jak „retina” czy „HiDPI” – tam po prostu zwiększa się gęstość pikseli, dzięki czemu grafika wygląda ostrzej, ale wymaga to przygotowania obrazów w wyższej rozdzielczości. W branży przyjęło się mówić, że ppi to parametr urządzenia wyświetlającego, a nie pliku, i to jest bardzo zdrowe podejście przy pracy z grafiką na potrzeby stron WWW.

Pytanie 17

W bazie danych sklepu internetowego, w tabeli klienci znajdują się m.in. pola całkowite: punkty, liczbaZakupow oraz pole ostatnieZakupy o typie DATE. Klauzula WHERE dla zapytania wybierającego klientów, którzy mają ponad 3000 punktów lub dokonali zakupów więcej niż 100 razy, a ich ostatnie zakupy miały miejsce co najmniej w roku 2022, przyjmuje postać

A. WHERE (punkty > 3000 OR liczbaZakupow > 100) AND ostatnieZakupy >= '2022-01'
B. WHERE punkty > 3000 OR liczbaZakupow > 100 OR ostatnieZakupy >= '2022-01-01'
C. WHERE punkty > 3000 AND liczbaZakupow > 100 OR ostatnieZakupy >= '2022-01-01'
D. WHERE punkty > 3000 AND liczbaZakupow > 100 AND ostatnieZakupy >= '2022-01-01'
Odpowiedź ta jest poprawna, ponieważ zastosowano w niej właściwą logikę warunków w klauzuli WHERE. Aby wybrać klientów, którzy spełniają co najmniej jeden z dwóch pierwszych warunków (posiadają więcej niż 3000 punktów lub wykonali więcej niż 100 zakupów), używamy operatora OR. Z kolei ostatni warunek, dotyczący daty ostatnich zakupów, musi łączyć się z poprzednimi za pomocą operatora AND. Oznacza to, że aby klient został uwzględniony w wynikach, musi spełniać przynajmniej jeden z warunków dotyczących punktów lub liczby zakupów, a równocześnie musi mieć ostatnie zakupy dokonane w roku 2022 lub później. Takie podejście jest zgodne z dobrymi praktykami w SQL, w których operator OR jest wykorzystywany do łączenia warunków alternatywnych, a AND do warunków koniecznych. Na przykład, jeśli chcemy analizować dane klientów w kontekście programów lojalnościowych, takie zapytanie pozwoliłoby nam na wyodrębnienie najbardziej aktywnych klientów, co może być przydatne przy planowaniu kampanii marketingowych.

Pytanie 18

Styl ten generuje pojedyncze obramowanie, które charakteryzuje się następującymi właściwościami:

border: solid 1px;
border-color: red blue green yellow;
A. krawędź górna ma kolor czerwony, krawędź prawa jest w kolorze niebieskim, krawędź dolna ma kolor zielony, krawędź lewa jest koloru żółtego
B. krawędź prawa jest koloru czerwonego, krawędź dolna ma kolor niebieski, krawędź lewa ma kolor zielony, krawędź górna ma kolor żółty
C. krawędź lewa ma kolor czerwony, krawędź dolna jest w kolorze niebieskim, krawędź prawa jest koloru zielonego, krawędź górna ma kolor żółty
D. krawędź górna jest czerwonego koloru, krawędź lewa jest w kolorze niebieskim, krawędź dolna ma kolor zielony, krawędź prawa ma kolor żółty
Błędne zrozumienie przypisania kolorów do krawędzi obramowania w CSS wynika z niewłaściwego interpretowania kolejności, w jakiej te kolory są przypisywane. W standardach CSS, kiedy używamy składni takiej jak border-color: red blue green yellow; kolory są przypisywane zaczynając od krawędzi górnej, a następnie zgodnie z kierunkiem wskazówek zegara. Stąd czerwona krawędź to górna, niebieska to prawa, zielona to dolna, a żółta to lewa. Błędne odpowiedzi wynikają z niepoprawnego przypisania kolorów do krawędzi w innej kolejności. Typowym błędem jest myślenie, że kolory są przypisane w porządku lewa-prawa-dół-góra, co jest sprzeczne z domyślną kolejnością CSS. Bez poprawnego zrozumienia tej logiki, projektanci mogą doświadczyć trudności w przewidywaniu jakich efektów wizualnych oczekiwać od swojej pracy, co może prowadzić do błędów w projektach. Aby uniknąć takich problemów, kluczowe jest zapoznanie się i zrozumienie zasad określających jak style CSS są interpretowane przez przeglądarki, co pozwala na pełne wykorzystanie możliwości jakie oferują style kaskadowe. Poprawne stosowanie tych zasad jest niezbędne do tworzenia profesjonalnych i spójnych projektów internetowych, które są zgodne z najlepszymi praktykami w branży.

Pytanie 19

W firmowej tabeli znajdują się kolumny: nazwa, adres, NIP, obrót (obrót w ostatnim miesiącu), rozliczenie oraz status. Po wykonaniu kwerendy SQL

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
na ekranie pojawią się:
A. wszystkie informacje o firmach, które w ostatnim miesiącu uzyskały obrót co najmniej 4000 zł
B. wszystkie informacje o firmach, które w ostatnim miesiącu miały obrót poniżej 4000 zł
C. tylko nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł
D. tylko nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł
W tej kwerendzie SQL chodziło o to, aby zrozumieć, że zapytanie 'SELECT nazwa, NIP FROM firmy WHERE obrót < 4000;' zwróci tylko nazwy firm i ich numery NIP. Tylko te firmy, co miały obrót poniżej 4000 zł w ostatnim miesiącu. SQL jako język zapytań daje nam możliwość wybierania konkretnych kolumn z tabeli i filtrowania wyników według różnych warunków. Tu wybraliśmy kolumny 'nazwa' i 'NIP', a filtr 'WHERE obrót < 4000' pokazuje nam tylko te firmy, które spełniają ten warunek. To bardzo ważne w praktycznym użyciu SQL, bo często musimy wyświetlać dane według określonych kryteriów. Dzięki temu zapytaniu łatwo możemy zidentyfikować firmy, które mogą potrzebować wsparcia finansowego lub jakiejś pomocy z powodu niskiego obrotu.

Pytanie 20

input:focus { background-color: LightGreen; } W Ciebie CSS określono stylizację dla pola wejściowego. Tak przygotowane pole wejściowe będzie miało tło w odcieniu jasnozielonym?

A. jeżeli jest to pierwsza obecność tego elementu w dokumencie
B. w każdej sytuacji
C. po naciśnięciu przycisku myszy w celu wprowadzenia tekstu
D. kiedy zostanie najechane kursorem myszy bez jego klikania
Odpowiedzi, które wskazują na inne stany pól edycyjnych, nie są zgodne z definicją pseudoklasy :focus w CSS. Stan :focus jest aktywowany wyłącznie w momencie, gdy użytkownik klika w pole edycyjne lub przemieszcza się do niego za pomocą klawiatury (np. poprzez naciśnięcie klawisza Tab). Odpowiedzi takie jak 'gdy zostanie wskazane kursorem myszy bez kliknięcia' pomijają kluczowy element aktywacji, którym jest kliknięcie lub nawigacja za pomocą klawiatury. Wskazanie kursorem nie generuje stanu :focus, chyba że użytkownik rzeczywiście kliknie w pole. Z kolei stwierdzenie, że :focus dotyczy 'pierwszego wystąpienia tego znacznika w dokumencie', jest mylne, ponieważ stan :focus jest niezależny od lokalizacji elementu w DOM (Document Object Model) i odnosi się do konkretnego elementu, który jest aktualnie aktywny, a nie jego położenia. Odpowiedź 'w każdym przypadku' jest również niepoprawna, gdyż stan :focus jest aktywowany tylko w konkretnych okolicznościach, a nie zawsze. Takie błędne zrozumienie może prowadzić do problemów z użytecznością interfejsów użytkownika, ponieważ użytkownicy mogą nie otrzymywać właściwych wskazówek dotyczących aktywnych pól, co w konsekwencji obniża komfort korzystania z aplikacji. Kluczowe jest zrozumienie, że :focus jest jednym z wielu stanów, które mogą być zastosowane w CSS, co podkreśla znaczenie precyzyjnego definiowania interakcji w projektowaniu stron internetowych.

Pytanie 21

Wynik wykonania zapytania SQL to

SELECT count(*) FROM Uczniowie WHERE srednia = 5;
A. liczba uczniów, których średnia ocen wynosi 5
B. średnia ocen wszystkich uczniów
C. suma ocen uczniów, których średnia ocen to 5
D. całkowita liczba uczniów
Poprawna odpowiedź to liczba uczniów, których średnia ocen wynosi 5. Zapytanie SQL zawiera funkcję agregującą count(*), która zlicza wszystkie rekordy spełniające warunek określony w klauzuli WHERE. W tym przypadku filtrujemy uczniów, których średnia ocen jest równa 5. Tego rodzaju operacje są powszechnie stosowane w bazach danych do uzyskiwania statystyk oraz analizowania danych. Na przykład, jeśli chcemy ocenić skuteczność programu nauczania, możemy zastosować podobne zapytanie, aby zidentyfikować liczbę uczniów osiągających określony poziom w nauce. W praktyce ważne jest, aby zrozumieć, że przy używaniu funkcji agregujących w SQL, wyniki mogą być niezwykle cenne dla menedżerów edukacyjnych, którzy podejmują decyzje na podstawie danych. Rekomendowane jest również zrozumienie kontekstu, w jakim są stosowane takie zapytania, oraz sposób, w jaki można je optymalizować dla większych zbiorów danych, aby uzyskać szybkie i dokładne wyniki.

Pytanie 22

Wskaż właściwy zapis polecenia napisanego w języku JavaScript?

A. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " ; 3.14 )
B. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " . 3.14 )
C. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " + 3.14 )
D. document.write("Liczba ? z dokładnością do 2 miejsc po przecinku ? " 3.14 )
Odpowiedź ta jest poprawna, ponieważ używa operatora konkatenacji (+) do połączenia tekstu oraz wartości liczbowej 3.14 w jednej instrukcji document.write. Funkcja document.write jest metodą w Javascript, która umożliwia dynamiczne wstawianie treści HTML do dokumentu. W przykładzie, ciąg tekstowy "Liczba ? z dokładnością do 2 miejsc po przecinku ? " jest poprawnie połączony z wartością liczbową, co skutkuje wyświetleniem na stronie rezultatu, który jest czytelny i zrozumiały dla użytkownika. Warto również zauważyć, że w takich sytuacjach stosuje się również metody formatowania liczb, takie jak toFixed() dla uzyskania precyzyjnych wyników, np. (3.14).toFixed(2) zwróci '3.14'. Zgodność z ECMAScript oraz standardami W3C sprawia, że ta konstrukcja jest zarówno praktyczna, jak i zgodna z najlepszymi praktykami programowania w JavaScript.

Pytanie 23

Na podstawie filmu wskaż, która cecha dodana do stylu CSS zamieni miejscami bloki aside i nav, pozostawiając w środku blok section?

A. nav { float: right; }
B. aside {float: left; }
C. nav { float: left; } aside { float: left; }
D. nav { float: right; } section { float: right; }
W tym zadaniu kluczowe jest zrozumienie, jak naprawdę działa float, a nie tylko samo skojarzenie, że „left to lewo, right to prawo”. Wiele osób myśli, że wystarczy ustawić jeden element na lewo, drugi na prawo i wszystko magicznie się poukłada. W praktyce przeglądarka trzyma się bardzo konkretnych reguł: najpierw liczy kolejność elementów w HTML, potem dopiero stosuje float i układa je możliwie jak najwyżej i jak najbliżej odpowiedniej krawędzi. Jeśli nada się float tylko dla aside albo tylko dla nav, to zmienia się ich pozycja, ale układ trzech bloków nie spełni warunku z zadania: aside i nav nie zamienią się miejscami z pozostawieniem section w środku. Przykładowo, samo float: left na aside niczego nie „zamieni”, bo element i tak pojawia się jako pierwszy w kodzie, więc będzie u góry, tylko że „przyklejony” do lewej. Z kolei ustawienie nav na prawą stronę bez odpowiedniego floatowania section prowadzi do sytuacji, gdzie section nadal zachowuje się jak normalny blok, zwykle ląduje pod elementami pływającymi albo obok nich w sposób mało przewidywalny dla początkującego. Częsty błąd myślowy polega też na tym, że ktoś próbuje wszystkim elementom dać float: left, licząc na to, że przeglądarka „ułoży je po swojemu”. Wtedy jednak wszystkie te bloki ustawiają się w jednym kierunku, w kolejności z HTML, więc nie ma mowy o świadomym „zamienianiu miejsc”. Brak zrozumienia, że float wyjmuje element z normalnego przepływu i wpływa na to, jak kolejne elementy zawijają się wokół niego, prowadzi właśnie do takich błędnych odpowiedzi. Z mojego doświadczenia lepiej jest najpierw narysować sobie prosty schemat: w jakiej kolejności idą znaczniki i które z nich mają pływać w prawo, a które zostać w naturalnym układzie. Dopiero wtedy dobiera się konkretne deklaracje CSS. Takie myślenie przydaje się nie tylko przy float, ale też przy nauce flexboxa czy grida, gdzie kolejność w DOM i własności układu też grają ogromną rolę.

Pytanie 24

Które z poniższych stwierdzeń dotyczących klucza głównego jest poprawne?

A. Jest unikalny w obrębie tabeli
B. Może przyjmować tylko wartości numeryczne
C. Składa się wyłącznie z jednego pola
D. W tabeli z danymi osobowymi może to być pole z nazwiskiem
Koncepcje związane z kluczem podstawowym obejmują kilka podstawowych zasad, które są niezbędne do zrozumienia jego roli w bazie danych. Klucz podstawowy nie ogranicza się tylko do unikalności, ale również musi zapewniać integralność danych i być stosowany w praktyce w sposób przemyślany. Wiele osób myli klucz podstawowy z pojęciem pola, co prowadzi do błędnych wniosków, że składa się on jedynie z jednego atrybutu. W rzeczywistości klucz podstawowy może być złożony z kilku atrybutów, co jest typowe w bardziej złożonych systemach, gdzie żaden pojedynczy atrybut nie jest w stanie zapewnić unikalności. Ponadto, ograniczenie klucza podstawowego do wartości liczbowych jest mylące. Klucze podstawowe mogą mieć różne typy danych, w tym tekstowe czy alfanumeryczne, w zależności od kontekstu i wymagań aplikacji. Przykład błędnego podejścia to uznanie nazwiska za klucz podstawowy w tabeli z danymi osobowymi. Takie podejście jest problematyczne, ponieważ nazwiska mogą być powtarzalne w populacji, co skutkuje utratą unikalności – klucz podstawowy musi być jednoznaczny w obrębie danej tabeli. Przy projektowaniu baz danych stosuje się zasady normalizacji, które podkreślają znaczenie kluczy podstawowych w kontekście integralności danych oraz efektywności operacji na tych danych.

Pytanie 25

W języku HTML kolor biały można przedstawić przy użyciu wartości

A. #255255
B. rgb(FFFF,FF)
C. rgb(255,255,255)
D. #000000
Biały kolor w HTML zapisujemy jako rgb(255,255,255). W systemie RGB kolory tworzą się z trzech podstawowych barw: czerwonej, zielonej i niebieskiej. Każda z nich ma wartość od 0 do 255, więc maksymalna intensywność danego koloru to 255, a najniższa to 0. W przypadku białego koloru wszystkie trzy barwy są na maksa, stąd właśnie rgb(255,255,255) oznacza pełną moc czerwonego, zielonego i niebieskiego, co razem daje kolor biały. Wartości RGB są super ważne w CSS i w różnych programach do grafiki. Moim zdaniem, warto je znać, bo to podstawy przy robieniu stron internetowych. Warto też zwrócić uwagę na standardy W3C dotyczące kolorów w HTML, bo pomagają zadbać o estetykę i dostępność stron.

Pytanie 26

Który zapis CSS wprowadzi niebieskie tło dla bloku?

A. div {color: blue;}
B. div {border-color: blue;}
C. div {shadow: blue;}
D. div {background-color: blue;}
Odpowiedź div {background-color: blue;} jest poprawna, ponieważ wykorzystuje właściwość CSS 'background-color', która służy do definiowania koloru tła elementu. Wartość 'blue' jest jedną z predefiniowanych nazw kolorów w CSS, co sprawia, że zapis jest czytelny i łatwy do zrozumienia dla każdego, kto pracuje z tą technologią. Przykładowo, jeżeli chcemy zmienić tło sekcji na naszej stronie internetowej na niebieskie, możemy użyć tego zapisu w pliku CSS lub w sekcji stylów na stronie. Dobrym podejściem w projektowaniu stron jest korzystanie z jednoznacznych nazw kolorów, co poprawia czytelność kodu. Warto również zaznaczyć, że CSS pozwala na użycie różnych formatów kolorów, takich jak RGB, HEX czy HSL, co zwiększa elastyczność w doborze odcieni. Ważne jest, aby przestrzegać standardów dostępności, co oznacza, że kolor tła powinien kontrastować z kolorem tekstu, aby zapewnić dobrą widoczność i dostępność dla wszystkich użytkowników.

Pytanie 27

Który z podanych kodów XHTML sformatuje tekst zgodnie z określonym schematem?

Ilustracja do pytania
A. Odpowiedź D
B. Odpowiedź B
C. Odpowiedź C
D. Odpowiedź A
Poprawna odpowiedź D zawiera poprawne znaczniki XHTML i HTML, które umożliwiają formatowanie tekstu według wzoru. W pierwszym wierszu tekst Ala ma kota używa znacznika b do pogrubienia słowa kota, co jest zgodne ze standardami, ponieważ b jest szeroko stosowanym tagiem HTML do semantycznego pogrubienia tekstu. Następnie użyty jest znacznik br do wstawienia przerwy w linii, co sprawia, że kolejna część tekstu pojawia się w nowej linii, odzwierciedlając układ zaprezentowany na obrazku. W drugim wierszu tekst a kot ma Alę, znacznik i został użyty do pochylania słowa kot, co jest zgodne z praktykami formatowania tekstu, gdzie i oznacza kursywę. Zamknięcie całego tekstu w znacznikach p paragrafu zapewnia również odpowiedni odstęp i formatowanie, co jest zgodne z semantycznym i strukturalnym organizowaniem treści w dokumencie XHTML. Podejście to odzwierciedla dobre praktyki kodowania, w tym stosowanie właściwych znaczników dla odpowiednich stylów oraz zapewnienie kompatybilności z różnymi przeglądarkami.

Pytanie 28

Wymień dwa sposoby na zabezpieczenie bazy danych Microsoft Access

A. Ustalanie hasła do otwarcia bazy danych oraz zabezpieczeń na poziomie użytkownika
B. Zaszyfrowanie pliku bazy danych oraz wiadomości SMS z kodem autoryzacyjnym
C. Ustalenie zabezpieczeń na poziomie użytkownika oraz w sesji
D. Funkcje anonimowe oraz ustawienie hasła do otwarcia bazy danych
Ustalanie hasła do otwarcia bazy danych oraz zabezpieczeń na poziomie użytkownika to kluczowe elementy ochrony danych w Microsoft Access. Ustalenie hasła otwarcia bazy danych zapewnia podstawowy poziom bezpieczeństwa, uniemożliwiając nieautoryzowanym użytkownikom dostęp do pliku. W praktyce, aby ustawić hasło, wystarczy przejść do opcji 'Informacje' w menu, a następnie wybrać 'Szyfrowanie z hasłem'. Zabezpieczenia na poziomie użytkownika natomiast pozwalają na definiowanie ról i uprawnień dla różnych użytkowników, co jest istotne w sytuacjach, gdzie dostęp do danych powinien być ograniczony do wybranych osób. Implementacja tych rozwiązań jest zgodna z dobrymi praktykami bezpieczeństwa danych, które zalecają stosowanie wielowarstwowych mechanizmów ochrony. Przykładem może być firma, która przechowuje wrażliwe dane klientów, gdzie konieczne jest, aby tylko wyznaczeni pracownicy mieli dostęp do konkretnych informacji, co można zrealizować właśnie poprzez zabezpieczenia na poziomie użytkownika.

Pytanie 29

Ikona przedstawiająca funkcję w edytorze grafiki rastrowej, znana jako „kubełek”, pozwala na

Ilustracja do pytania
A. wybór obszaru o identycznym kolorze
B. zmianę bieżących kolorów
C. wypełnienie obszaru, który został zaznaczony kolorem
D. pobranie wybranej barwy i ustawienie jej jako aktywnej
Niektóre nieporozumienia dotyczące funkcji narzędzia 'kubełek' mogą wynikać z mylenia go z innymi narzędziami w edytorach graficznych. Przykładowo, opcja zmiany aktywnych kolorów nie jest związana z 'kubełkiem', lecz z paletą kolorów, gdzie użytkownik wybiera kolory do stosowania w różnych kontekstach. Narzędzie, które zaznacza obszar o takim samym kolorze, to zwykle 'różdżka', działająca na zasadzie rozpoznawania podobieństwa kolorów w grafice. Może być używana do selekcji, ale nie do wypełniania. Pobieranie wskazanej barwy i ustawianie jej jako aktywnej to funkcjonalność narzędzia zwanego 'kroplomierz', które pozwala szybko zidentyfikować i przypisać dany kolor do aktywnej palety. Typowym błędem jest założenie, że 'kubełek' może pełnić te wszystkie role, podczas gdy jego jedynym zadaniem jest wypełnianie obszarów kolorem. Wiedza o różnicach między tymi narzędziami jest kluczowa, aby efektywnie i precyzyjnie tworzyć i edytować projekty graficzne. Dzięki zrozumieniu specyfiki każdego narzędzia można znacząco zwiększyć wydajność pracy w programach graficznych, unikając błędów i nieporozumień podczas edycji obrazów.

Pytanie 30

Jak umieścić komentarz w kodzie PHP?

A. <!-- ... -->
B. <? ... ?>
C. /* ... */
D. /? ... ?/
Komentarze w kodzie PHP są kluczowym elementem, który pozwala programistom na dodawanie wyjaśnień, notatek czy informacji o kodzie, co znacznie ułatwia jego późniejsze zrozumienie i konserwację. Komentarze w PHP można umieszczać za pomocą podwójnego ukośnika (//) dla pojedynczych linii lub za pomocą /* ... */ dla komentarzy wieloliniowych. Wybrana odpowiedź /* ... */ jest poprawna, ponieważ umożliwia dodawanie dłuższych bloków tekstu, co jest praktyczne w przypadku skomplikowanych funkcji czy klas. Stosowanie komentarzy jest zgodne z dobrymi praktykami programowania, które zalecają dokumentowanie kodu, aby ułatwić współpracę w zespole oraz pomóc innym programistom w zrozumieniu funkcji i celu poszczególnych fragmentów kodu. Na przykład, podczas tworzenia złożonej aplikacji webowej, dobrze udokumentowany kod pozwoli zespołowi szybciej rozwiązywać problemy i wprowadzać zmiany, co jest kluczowe w dynamicznie zmieniającym się środowisku IT.

Pytanie 31

Wskaż stwierdzenie, które nie jest prawdziwe dla następującej definicji funkcji w języku C++?

void zamien( float &x, float &y){
    float tmp;
    tmp = x;
    x = y;
    y = tmp;
}
A. Funkcja odwołuje się do parametrów przez referencję.
B. Funkcja zwraca wartość.
C. Funkcja posiada dwa parametry.
D. Funkcja nie zwraca wartości.
Dobrze zrobione! Wybrałeś właściwą odpowiedź, która pasuje do tego, co mamy w kodzie funkcji w C++. Mówimy tu o funkcji typu 'void', co oznacza, że nie zwraca żadnej wartości. W C++ 'void' oznacza, że nie ma zwracanego typu, ale to nie znaczy, że taka funkcja nic nie robi. Ona może wykonać różne operacje, ale na koniec nie zwraca żadnego wyniku. To jest dość istotne, bo w programowaniu często z takich funkcji korzystamy, kiedy chcemy coś zmienić, a nie potrzebujemy nowej wartości. Fajnie, że zauważyłeś, że ta funkcja ma dwa parametry typu float, które są przekazywane przez referencję. Dzięki temu możemy zmieniać wartości tych zmiennych w funkcji, co jest przydatne w wielu sytuacjach.

Pytanie 32

Jakiego języka należy użyć do stworzenia aplikacji internetowej, która działa po stronie klienta?

A. JavaScript
B. Python
C. PHP
D. Perl
JavaScript jest językiem programowania, który został stworzony z myślą o interakcji z przeglądarkami internetowymi, co czyni go idealnym wyborem do implementacji aplikacji internetowych po stronie klienta. Dzięki swojej wszechstronności, JavaScript umożliwia dynamiczne manipulowanie elementami DOM, obsługę zdarzeń oraz komunikację z serwerem za pomocą AJAX. Umożliwia również korzystanie z nowoczesnych frameworków i bibliotek, takich jak React, Angular czy Vue.js, które przyspieszają proces tworzenia złożonych interfejsów użytkownika. Oprócz tego, JavaScript jest standardowym językiem skryptowym dla większości przeglądarek, co zapewnia jego szeroką kompatybilność i dostępność. Przykładem zastosowania JavaScript w aplikacjach internetowych może być formularz kontaktowy, który bez przeładowania strony waliduje dane wprowadzone przez użytkownika lub dynamicznie aktualizuje zawartość strony w odpowiedzi na interakcje użytkownika. Warto również zaznaczyć, że JavaScript jest wspierany przez ECMAScript, standard, który regularnie aktualizuje i rozwija jego możliwości, co sprawia, że jest on nie tylko podstawą wielu aplikacji internetowych, ale także kluczowym narzędziem w ekosystemie programistycznym.

Pytanie 33

Zaproponowany blok ilustruje operację

Ilustracja do pytania
A. podjęcia decyzji
B. wykorzystania wcześniej zdefiniowanej procedury lub funkcji
C. załadowania lub przedstawienia danych
D. realizacji zadania w pętli
Podjęcie decyzji w programowaniu jest kluczowym elementem umożliwiającym dynamiczne i warunkowe działania w aplikacjach. Symbolicznie, blok decyzyjny w diagramie przepływu, takim jak przedstawiony na obrazku, oznacza punkt, w którym program sprawdza określony warunek i w zależności od jego wyniku podejmuje różne ścieżki działania. Jest to często implementowane przy użyciu struktur decyzyjnych takich jak instrukcje if-else w wielu językach programowania. Na przykład w języku Python decyzję można wyrazić jako if temperatura > 30: print('Gorąco') else: print('Chłodno'). Decyzje te pozwalają programowi reagować na zmieniające się warunki i dane wejściowe, co jest niezbędne w tworzeniu interaktywnych aplikacji czy systemów sterowania. Zgodnie z dobrymi praktykami w inżynierii oprogramowania, właściwe stosowanie bloków decyzyjnych sprzyja czytelności kodu i efektywności jego działania. Dodatkowo, w większych projektach często stosuje się wzorce projektowe takie jak stan lub strategia, które opierają się na mechanizmach decyzyjnych, pomagając zarządzać złożonością kodu i poprawiać jego skalowalność.

Pytanie 34

Jaką postać ma kolor zdefiniowany w formacie szesnastkowym jako #11FE07 w modelu RGB?

A. rgb(17, 255, 7)
B. rgb(17, FE, 7)
C. rgb(17, 254, 7)
D. rgb(ll, 127, 7)
Odpowiedź rgb(17, 254, 7) jest jak najbardziej trafna, bo wartości RGB ustalamy na podstawie kolorów, które mamy w formacie szesnastkowym. Dla koloru #11FE07, pierwsza część '11' to czerwień (R), druga część 'FE' to zieleń (G), a ostatnia '07' to niebieski (B). Jak to zliczamy? Wartości szesnastkowe przeliczamy na dziesiętne. Czyli '11' w szesnastkowym to 17 w dziesiętnym, 'FE' to 254, a '07' to po prostu 7. Te kolory RGB są super ważne w wielu dziedzinach, jak na przykład w projektowaniu stron www czy w grafice komputerowej. W3C ustala standardy dla tych wartości, dlatego są one spójne i użyteczne w sieci. Dopasowanie kolorów RGB jest kluczowe, kiedy tworzymy ładne palety kolorów, które są nie tylko estetyczne, ale też dostępne dla wszystkich. Takim przykładem może być dobór kolorów dla przycisków na stronie - jak dobrze je dobierzemy, to użytkownik łatwiej zauważy, co ma kliknąć.

Pytanie 35

Poniżej przedstawiono fragment kodu języka HTML. Jest on definicją listy:

<ol>
  <li>punkt 1</li>    <li>punkt 2</li>
  <ul>
    <li>podpunkt1</li>
    <ul>    <li>podpunkt2</li>  <li>podpunkt3</li>  </ul>
  </ul>
  <li>punkt3</li>
</ol>

A.

  1. punkt 1
  2. punkt 2
    • podpunkt1
    • podpunkt2
    • podpunkt3
  3. punkt3

B.

  1. punkt 1
  2. punkt 2
  3. punkt3
    • podpunkt1
    • podpunkt2
    • podpunkt3

C.

  1. punkt 1
  2. punkt 2
    • podpunkt1
      • podpunkt2
      • podpunkt3
  3. punkt3

D.

  • punkt 1
  • punkt 2
    1. podpunkt1
      • podpunkt2
      • podpunkt3
  • punkt3
A. B.
B. D.
C. A.
D. C.
Gratulacje, poprawnie zinterpretowałeś fragment kodu HTML przedstawiający definicję listy. W tym kodzie widzimy listę numerowaną (<ol>), która zawiera trzy elementy listy (<li>). Szczególnością prezentowanej struktury jest fakt, że drugi element listy zawiera zagnieżdżoną listę nieuporządkowaną (<ul>) z trzema podpunktami. Zgodność odpowiedzi C z przedstawionym kodem wynika z faktu, że punkt 2 prezentuje podpunkty oznaczone kropkami, co jest charakterystyczne dla listy nieuporządkowanej. Tego typu struktura jest często stosowana na stronach internetowych do prezentacji hierarchii informacji, na przykład menu nawigacyjnego czy spisu treści. Pamiętaj, że umiejętność czytania i zrozumienia kodu HTML jest kluczowa dla każdego, kto planuje pracować z technologiami webowymi i to pytanie to doskonały przykład na to, jak te umiejętności mogą być sprawdzane.

Pytanie 36

W języku PHP, przy pracy z bazą MySQL, aby zakończyć sesję z bazą, należy wywołać

A. mysqli_exit()
B. mysqli_rollback()
C. mysqli_commit()
D. mysqli_close()
Odpowiedź mysqli_close() jest prawidłowa, ponieważ ta funkcja jest używana do zamknięcia połączenia z bazą danych MySQL w języku PHP. Po zakończeniu wszystkich operacji na bazie danych, zaleca się wywołanie tej funkcji, aby zwolnić zasoby systemowe oraz zamknąć połączenie, co jest zgodne z dobrymi praktykami programistycznymi. Użycie mysqli_close() jest istotne, ponieważ niezamknięte połączenia mogą prowadzić do wycieków pamięci i wyczerpania dostępnych zasobów, co z kolei może wpłynąć na wydajność aplikacji. W praktyce, jeśli mamy otwarte połączenie z bazą danych, po zakończeniu operacji, takich jak pobieranie lub wstawianie danych, używamy mysqli_close($connection), gdzie $connection to nasza zmienna reprezentująca połączenie. Oprócz tego, pamiętajmy, że dbanie o odpowiednie zarządzanie połączeniami ma kluczowe znaczenie dla bezpieczeństwa i stabilności naszych aplikacji.

Pytanie 37

Wskaż poprawny warunek w języku PHP, który sprawdza brak połączenia z bazą MySQL.

A. if (mysql_connect_error()}{
B. if (mysql_connect_errno()){}
C. if (mysql_connect_errno()}{
D. if (mysql_connect_error())()
Analizując błędne odpowiedzi, możemy zauważyć kilka fundamentalnych błędów w składni oraz logice użycia funkcji odpowiedzialnych za obsługę połączenia z bazą danych. W przypadku pierwszej propozycji, 'if (mysql_connect_error())()', widoczny jest zbędny nawias okrągły na końcu, co jest niezgodne z zasadami składni języka PHP. Taki zapis spowoduje błąd podczas wykonywania kodu, gdyż PHP nie oczekuje nawiasu po instrukcji warunkowej, a dodatkowo funkcja 'mysql_connect_error()' nie wymaga takiego zakończenia. Podobnie, druga odpowiedź 'if (mysql_connect_errno()}{' używa niepoprawnego zamknięcia nawiasu. Prawidłowe zapisywanie bloków kodu jest kluczowe dla zachowania przejrzystości oraz poprawności w wykonywaniu poleceń. Z kolei 'if (mysql_connect_error()}{' również zawiera błąd obsługi nawiasów. Poza składniowymi błędami, warto również zaznaczyć, że zarówno 'mysql_connect_error()', jak i 'mysql_connect_errno()' są funkcjami przestarzałymi, co oznacza, że ich użycie nie jest zalecane w nowoczesnym programowaniu. W aktualnych projektach powinno się stosować rozszerzenie MySQLi lub PDO, które oferują lepsze możliwości w zakresie obsługi błędów oraz bezpieczeństwa. Takie podejście nie tylko zwiększa stabilność aplikacji, ale również ułatwia późniejsze jej utrzymanie oraz rozwój.

Pytanie 38

W tabeli podzespoly należy zaktualizować wartość pola URL na 'toshiba.pl' dla wszystkich rekordów, gdzie pole producent to TOSHIBA. W języku SQL ta zmiana będzie wyglądała następująco

A. UPDATE podzespoly SET URL='toshiba.pl';
B. UPDATE podzespoly.producent='TOSHIBA' SET URL='toshiba.pl';
C. UPDATE producent='TOSHIBA' SET URL='toshiba.pl';
D. UPDATE podzespoly SET URL='toshiba.pl' WHERE producent='TOSHIBA';
Odpowiedź ta jest prawidłowa, ponieważ poprawnie wykorzystuje składnię języka SQL do aktualizacji danych w tabeli. W instrukcji UPDATE podzespoly SET URL='toshiba.pl' WHERE producent='TOSHIBA'; najpierw wskazujemy tabelę, w której chcemy dokonać zmian, czyli 'podzespoly'. Następnie używamy klauzuli SET, aby zdefiniować nową wartość pola URL, a klauzula WHERE precyzuje, które rekordy mają zostać zaktualizowane, w tym przypadku te, gdzie producent to 'TOSHIBA'. To podejście jest zgodne z dobrymi praktykami, ponieważ stosowanie klauzuli WHERE zapobiega masowym aktualizacjom, które mogą prowadzić do niezamierzonych zmian w danych. Przykładowo, jeśli chcielibyśmy zaktualizować tylko określoną grupę produktów, klauzula WHERE pozwala na precyzyjne określenie zakresu zmian. Wprowadzenie takiej modyfikacji w bazie danych, z uwzględnieniem warunków, minimalizuje ryzyko błędów i poprawia integralność danych.

Pytanie 39

W CSS zapisana reguła ```css p::first-line {font-size: 150%;} ``` wykorzystana na stronie z wieloma paragrafami, z których każdy składa się z kilku linijek, spowoduje, że

A. pierwszy paragraf na stronie będzie miał całą czcionkę powiększoną
B. cały tekst w paragrafie zostanie powiększony o 150%
C. pierwsza linia każdego z paragrafów będzie miała większy rozmiar czcionki niż pozostałe linie
D. pierwsza linia każdego z paragrafów będzie miała mniejszy rozmiar czcionki niż pozostałe linie
Zapis CSS p::first-line {font-size: 150%;} odnosi się do pseudoelementu ::first-line, który pozwala na stylizację tylko pierwszej linii tekstu w każdym paragrafie. W tym przypadku, gdy stosujemy font-size: 150%, oznacza to, że rozmiar czcionki pierwszej linii każdego paragrafu zostanie zwiększony o 50% w stosunku do domyślnego rozmiaru czcionki ustalonego w CSS. To oznacza, że pierwsza linia będzie wizualnie wyróżniać się na tle pozostałego tekstu, który pozostanie w standardowym rozmiarze czcionki. Stylizowanie pierwszej linii paragrafu jest przydatnym narzędziem w projektowaniu stron internetowych, ponieważ pozwala na zwrócenie uwagi czytelników na istotne fragmenty tekstu, co może wpływać na lepszą czytelność i odbiór treści. Dodatkowo, zgodnie z specyfikacją CSS, użycie pseudoelementów, takich jak ::first-line, jest jednym z sposobów na wprowadzenie estetycznych i funkcjonalnych zmian w tekście bez konieczności modyfikacji HTML. W praktyce, stosując ten styl, można uzyskać efekt, który poprawia hierarchię informacji w tekstach, co jest szczególnie ważne w dłuższych artykułach czy dokumentach.

Pytanie 40

W sklepie internetowym wykorzystuje się tabelę faktura. W trakcie generowania faktury pole dataPlatnosci nie zawsze jest uzupełnione. Aby to skorygować, pod koniec dnia należy wprowadzić bieżącą datę do wierszy, gdzie to pole jest puste. W tym celu można wykorzystać kwerendę

A. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE dataPlatnosci IS NOT NULL
B. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataplatnosci = '0000-00-00'
C. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE id = 3
D. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL
Poprawna odpowiedź to 'UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL;'. Ta kwerenda jest odpowiednia, ponieważ aktualizuje pole 'dataPlatnosci' w tabeli 'faktury' tylko w tych wierszach, gdzie to pole jest puste (NULL). Użycie funkcji CURDATE() pozwala na wprowadzenie aktualnej daty, co jest praktycznym rozwiązaniem dla problemu niewypełnionych dat płatności. Warto pamiętać, że korzystanie z NULL jest standardem w bazach danych, który oznacza brak wartości. Z perspektywy dobrych praktyk w zarządzaniu danymi, ważne jest, aby dbać o pełność danych, co wpływa na późniejsze analizy i generowanie raportów. Tego rodzaju kwerendy powinny być stosowane regularnie, aby zapewnić integralność i aktualność danych w systemie, co jest kluczowe w kontekście e-commerce, gdzie terminowość transakcji ma istotne znaczenie. Na przykład, w sytuacji, gdy system generuje raporty dotyczące płatności, brak daty płatności może prowadzić do nieprawidłowych wniosków.