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: 17 grudnia 2025 14:46
  • Data zakończenia: 17 grudnia 2025 15:06

Egzamin zdany!

Wynik: 26/40 punktów (65,0%)

Wymagane minimum: 20 punktów (50%)

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

Która metoda obiektu location w języku JavaScript pozwala na zamianę aktualnego dokumentu na dokument z adresu podanego w parametrze metody?

A. open();
B. close();
C. replace();
D. reaload();
Metoda replace() obiektu location w JavaScript jest kluczowym narzędziem umożliwiającym zastąpienie bieżącego dokumentu nowym dokumentem wskazywanym przez zdefiniowany adres URL. Kiedy używamy location.replace(url), przeglądarka ładuje nowy dokument z podanego adresu, a bieżąca strona nie pozostaje w historii przeglądania, co oznacza, że użytkownik nie może wrócić do niej za pomocą przycisku "wstecz". Jest to szczególnie użyteczne w scenariuszach, gdy chcemy uniknąć zbędnego gromadzenia historii, na przykład w aplikacjach jednoskalowych (SPA), gdzie nawigacja pomiędzy różnymi widokami powinna być płynna. Przykładowo, po zalogowaniu użytkownika, można przekierować go na stronę główną aplikacji, używając location.replace('/home'). Warto również wspomnieć, że stosowanie tej metody jest zgodne z najlepszymi praktykami w zakresie UX, gdyż pozwala na lepsze zarządzanie historią przeglądarki, co może poprawić doświadczenia użytkownika.

Pytanie 2

W bazie danych znajduje się tabela uczniowie, która ma kolumny: imie, nazwisko i klasa. Jakie polecenie SQL należy użyć, aby uzyskać imiona oraz nazwiska uczniów, których nazwiska zaczynają się na literę M?

A. SELECT nazwisko, imie FROM uczniowie WHERE nazwisko LIKE 'M%';
B. SELECT nazwisko, imie FROM uczniowie ORDER BY nazwisko IN 'M%';
C. SELECT nazwisko, imie FROM uczniowie WHERE nazwisko IN 'M%';
D. SELECT nazwisko, imie FROM uczniowie ORDER BY nazwisko='M%';
Poprawne polecenie SQL to 'SELECT nazwisko, imie FROM uczniowie WHERE nazwisko LIKE 'M%';'. Operator LIKE jest kluczowym elementem języka SQL, który pozwala na wyszukiwanie danych zgodnych z określonym wzorem, gdzie '%' oznacza dowolny ciąg znaków. Użycie tego operatora jest zgodne z najlepszymi praktykami w zakresie wyszukiwania danych w relacyjnych bazach danych, umożliwiając elastyczne filtrowanie wyników. W kontekście tego zapytania, operator LIKE skutecznie identyfikuje wszystkie nazwiska, które zaczynają się na literę 'M', co jest szczególnie przydatne w sytuacjach wymagających poszukiwania danych spełniających określone kryteria. Przykładem zastosowania tego zapytania może być generowanie raportów dla nauczycieli, którzy chcą zobaczyć listę uczniów w określonej klasie. Dodatkowo, warto pamiętać, że w przypadku wielu baz danych, operator LIKE jest również wrażliwy na wielkość liter, dlatego warto dostosować zapytanie w zależności od kontekstu, w jakim pracujemy.

Pytanie 3

W SQL, który jest używany przez bazę danych MySQL w tabeli samochody, aby przypisać wartość 0 do kolumny przebieg, trzeba skorzystać z zapytania

A. UPDATE przebieg SET 0 FROM samochody;
B. UPDATE samochody SET przebieg=0;
C. UPDATE przebieg SET 0 TABLE samochody;
D. UPDATE samochody SET przebieg VALUE 0;
Pierwsza z błędnych odpowiedzi sugeruje kwerendę 'UPDATE przebieg SET 0 FROM samochody', która jest niepoprawna ze względu na niewłaściwą składnię. W SQL nie stosuje się słowa kluczowego 'FROM' w tym kontekście, ponieważ UPDATE działa na zaktualizowanej tabeli bez potrzeby określania źródła danych, co w tym przypadku jest zbędne. Kolejna niepoprawna odpowiedź 'UPDATE przebieg SET 0 TABLE samochody' również łamie zasady składni SQL, ponieważ użycie słowa 'TABLE' w tym kontekście jest zbędne i niezgodne z konwencją. SQL nie wymaga ani nie pozwala na takie sformułowanie kwerendy. Ostatnia błędna propozycja 'UPDATE samochody SET przebieg VALUE 0' błędnie używa słowa kluczowego 'VALUE'. W SQL używamy 'SET' do przypisywania wartości, a nie 'VALUE', co jest konstrukcją z innych języków programowania. Prawidłowa forma to 'SET kolumna=nowa_wartość'. Każda z tych odpowiedzi pokazuje istotne nieporozumienia dotyczące podstawowych zasad składni SQL, co podkreśla znaczenie nauki i praktyki w pracy z bazami danych.

Pytanie 4

W JavaScript funkcja document.getElementById(id) ma na celu

A. zweryfikować poprawność formularza o identyfikatorze id
B. umieścić tekst o treści ’id’ na stronie internetowej
C. pobrać wartości z formularza i przypisać je do zmiennej id
D. zwrócić referencję do pierwszego elementu HTML o wskazanym id
Niektóre twoje odpowiedzi trochę mylą rolę metody document.getElementById(id). Myślenie, że ta metoda pobiera dane z formularza i wkłada je do zmiennej id to zły trop. W rzeczywistości, ona służy do uzyskiwania dostępu do elementów, a jeśli chcesz odczytać wartości z pól formularzy, powinieneś użyć właściwości value. Mówienie o tym, że ta metoda sprawdza poprawność formularza, też nie jest na miejscu - do walidacji używa się innych funkcji, jak addEventListener() na zdarzenie 'submit' albo atrybutów HTML5, jak required. No i jeśli chodzi o wstawianie tekstu 'id' na stronę, to też nie tak to działa - document.getElementById(id) daje ci odnośnik do elementu, ale nie modyfikuje go w jakiś bezpośredni sposób. To błędy, które mogą wynikać z nie do końca jasnego zrozumienia, jak działają metody manipulacyjne w JavaScript.

Pytanie 5

Jaką instrukcją można zastąpić poniższy kod JavaScript, pełniącą tę samą funkcję?

for (i = 0; i < 100; i += 10)
  document.write(i + ' ');
while (i < 10) {
  document.write(i + ' ');
  i += 10;
}

Kod 1.
while (i < 100) {
  document.write(i + ' ');
}

Kod 2.
i = 0;
while (i < 100) {
  document.write(i + ' ');
  i += 10;
}

Kod 3.
i = 0;
while (i < 10) {
  document.write(i + ' ');
  i++;
}

Kod 4.
A. Kod 2
B. Kod 4
C. Kod 3
D. Kod 1
Odpowiedź Kod 3 jest prawidłowa ponieważ instrukcja while w tej formie jest równoważna z podaną pętlą for. W obu przypadkach pętla inicjuje zmienną i na wartości 0 i zwiększa ją o 10 w każdej iteracji aż do osiągnięcia wartości mniejszej niż 100. Pętla for jest skondensowaną formą pętli while i zapewnia bardziej czytelny zapis gdy wszystkie elementy inicjalizacja warunek i inkrementacja są blisko siebie. Taka konstrukcja jest używana w wielu językach programowania zorientowanych obiektowo takich jak JavaScript czy Java. W praktyce pętle te są używane do iteracji przez listy tablice lub do wykonywania powtarzalnych zadań w kodzie. Dobre praktyki zalecają wybór pętli for gdy zakres iteracji jest znany z góry co poprawia czytelność i utrzymanie kodu. Zrozumienie jak pętla while może być przekształcona w pętlę for i odwrotnie jest podstawową umiejętnością w programowaniu co pozwala na elastyczność w pisaniu kodu i lepsze dostosowanie do specyficznych potrzeb aplikacji.

Pytanie 6

Jakie mechanizmy przydzielania zabezpieczeń, umożliwiające wykonywanie działań na bazie danych, są związane z tematyką zarządzania kontami, użytkownikami oraz ich uprawnieniami?

A. Z przywilejami systemowymi
B. Z przywilejami obiektowymi
C. Z właściwościami
D. Z zasadami
Zarządzanie kontami, użytkownikami i uprawnieniami w kontekście baz danych opiera się na przywilejach systemowych, które umożliwiają kontrolowanie dostępu do zasobów i operacji w systemie bazodanowym. Przywileje systemowe są definiowane jako zestaw uprawnień przypisanych do użytkowników lub ról, które decydują o tym, jakie operacje mogą być wykonywane na poziomie systemu, takie jak tworzenie, modyfikowanie i usuwanie baz danych oraz zarządzanie danymi. Przykłady przywilejów systemowych obejmują 'CREATE USER', 'DROP USER' czy 'GRANT ALL PRIVILEGES', które pozwalają na pełne zarządzanie użytkownikami oraz ich uprawnieniami. Standardy takie jak SQL92 czy ISO/IEC 9075 określają zasady dotyczące definiowania i stosowania przywilejów w systemach zarządzania bazami danych, co sprawia, że są one kluczowe dla zapewnienia bezpieczeństwa oraz integralności danych. Właściwe zarządzanie tymi przywilejami jest niezbędne do minimalizacji ryzyka nieautoryzowanego dostępu oraz do ochrony wrażliwych informacji przed potencjalnymi zagrożeniami.

Pytanie 7

Dana jest tabela firmy zawierająca następujące kolumny: nazwa, adres, NIP, obrot (obrót w ostatnim miesiącu), rozliczenie, status. Wykonanie kwerendy SQL SELECT sprawi, że zostaną wyświetlone

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
A. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
B. wszystkie dane firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
C. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
D. wszystkie dane firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
Twoja odpowiedź jest poprawna. Przy wykonywaniu zapytań SQL często wybieramy nie wszystkie, a jedynie niektóre kolumny z tabeli. W tym przypadku, pytanie dotyczyło wybrania tylko nazwy i NIPu firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł. Do realizacji tego zadania użyliśmy kwerendy SELECT z określeniem kolumn oraz warunku w klauzuli WHERE. Jest to częsty scenariusz w praktyce, gdy potrzebujemy wyfiltrować dane według określonych kryteriów. Ważne jest zrozumienie, że instrukcja SELECT jest używana do wybrania jednej lub wielu kolumn, które chcemy zobaczyć w wynikach, a klauzula WHERE służy do definiowania warunków, które muszą spełniać dane wyświetlane w wynikach.

Pytanie 8

Deklarując var x="true"; w języku JavaScript, jakiego typu zmienną się tworzy?

A. String (ciąg znaków)
B. Logicznego
C. Liczbowego
D. Nieokreślonego (undefined)
Odpowiedź 'String (ciąg znaków)' jest poprawna, ponieważ w języku JavaScript zmienna zadeklarowana za pomocą 'var x="true";' przechowuje wartość typu tekstowego. Wartość 'true' jest traktowana jako ciąg znaków, ponieważ jest umieszczona w cudzysłowie. JavaScript jest językiem dynamicznie typowanym, co oznacza, że typ zmiennej jest określany w momencie przypisania wartości. W praktyce, ciągi znaków są powszechnie używane w programowaniu webowym do reprezentacji danych, takich jak teksty, komunikaty, a także do przetwarzania informacji z formularzy. Dobre praktyki obejmują użycie cudzysłowów pojedynczych lub podwójnych do definiowania ciągów, a także unikanie mieszania typów, co może prowadzić do błędów. Ważne jest, aby zawsze być świadomym typu danych, z którymi pracujemy, aby uniknąć nieoczekiwanych wyników w kodzie. Zrozumienie, jak JavaScript interpretuje różne typy danych, jest kluczowe dla efektywnego programowania oraz debugowania aplikacji.

Pytanie 9

Według zasad walidacji HTML5, właściwym zapisem dla znacznika hr jest

A. </ hr />
B. <hr>
C. </ hr>
D. </hr?>
Odpowiedź <hr> jest poprawna, ponieważ zgodnie z regułami HTML5, znacznik <hr> jest znakiem samodzielnym, co oznacza, że nie wymaga zamknięcia. Jest to element blokowy, który służy do wprowadzania poziomej linii w dokumencie, co często wykorzystuje się do rozdzielania sekcji treści. Standard HTML5 zezwala na użycie skróconej formy, a zatem <hr> jest wystarczające do oznaczenia poziomej linii. W praktyce, użycie tego znacznika jest istotne dla strukturyzacji dokumentów i poprawy ich czytelności. Dobrą praktyką jest również stosowanie odpowiednich atrybutów, takich jak 'class' czy 'id', co może ułatwić późniejsze stylizowanie za pomocą CSS. Warto pamiętać, że w HTML5, chociaż można używać atrybutów takich jak 'style' czy 'title', powinny one być stosowane odpowiedzialnie, aby nie zaburzać semantyki dokumentu. Ponadto, korzystanie z tego znacznika jest zgodne z WAI-ARIA, co wspiera dostępność aplikacji webowych.

Pytanie 10

W języku HTML, aby stworzyć pole do wprowadzania hasła, w którym wpisywany tekst będzie ukrywany (zastępowany kropkami), należy zastosować znacznik

A. <form input type="password" />
B. <input type="password" />
C. <input name="password" />
D. <form="password" type="password" />
Odpowiedź <input type="password" /> jest poprawna, ponieważ ten znacznik HTML służy do tworzenia pola edycyjnego, w którym wprowadzane dane są maskowane. W przypadku pól do wpisywania haseł, istotne jest, aby użytkownik nie mógł zobaczyć wpisywanego tekstu, co zwiększa poziom bezpieczeństwa. W HTML, atrybut 'type' z wartością 'password' instruuje przeglądarkę, aby ukrywała znaki wprowadzane przez użytkownika, zastępując je zazwyczaj kropkami lub gwiazdkami. Przykładem zastosowania tego typu znacznika może być formularz logowania, gdzie użytkownicy wpisują swoje hasła. Dobrą praktyką jest również zastosowanie odpowiednich etykiet i walidacji, aby zapewnić, że formularz jest użyteczny i zgodny z WCAG (Web Content Accessibility Guidelines). Warto pamiętać, że bezpieczeństwo haseł powinno być również wspierane przez odpowiednie zabezpieczenia po stronie serwera, w tym haszowanie haseł oraz ochrona przed atakami typu brute force.

Pytanie 11

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

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

Pytanie 12

Która z reguł dotyczących sekcji w języku HTML jest poprawna?

A. W sekcji <head> mogą znajdować się znaczniki <meta>, <title>, <link>
B. W sekcji <head> umieszcza się część <body>
C. W sekcji <head> można zdefiniować szablon strony przy użyciu znaczników <div>
D. W sekcji <head> nie można umieszczać kodu CSS, jedynie odwołanie do pliku CSS
Wybór tej odpowiedzi jest słuszny, ponieważ w części <head> dokumentu HTML mogą występować różne znaczniki, które są kluczowe dla poprawnej struktury i funkcjonalności strony. Znaczniki <meta> służą do dostarczania danych o stronie, takich jak opis, słowa kluczowe czy informacje o autorze, co jest istotne dla SEO (optymalizacji pod kątem wyszukiwarek). Znacznik <title> definiuje tytuł strony, który jest wyświetlany w zakładkach przeglądarki oraz w wynikach wyszukiwania, co ma wpływ na wrażenia użytkowników oraz ich decyzje. Z kolei znacznik <link> jest używany do odwoływania się do zewnętrznych arkuszy stylów CSS, co pozwala na oddzielenie struktury HTML od stylizacji. Dobre praktyki wskazują, że umieszczanie CSS w <head> zamiast w <body> poprawia czas ładowania strony oraz zapewnia, że style są stosowane jeszcze przed renderowaniem zawartości, co wpływa na lepszą użyteczność i wygląd strony. Dobrze zorganizowana sekcja <head> może przyczynić się do lepszego pozycjonowania w wyszukiwarkach oraz poprawy doświadczeń użytkowników.

Pytanie 13

Jaka linia w języku HTML wskazuje kodowanie znaków używane w dokumencie?

A. <charset="UTF-8">
B. <encoding="UTF-8">
C. <meta encoding="UTF-8">
D. <meta charset="UTF-8">
Zapis <meta charset="UTF-8"> jest poprawną deklaracją kodowania znaków w dokumencie HTML, ponieważ jest zgodny z aktualnymi standardami W3C. Element <meta> powinien znajdować się w sekcji <head> dokumentu HTML i pozwala przeglądarkom na właściwe interpretowanie znaków w treści strony. Kodowanie UTF-8 jest szeroko stosowane, ponieważ obsługuje wszystkie znaki w standardzie Unicode, co czyni go idealnym dla aplikacji wielojęzycznych. Użycie poprawnego kodowania jest kluczowe, aby uniknąć problemów z wyświetlaniem tekstu, takich jak błędne znaki lub krzaki, które pojawiają się, gdy przeglądarka nie wie, jak zinterpretować dane. Przykładowo, jeżeli mamy stronę internetową w kilku językach, użycie UTF-8 zapewnia, że znaki diakrytyczne w języku polskim, czeskim czy niemieckim będą poprawnie wyświetlane. Warto również pamiętać, aby zawsze umieszczać tę deklarację jako pierwszą w sekcji <head>, aby zapewnić, że przeglądarka prawidłowo zinterpretuje wszystkie inne elementy. W kontekście SEO oraz dostępności, poprawne kodowanie jest istotne, ponieważ wpływa na indeksowanie treści przez wyszukiwarki oraz ich prezentację dla użytkowników.

Pytanie 14

Język JavaScript wspiera

A. wysyłanie ciasteczek z identycznymi informacjami do wielu klientów witryny
B. obiekty DOM
C. funkcje wirtualne
D. klasy abstrakcyjne
Wybór klas abstrakcyjnych jako odpowiedzi na pytanie o możliwości JavaScript opiera się na mylnym przekonaniu o paradygmacie programowania obiektowego. W przeciwieństwie do języków takich jak Java, JavaScript nie wspiera klasycznych klas abstrakcyjnych. W JavaScript mamy do czynienia z prototypowym dziedziczeniem, a nie z hierarchicznymi klasami. Obiekty mogą być tworzone na podstawie prototypów, co oznacza, że nie ma potrzeby korzystania z klas abstrakcyjnych. W kontekście funkcji wirtualnych, również istnieje nieporozumienie. JavaScript nie używa tego pojęcia, ponieważ mechanizm dziedziczenia oparty na prototypach nie wymaga takiej funkcjonalności. Ponadto, odpowiedzi dotyczące wysyłania ciastek do wielu klientów są mylące, ponieważ ciasteczka są przypisane do domeny i nie istnieje możliwość ich wysyłania do wielu klientów na raz. Ciasteczka są przesyłane w nagłówkach HTTP, a ich działanie opiera się na współpracy między klientem a serwerem. Te błędne założenia mogą prowadzić do przekłamań w projektowaniu aplikacji webowych, gdzie zrozumienie podstawowych mechanizmów JavaScript oraz ich właściwości jest kluczowe dla efektywnego i wydajnego tworzenia stron internetowych. Zrozumienie różnic między podejściami obiektowymi w różnych językach jest istotne dla programistów, aby uniknąć pułapek myślowych oraz błędnych kierunków w kodowaniu.

Pytanie 15

Jaką czynność należy wykonać przed przystąpieniem do tworzenia kopii zapasowej danych w bazie MySQL?

A. przyznanie uprawnień do przeglądania bazy dla Administratora
B. weryfikacja, czy baza działa wystarczająco efektywnie
C. określenie systemu kodowania znaków w bazie
D. sprawdzenie integralności bazy oraz ewentualna jej naprawa
Sprawdzenie integralności bazy danych MySQL przed wykonaniem kopii bezpieczeństwa jest kluczowym krokiem, który zapewnia, że wszystkie dane są w dobrym stanie i nie występują żadne uszkodzenia. Integralność bazy danych odnosi się do spójności i poprawności danych przechowywanych w bazie. Narzędzia takie jak 'CHECK TABLE' oraz 'REPAIR TABLE' pozwalają na identyfikację i naprawę potencjalnych problemów związanych z uszkodzeniami tabel. Przykładem może być sytuacja, w której dane zostały nieprawidłowo zapisane lub usunięte, co może prowadzić do błędów w aplikacjach korzystających z bazy. W przypadku wykrycia problemów, ich naprawa przed stworzeniem kopii zapasowej jest niezbędna, aby uniknąć przenoszenia uszkodzonych danych do nowej lokalizacji. Standardy branżowe, takie jak ISO 27001, podkreślają znaczenie zarządzania integralnością danych, co stanowi fundament skutecznych strategii backupowych. Właściwie przeprowadzona diagnostyka przed wykonaniem kopii bezpieczeństwa nie tylko minimalizuje ryzyko utraty danych, ale również zwiększa efektywność procesów przywracania systemu po awarii.

Pytanie 16

Reprezentacja znacznika HTML w formacie ```przejdź```

A. jest błędny, w atrybucie href należy wpisać adres URL
B. jest poprawny, po kliknięciu w odnośnik otworzy się strona internetowa o URL "hobby"
C. jest błędny, użyto niewłaściwego znaku "#" w atrybucie href
D. jest poprawny, po kliknięciu w odnośnik strona zostanie przewinięta do sekcji o nazwie "hobby"
W odpowiedziach, które wskazują na błędy w zapisie znacznika HTML, pojawiają się nieporozumienia dotyczące funkcji atrybutu href w tagu <a>. Niepoprawne są twierdzenia sugerujące, że użycie znaku '#' w atrybucie href jest błędne. Wręcz przeciwnie, znak '#' jest standardowym sposobem definiowania odnośników do identyfikatorów na tej samej stronie. Zastosowanie atrybutu href w takiej formie jest powszechnie akceptowane i stosowane w praktyce web developerskiej. Kolejnym błędnym wnioskiem jest stwierdzenie, że w atrybucie href należy podać pełny adres URL. W rzeczywistości, gdy celem jest nawigacja do sekcji na tej samej stronie, wystarczy użyć symbolu '#' i odpowiedniego identyfikatora. Dodatkowo, pominięcie praktyki użycia href do nawigacji wewnętrznej prowadzi do mniejszych korzyści w zakresie użyteczności strony. Użytkownicy oczekują, że będą mogli łatwo przemieszczać się pomiędzy różnymi sekcjami długich treści, a niewłaściwe podejście do definiowania odnośników może prowadzić do frustracji i obniżenia jakości doświadczeń użytkowników. Warto zatem zrozumieć, że poprawne stosowanie takich odnośników jest kluczowe dla skutecznego projektowania stron internetowych.

Pytanie 17

Na zakończenie dnia w systemie zarządzania magazynem sklepu spożywczego generowany jest raport, który przedstawia produkty oraz ich dostawców, dla których ilość na stanie jest mniejsza niż 10 sztuk. Do stworzenia tego raportu zastosowano kwerendę

A. SELECT
B. UPDATE
C. CHECK TABLE
D. INSERT INTO
Odpowiedzi takie jak CHECK TABLE, UPDATE i INSERT INTO są niewłaściwe w kontekście opisywanego raportu. CHECK TABLE jest komendą używaną do sprawdzania integralności tabel w bazie danych, ale nie ma zastosowania w kontekście generowania raportów. Nie umożliwia ona pobierania danych ani ich analizowania, co jest kluczowe w przypadku raportowania stanów magazynowych. Z kolei UPDATE to polecenie, które służy do modyfikowania istniejących rekordów w bazie danych. Chociaż może być użyteczne w sytuacjach, gdy chcemy zaktualizować ilość produktów w magazynie, nie ma zastosowania w kontekście generowania raportu, ponieważ nie jest to operacja mająca na celu odczyt danych. Tak samo INSERT INTO jest używane do dodawania nowych rekordów do tabeli. W przypadku raportu, którego celem jest analizy danych, to podejście nie jest ani odpowiednie, ani praktyczne. Typowym błędem w myśleniu jest mylenie operacji manipulacji danymi z operacjami odczytu. W kontekście efektywnego zarządzania bazami danych, kluczowe jest zrozumienie, że każda z tych kwerend ma swoje specyficzne zastosowania, a w przypadku raportowania stanów magazynowych jedynie kwerenda SELECT jest odpowiednia, ponieważ umożliwia wydobycie i analizę danych zgodnie z zdefiniowanymi kryteriami.

Pytanie 18

Kto z wymienionych zajmuje się stałym przygotowaniem systemu bazy danych do działania w produkcji, zarządzaniem kontami użytkowników oraz instalowaniem nowych wersji systemu bazodanowego?

A. Twórcy narzędzi programistycznych
B. Projektanci i programiści Systemu Zarządzania Bazą Danych
C. Administratorzy serwerów oraz sieci komputerowych
D. Administratorzy systemu bazy danych
Administratorzy systemu bazy danych (DBA) odgrywają kluczową rolę w zarządzaniu bazami danych w organizacji. Ich głównym zadaniem jest zapewnienie ciągłej dostępności systemu bazy danych, co obejmuje zarówno przygotowanie środowiska do pracy produkcyjnej, jak i monitorowanie jego wydajności. DBA są odpowiedzialni za zarządzanie użytkownikami, co oznacza, że tworzą i usuwają konta użytkowników oraz przydzielają odpowiednie uprawnienia dostępu, co jest istotne dla bezpieczeństwa danych. Dodatkowo, DBA instalują nowe wersje systemu bazodanowego, co wiąże się z aktualizacjami oprogramowania, które często zawierają poprawki błędów oraz nowe funkcje. Przykładem takiej praktyki jest regularne tworzenie kopii zapasowych danych oraz ich przywracanie w przypadku awarii. DBA muszą także znać standardy i dobre praktyki branżowe, takie jak modelowanie danych czy optymalizacja zapytań SQL, co wpływa na efektywność działania bazy danych. Współpraca z innymi działami IT, takimi jak programiści czy inżynierowie systemowi, jest również niezbędna dla sprawnego funkcjonowania systemów opartych na bazach danych.

Pytanie 19

W SQL po wykonaniu zapytania ALTER TABLE osoba DROP COLUMN grupa; co się stanie?

A. nazwa tabeli zmieni się na grupa
B. nazwa kolumny zmieni się na grupa
C. kolumna grupa zostanie usunięta
D. kolumna grupa zostanie dodana
No więc dobrze trafiłeś. To zapytanie SQL ALTER TABLE osoba DROP COLUMN grupa; jest używane do usunięcia kolumny 'grupa' z tabeli 'osoba'. To polecenie jest częścią SQL, który służy do zmieniania struktury tabel. Usunięcie kolumny może być fajne, gdy już nie jest potrzebna, albo jeśli wprowadzasz jakieś zmiany w danych. Na przykład, może się zdarzyć, że kolumna 'grupa' ma dane, które są już nieaktualne, bo zmieniłeś sposób klasyfikacji. A tak w ogóle, dobrze jest przed taką operacją zrobić kopię zapasową danych, bo usunięcie kolumny to trwała zmiana. To podejście jest powszechnie wykorzystywane w zarządzaniu bazami danych oraz w procesach ETL, gdzie ważne jest, by dane były dobrze zorganizowane.

Pytanie 20

Określ rezultat działania skryptu napisanego w języku PHP ```PHP "Perl",14=>"PHP",20=>"Python",22=>"Pike"); asort($tablica); print("

");
print_r($tablica);
print("
"); ?> ```

Ilustracja do pytania
A. rys. B
B. rys. C
C. rys. D
D. rys. A
Niepoprawne odpowiedzi wynikają z błędnego rozumienia działania funkcji asort() w PHP. Funkcja ta sortuje tablicę według wartości, a nie kluczy, co oznacza, że wartości są uporządkowane alfabetycznie lub numerycznie w zależności od ich typu. W przypadku tablic asocjacyjnych klucze pozostają przypisane do swoich oryginalnych wartości co jest kluczowe dla utrzymania integralności danych. Błędne podejścia do sortowania często wynikają z założenia że sortowanie dotyczy kluczy co prowadzi do błędnych wyników. Innym typowym błędem jest założenie że sortowanie zmienia klucze na indeksy numeryczne co nie jest prawdą dla funkcji asort(). Wiedza o tym jak PHP traktuje typy danych i jak przeprowadza operacje sortowania jest niezbędna do efektywnego programowania w tym języku. Należy pamiętać że asort() różni się od sort() gdyż ta druga funkcja faktycznie zmienia klucze na indeksy numeryczne co może prowadzić do utraty istotnych danych identyfikacyjnych w tablicach asocjacyjnych.

Pytanie 21

W systemie zarządzania bazami danych MySQL komenda CREATE USER pozwala na

A. pokazanie danych o istniejącym użytkowniku
B. stworznie nowego użytkownika oraz przydzielenie mu uprawnień do bazy
C. utworzenie użytkownika
D. zmianę hasła dla już istniejącego użytkownika
Polecenie CREATE USER w MySQL jest używane do tworzenia nowych użytkowników w systemie baz danych. W kontekście zarządzania bazami danych, kluczowym aspektem jest kontrola dostępu, a odpowiednie zdefiniowanie użytkowników jest niezbędne dla zapewnienia bezpieczeństwa danych. Używając CREATE USER, administrator bazy danych może zdefiniować nazwę użytkownika oraz powiązane z nią hasło, co stanowi pierwszy krok w procesie zarządzania uprawnieniami. Dobrą praktyką jest stosowanie silnych haseł oraz nadawanie użytkownikom tylko tych uprawnień, które są im rzeczywiście potrzebne do wykonania ich zadań. Na przykład, w przypadku aplikacji webowych często tworzy się specjalnych użytkowników z ograniczonymi prawami dostępu, co minimalizuje ryzyko nieautoryzowanego dostępu do wrażliwych danych. Warto pamiętać, że po utworzeniu użytkownika, można wykorzystać polecenia GRANT, aby przyznać mu odpowiednie uprawnienia do konkretnych baz danych lub tabel, co pozwala na precyzyjne zarządzanie dostępem. Ponadto, MySQL pozwala na tworzenie użytkowników z różnymi poziomami dostępu, co jest kluczowe dla organizacji z wieloma działami oraz różnorodnymi potrzebami w zakresie bezpieczeństwa danych.

Pytanie 22

Wskaż stwierdzenie, które jest prawdziwe dla następującej definicji stylu:

<style type="text/css">
<!--
  p {color: blue; font-size: 14pt; font-style: italic}
  a { font-size: 16pt; text-transform: lowercase; }
  td.niebieski { color: blue }
  td.czerwony { color: red }
-->
</style>
A. Zdefiniowano dwie klasy.
B. Jest to styl lokalny.
C. Odnośnik będzie pisany czcionką 14 punktów.
D. Akapit będzie transponowany na małe litery.
Gratulacje, dobrze odpowiedziałeś. W załączonym kodzie CSS zdefiniowano dwie klasy, a mianowicie 'niebieski' i 'czerwony'. Klasy te są przypisane do elementów TD, co oznacza, że komórki tabeli mogą mieć kolor niebieski lub czerwony w zależności od przypisanej klasy. Klasy CSS są jednym z podstawowych sposobów formatowania elementów na stronie internetowej, które pozwalają na stylizowanie grup elementów na podstawie wspólnego identyfikatora klasy. Zamiast formatować każdy element HTML osobno, możemy jednorazowo zdefiniować styl dla klasy, a następnie przypisać tę klasę do dowolnej liczby elementów. To jest zgodne z dobrymi praktykami programowania DRY (Don't Repeat Yourself), co zwiększa czytelność i utrzymanie kodu. W kontekście pytania, każda komórka tabeli przypisana do klasy 'niebieski' lub 'czerwony' będzie miała odpowiednio niebieski lub czerwony kolor.

Pytanie 23

W języku PHP wyniki zapytania z bazy danych zostały pobrane przy użyciu polecenia mysql_query(). Aby uzyskać dane w postaci wierszy z tej zwróconej kwerendy, należy użyć polecenia:

A. mysql_fetch_row()
B. mysql_fetch_lengths()
C. mysql_field_len()
D. mysql_list_fields()
Funkcja mysql_fetch_row() to naprawdę ważne narzędzie w PHP, które pomaga w pracy z wynikami zapytań SQL. Kiedy wykonasz zapytanie za pomocą mysql_query(), dostajesz zestaw wyników, który można traktować jak tablicę. Używając mysql_fetch_row(), możesz pobrać jeden wiersz danych z tego zestawu, a to przychodzi w formie tablicy numerycznej. To bardzo przydatne, szczególnie gdy chcesz przejść przez wszystkie wiersze, które zwraca zapytanie. Na przykład, przy wyświetlaniu danych w HTML. Super jest to, że ta funkcja jest prosta w użyciu i działa efektywnie, dlatego tak wielu programistów ją ceni. Pamiętaj, żeby zawsze zabezpieczać zapytania przed SQL Injection. Możesz to zrobić, stosując przygotowane zapytania (prepared statements) albo funkcje, jak mysqli_query() z mysqli_fetch_row(). Warto też wiedzieć, że jeśli nie ma już więcej wierszy do pobrania, to mysql_fetch_row() zwróci false. Można to wykorzystać do kontrolowania pętli w kodzie, co jest przydatne.

Pytanie 24

W kontekście PGP zmienna $_GET jest zmienną

A. zwykłą, stworzoną przez autora strony
B. predefiniowaną, stosowaną do przesyłania informacji do skryptów PHP poprzez adres URL
C. predefiniowaną, służącą do zbierania wartości z formularzy po nagłówkach zapytań HTTP (dane z formularzy nie są widoczne w URL)
D. zdefiniowaną przez autora strony, wykorzystywaną do przesyłania danych z formularzy przez adres URL
Odpowiedzi dotyczące zmiennej $_GET zawierają szereg nieścisłości, które mogą wprowadzać w błąd. Pierwsza z nich sugeruje, że $_GET jest używana do gromadzenia wartości formularza po nagłówkach zlecenia HTTP. W rzeczywistości, $_GET jest używana do przesyłania danych poprzez adres URL, a nie z nagłówków formularza; to zmienna $_POST odpowiada za przesyłanie danych z formularza, których nie widać w adresie. Druga niepoprawna odpowiedź twierdzi, że $_GET jest zdefiniowana przez twórcę strony. Należy podkreślić, że $_GET jest zmienną predefiniowaną, co oznacza, że jest wbudowana w PHP i nie można jej zmienić ani zdefiniować na nowo. Ostatnia odpowiedź sugeruje, że $_GET jest zwykłą zmienną, co jest nieprecyzyjne, ponieważ zmienne predefiniowane, takie jak $_GET, mają specjalne znaczenie i funkcjonalność w kontekście aplikacji webowych. W związku z tym każda z tych odpowiedzi zawiera błędne zrozumienie roli zmiennej $_GET, co może prowadzić do nieprawidłowego użycia tej zmiennej w praktyce.

Pytanie 25

Jakie imiona spełniają warunki klauzuli LIKE w zapytaniu?

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';
A. Rafał, Rebeka, Renata, Roksana
B. Gerald, Jarosław, Marek, Tamara
C. Krzysztof, Krystyna, Romuald
D. Arleta, Krzysztof, Krystyna, Tristan
W przypadku opcji, które nie są poprawne, można dostrzec kilka kluczowych błędów w rozumowaniu. W pierwszej grupie imion, Gerald, Jarosław, Marek i Tamara, żadne imię nie spełnia kryterium '_r%', ponieważ nie mają one 'r' na drugiej pozycji. Gerald ma 'e' na drugiej pozycji, Jarosław 'a', Marek 'a', a Tamara 'a'. W drugiej grupie, Rafał, Rebeka, Renata i Roksana, również nie ma imion, które spełniają warunek. Rafał ma 'a' na drugiej pozycji, Rebeka 'e', Renata 'e', a Roksana 'o'. Co więcej, w ostatniej grupie Krzysztof i Krystyna są poprawne, ale Romuald nie spełnia warunku, gdyż 'o' jest na drugiej pozycji. Często popełnianym błędem w analizie wzorców przy użyciu LIKE jest pomijanie istotnych pozycji w analizowanym ciągu, co prowadzi do błędnych wniosków. Warto również podkreślić, że w SQL klauzula LIKE jest używana do porównywania wzorców, ale ważne jest, aby dokładnie zrozumieć, jak działają znaki wieloznaczne, takie jak '%' i '_', aby efektywnie korzystać z tej funkcjonalności. Zrozumienie, które znaki są na jakiej pozycji i jakie wartości mogą się z nimi wiązać, jest kluczowe w uzyskaniu poprawnych wyników.

Pytanie 26

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

Ilustracja do pytania
A. Rys. D
B. Rys. C
C. Rys. A
D. Rys. B
Pozostałe rysunki reprezentują inne elementy diagramu przepływu które nie nadają się do reprezentowania warunku pętli. Rysunek A to prostokąt symbolizujący operację lub proces w przepływie programu. Jest używany do przedstawiania konkretnego kroku algorytmu takiego jak obliczenie czy przypisanie wartości ale nie do wyrażania warunków. Użycie go do reprezentacji warunku pętli wprowadziłoby zamieszanie co do natury tego kroku ponieważ nie oddaje on dwoistości decyzji tak jak romb. Rysunek B przedstawia owal który często jest używany do oznaczania początku lub końca procesu. W kontekście pętli nie jest on odpowiedni ponieważ nie pozwala na wyrażenie logicznego warunku kontrolującego przebieg pętli. Wprowadzenie warunku w owalnym bloku mogłoby sugerować że jest to punkt rozpoczęcia lub zakończenia całego algorytmu co jest mylące. Rysunek D to symbol oznaczający połączenie między różnymi częściami diagramu i nie ma zastosowania przy definiowaniu logiki warunkowej. Role tego symbolu dotyczą bardziej struktury diagramu niż jego logiki. Wprowadzenie warunku w takim bloku mogłoby utrudnić śledzenie przepływu danych i logiczne rozumienie procesu co jest krytyczne dla poprawnego działania pętli. Dlatego stosowanie odpowiednich symboli zgodnych z ich przeznaczeniem jest kluczowe w tworzeniu czytelnych i zrozumiałych diagramów algorytmicznych a wybór rombu do reprezentacji warunku pętli jest zgodny z tymi zasadami i wspiera dobry styl programistyczny poprzez ułatwienie zrozumienia logiki algorytmu.

Pytanie 27

Podczas definiowania koloru w formacie RGBA, na przykład rgba(100, 40, 50, 0.2), ostatnia liczba odnosi się do

A. przezroczystości, gdzie 0 oznacza pełną przezroczystość, a 1 jej brak
B. przezroczystości, gdzie 1 oznacza pełną przezroczystość, a 0 jej brak
C. nasycenia koloru czarnego
D. saturacji barw RGB
Wybór wartości, które nie odnoszą się do przezroczystości, może prowadzić do nieporozumień w zakresie interpretacji koloru w grafice komputerowej. Nasycenie koloru czarnego lub saturacja barw RGB są terminami, które odnoszą się do intensywności koloru lub jego czystości, ale nie mają nic wspólnego z przezroczystością. Saturacja określa, jak bardzo dany kolor jest odległy od szarości; im wyższa saturacja, tym kolor jest bardziej intensywny. Wartości takie jak nasycenie i jasność są kluczowe w kontekście modelu HSL (Hue, Saturation, Lightness), który jest alternatywną metodą reprezentacji kolorów, ale nie mają zastosowania w notacji RGBA. Często występującym błędem w myśleniu jest mylenie przezroczystości z intensywnością koloru; należy pamiętać, że stopień przezroczystości dotyczy widoczności koloru na tle innych elementów, a nie jego czystości czy głębokości. Użycie niewłaściwych terminów w kontekście grafiki komputerowej może prowadzić do błędnych rozwiązań w procesie projektowania, dlatego tak ważne jest zrozumienie podstawowych pojęć związanych z kolorami oraz znajomość standardów i dobrych praktyk w branży.

Pytanie 28

W języku JavaScript, aby w jednym poleceniu zweryfikować, czy dany ciąg tekstowy zawiera inny ciąg, można zastosować metodę

A. valueOf()
B. repeat()
C. includes()
D. substr()
Metoda includes() w JavaScript służy do sprawdzenia, czy dany ciąg znaków zawiera określony podciąg. Jest to niezwykle przydatne narzędzie, które pozwala na szybkie weryfikowanie zawartości zmiennych tekstowych. Przykład zastosowania to: let str = 'JavaScript jest świetny'; console.log(str.includes('świe')); // true. Warto zwrócić uwagę, że includes() jest metodą case-sensitive, co oznacza, że wielkość liter ma znaczenie w procesie wyszukiwania. Dobrą praktyką jest korzystanie z tej metody w sytuacjach, gdzie chcemy szybko i efektywnie analizować tekst, na przykład podczas walidacji danych wejściowych w formularzach. Ponadto, jest ona zgodna z ES6, co sprawia, że jest szeroko wspierana w nowoczesnych przeglądarkach oraz środowiskach JavaScript. Zastąpienie starszych metod, takich jak indexOf(), które zwracałoby pozycję podciągu, co wymagałoby dodatkowych operacji logicznych do weryfikacji, czyni includes() bardziej eleganckim i przejrzystym rozwiązaniem.

Pytanie 29

Który z przedstawionych obrazów został przetworzony przy użyciu podanego stylu CSS?

Ilustracja do pytania
A. Rys. D
B. Rys. B
C. Rys. C
D. Rys. A
Wybór Rys. A jako poprawnej odpowiedzi jest uzasadniony zastosowaniem właściwości CSS, które są użyte w stylu. Styl CSS określa padding na 5 pikseli, co oznacza, że wokół obrazu powinna być przestrzeń wynosząca dokładnie 5 pikseli. Właściwość border ustawia obramowanie na 1 piksel, w kolorze szarym i o stylu solid, co oznacza ciągłą linię otaczającą obraz. Z kolei border-radius o wartości 10 pikseli zaokrągla rogi obramowania, co nadaje całości bardziej zaokrąglony kształt. Wszystkie te cechy są widoczne na obrazie Rys. A. W praktyce stosowanie właściwości takich jak border-radius jest często używane w projektach webowych, aby uzyskać bardziej estetyczne i nowoczesne efekty wizualne. Zaokrąglone krawędzie są estetycznie przyjemniejsze dla użytkownika i mogą poprawić czytelność oraz odbiór wizualny strony. Znajomość tych właściwości CSS jest niezbędna dla każdego front-end developera, który dąży do tworzenia nowoczesnych i funkcjonalnych interfejsów użytkownika. Praktyczne zastosowanie tego stylu może być widoczne w projektach stron internetowych, aplikacjach sieciowych oraz w tworzeniu elementów UI, które zachowują spójność wizualną z resztą projektu.

Pytanie 30

Kod umieszczony w ramce spowoduje wyświetlenie liczb

Ilustracja do pytania
A. 2 4 6 8 10
B. 2 4 6 8
C. 1 3 5 7 9
D. 1 2 3 4 5 6 7 8 9 10
Prawidłowa odpowiedź to 2 4 6 8 10 co wynika z działania przedstawionego kodu PHP. Pętla for rozpoczyna się od wartości zmiennej x równej 1 i zwiększa ją o jeden przy każdej iteracji aż do osiągnięcia wartości 10 włącznie. Instrukcja if($x % 2 != 0) continue oznacza że dla każdej nieparzystej liczby x wykonanie reszty kodu pętli jest pomijane i kontynuowane jest od kolejnej iteracji. Oznacza to że tylko liczby parzyste są wypisywane na ekranie co zgadza się z przedstawioną odpowiedzią. W praktyce taka konstrukcja jest używana do filtrowania danych gdzie chcemy przetwarzać tylko określone warunki. Stosowanie operatora modulo % jest standardową techniką do sprawdzania podzielności liczb co jest często wykorzystywane w programowaniu np. do selekcji danych lub w algorytmach kryptograficznych. Dobrą praktyką jest również używanie instrukcji continue gdy chcemy zminimalizować zagnieżdżenie kodu i poprawić jego czytelność poprzez eliminację zbędnych bloków else. Użycie pętli for z takim warunkiem pozwala na efektywne przetwarzanie dużych zbiorów danych co jest kluczowe w aplikacjach wymagających wysokiej wydajności.

Pytanie 31

W języku HTML, dane dotyczące autora, opisu oraz słów kluczowych strony powinny być zamieszczone

A. pomiędzy znacznikami <head> i </head>, w znaczniku <meta>
B. pomiędzy znacznikami <head> i </head>, w znaczniku <style>
C. pomiędzy znacznikami <body> i </body>, w znaczniku <html>
D. pomiędzy znacznikami <body> i </body>, w znaczniku <meta>
Umieszczanie metadanych pomiędzy znacznikami <body> i </body>, w znaczniku <meta>, jest błędem, ponieważ sekcja <body> przeznaczona jest na treść, która ma być wyświetlana na stronie użytkownika. Znaczniki <meta> powinny znajdować się w sekcji <head>, aby metadane mogły być prawidłowo interpretowane przez przeglądarki oraz roboty wyszukiwarek. Zastosowanie znaczników <style> w sekcji <head> do wprowadzania informacji takich jak autor czy słowa kluczowe jest nieadekwatne. Znacznik <style> jest używany wyłącznie do definiowania stylów CSS, a nie do przechowywania metadanych. Umieszczanie metadanych w sekcji <html> jest również niepoprawne, ponieważ to nie jest dedykowane miejsce na te informacje. Sekcja <html> definiuje dokument HTML jako całość, a nie poszczególne aspekty, takie jak metadane. Dlatego kluczowe jest, aby wszystkie metadane były umieszczane w odpowiedniej sekcji <head>, co zapewnia ich funkcjonalność i zgodność ze standardami HTML.

Pytanie 32

Wskaźnik HTML, który umożliwia oznaczenie tekstu jako błędnego lub nieodpowiedniego poprzez jego przekreślenie, to jaki?

A. <em> </em>
B. <b> </b>
C.
D. <s> </s>
Znak <b> służy do pogrubienia tekstu, co jest użyteczne do wyróżnienia ważnych informacji, ale nie ma związku z oznaczaniem tekstu nieprawidłowego. Gdybyśmy użyli <b> do przekreślenia tekstu, wprowadzałoby to w błąd użytkowników, sugerując, że tekst jest istotny, podczas gdy powinien być wyraźnie oznaczony jako nieaktualny. Z drugiej strony, znacznik <em> jest używany do podkreślenia lub akcentowania tekstu, co nie jest odpowiednie w kontekście, w którym chcemy wskazać, że coś jest błędne lub przestarzałe. Użycie <em> w tym kontekście mogłoby prowadzić do nieporozumień, co do intencji autora. Z kolei <sub> oznacza tekst dolny, który jest używany głównie w kontekście chemicznym lub matematycznym, a nie do wskazywania, że coś jest nieprawidłowe. Wykorzystanie <sub> w tej sytuacji byłoby niewłaściwe, a użytkownicy mogliby błędnie zinterpretować znaczenie tego elementu. Kluczowym aspektem w tworzeniu treści internetowych jest stosowanie odpowiednich znaczników HTML zgodnych z ich przeznaczeniem, co wpływa na czytelność, dostępność oraz zrozumienie informacji. Niewłaściwe użycie znaczników może prowadzić do chaosu informacyjnego oraz utrudniać użytkownikom percepcję treści.

Pytanie 33

Wywoływanie funkcji przez samą siebie to

A. hermetyzacja
B. iteracja
C. rekurencja
D. dziedziczenie
Dziedziczenie, hermetyzacja i iteracja to koncepcje programistyczne, które choć są istotne, nie są związane z odwoływaniem funkcji do samej siebie. Dziedziczenie to mechanizm, który pozwala na tworzenie nowych klas na podstawie istniejących, co umożliwia ponowne wykorzystanie kodu oraz rozszerzanie funkcjonalności bez konieczności jej powielania. W kontekście programowania obiektowego, dziedziczenie pozwala na hierarchiczne organizowanie klas, co jest zgodne z zasadą pojedynczej odpowiedzialności i otwartości-zamkniętości z SOLID. Hermetyzacja, z kolei, to technika, która polega na ukrywaniu wewnętrznych stanów obiektu i udostępnianiu jedynie niezbędnych interfejsów do manipulacji tym stanem, co zwiększa bezpieczeństwo i ułatwia zarządzanie złożonością kodu. W praktyce hermetyzacja jest kluczowa dla tworzenia czytelnych i łatwych w utrzymaniu aplikacji. Iteracja natomiast odnosi się do procesów, w których wykonuje się wielokrotne powtarzanie bloków kodu, na przykład w pętlach. To podejście jest często preferowane w sytuacjach, gdy liczba powtórzeń jest znana, a wydajność jest kluczowa. Błędne myślenie, które prowadzi do pomylenia tych koncepcji z rekurencją, może wynikać z niejasności w rozumieniu różnic między podejściem funkcyjnym a obiektowym, a także z braku zrozumienia, kiedy należy stosować które z tych narzędzi dla efektywnego rozwiązywania problemów programistycznych.

Pytanie 34

Funkcja phpinfo() umożliwia:

A. sprawdzanie wartości zmiennych wykorzystanych w skrypcie PHP
B. analizowanie kodu PHP pod kątem błędów
C. uzyskanie informacji o środowisku pracy serwera obsługującego PHP
D. inicjowanie skryptu w języku PHP
Funkcja phpinfo() jest kluczowym narzędziem w ekosystemie PHP, które dostarcza szczegółowych informacji o konfiguracji środowiska, w którym działa PHP. Użycie tej funkcji pozwala deweloperom na uzyskanie danych takich jak wersja PHP, zainstalowane rozszerzenia, ustawienia konfiguracyjne, oraz dane o systemie operacyjnym. Przykładowo, deweloper może wykorzystać phpinfo() do szybkiego sprawdzenia, czy potrzebne rozszerzenie, takie jak GD lub cURL, jest zainstalowane na serwerze. Pozwoli to uniknąć problemów związanych z brakującymi funkcjami w kodzie. Ponadto, funkcja ta jest także pomocna w procesach rozwiązywania problemów, ponieważ umożliwia natychmiastowy wgląd w kluczowe zmienne konfiguracyjne, co jest zgodne z najlepszymi praktykami w zakresie zarządzania środowiskami aplikacji webowych. Warto jednak pamiętać, że phpinfo() powinno być używane ostrożnie i tylko w środowisku deweloperskim, aby nie ujawniać danych konfiguracyjnych w produkcji.

Pytanie 35

Jaka będzie wartość zwrócona przez funkcję zao napisaną w C++, jeśli zostanie wywołana z argumentem 3.55?

int zao(float x){
  return (x+0.5);
}
A. 4
B. 3
C. 4.05
D. 3.5
Rozważając różne opcje odpowiedzi, często występuje nieporozumienie związane z różnicą między obcięciem a zaokrągleniem liczby zmiennoprzecinkowej. W języku C++ obcinanie następuje przy konwersji z typu float na int, gdzie część ułamkowa jest po prostu odrzucana. Dlatego odpowiedzi, które sugerują, że wynik będzie 3 lub 3.5, wynikają z niepełnego zrozumienia działania konwersji typów. Dodanie 0.5 do liczby przed obcięciem jest powszechną techniką zaokrąglania. Odpowiedzi sugerujące 4.05 nie uwzględniają faktu, że wynik musi być całkowity. Błąd ten może także wynikać z mylenia operacji matematycznych z wymaganiami dotyczącymi typu zwracanej wartości. Warto również wspomnieć, że w środowisku programistycznym dobrą praktyką jest korzystanie z dedykowanych funkcji zaokrąglających takich jak round(), które poprawiają czytelność kodu i zmniejszają ryzyko błędów logicznych. Właściwe zrozumienie operacji konwersji typów i zaokrąglania jest kluczowe w programowaniu, gdzie dokładność obliczeń ma istotne znaczenie, na przykład w aplikacjach finansowych czy inżynierskich. Dlatego regularne stosowanie standardowych funkcji z biblioteki cmath może zapobiec wielu błędom logicznym i zwiększyć niezawodność aplikacji. Programiści powinni być świadomi różnic w implementacji zaokrąglania w różnych językach programowania, aby unikać pomyłek w konwersjach między nimi.

Pytanie 36

W jakim standardzie języka hipertekstowego wprowadzono do składni znaczniki sekcji <footer>, <header>, <nav>?

A. XHTML1.0
B. HTML4
C. XHTML 2.0
D. HTML5
Tak, znaczników <footer>, <header> i <nav> zaczęto używać w HTML5, który zadebiutował w październiku 2014 roku. To jest ciekawe, bo HTML5 wprowadził sporo nowych semantycznych elementów, które pomagają w lepszej organizacji dokumentów HTML. Dzięki nim, przeglądarki i roboty wyszukiwarek mogą lepiej zrozumieć strukturę stron. Na przykład, <header> to nagłówek strony lub sekcji, <nav> tworzy menu nawigacyjne, a <footer> to stopka. Myślę, że to super sprawa, bo poprawia dostępność strony i jej SEO, bo tak naprawdę pomaga wyszukiwarkom w lepszym indeksowaniu treści, co może prowadzić do lepszych wyników w wyszukiwarkach. Dodatkowo, HTML5 ma też inne ciekawe nowinki, jak wsparcie dla multimediów, lokalne przechowywanie danych, a także lepszą kompatybilność z aplikacjami mobilnymi, więc zdecydowanie warto go wykorzystywać do budowy stron internetowych.

Pytanie 37

Jaki zestaw terminów określa interfejs użytkownika witryny internetowej?

A. Przyciski, menu, interakcja użytkownika z aplikacją
B. Szkic strony, diagram witryny, diagram przepływu informacji
C. Obróbka danych, system zarządzania treścią, projektowanie informacji
D. Przesyłanie zapytań do bazy, skrypty PHP
Interfejs użytkownika (UI) strony internetowej to kluczowy element, który odpowiada za interakcję użytkownika z aplikacją internetową. W jego skład wchodzą różnorodne elementy, takie jak przyciski, menu, formularze, ikony oraz inne komponenty, które umożliwiają użytkownikowi nawigację, wprowadzanie danych oraz podejmowanie akcji. Zastosowanie standardów projektowania, takich jak Material Design czy Human Interface Guidelines, pozwala na tworzenie intuicyjnych i estetycznych interfejsów, co zwiększa użyteczność strony. Przykładowo, przycisk „Zatwierdź” umieszczony w formularzu powinien być wyraźnie oznaczony i łatwo dostępny, aby użytkownicy mogli szybko zakończyć proces rejestracji lub zakupu. Dobre praktyki w zakresie projektowania UI obejmują także responsywność, co oznacza, że interfejs powinien dostosowywać się do różnych rozmiarów ekranów, zapewniając optymalne wrażenia użytkownika na urządzeniach mobilnych oraz desktopowych. Interakcja użytkownika z aplikacją jest kluczowym aspektem, a właściwie zaprojektowany interfejs wpływa na satysfakcję użytkowników oraz ich skłonność do powrotu na stronę.

Pytanie 38

Aby obraz umieszczony za pomocą kodu HTML mógł być rozpoznawany przez programy wspierające osoby niewidome, konieczne jest określenie atrybutu

A. alt
B. src
C. border
D. sizes
Atrybut 'alt' (alternatywny tekst) jest kluczowym elementem w kontekście dostępności stron internetowych, szczególnie dla osób niewidzących. Jego głównym celem jest dostarczenie opisowej informacji o obrazie, który nie może być bezpośrednio widziany. W przypadku obrazów, które nie są widoczne z różnych powodów (np. uszkodzenie pliku, brak połączenia internetowego lub korzystanie z czytników ekranu), tekst alternatywny pomaga zrozumieć kontekst i znaczenie danego obrazu. Przykład zastosowania: dla obrazka przedstawiającego logo firmy, można użyć atrybutu alt w następujący sposób: <img src='logo.png' alt='Logo firmy XYZ'>. W ten sposób, jeśli obrazek nie załadowałby się, użytkownik korzystający z czytnika ekranu otrzyma informację o tym, co ten obraz przedstawia. Definiowanie atrybutu 'alt' jest zgodne z wytycznymi WCAG (Web Content Accessibility Guidelines), które zalecają, aby wszystkie obrazki, które pełnią funkcję informacyjną, były opisane w taki sposób, aby zapewnić pełny dostęp do treści wszystkim użytkownikom. W praktyce takie podejście nie tylko poprawia dostępność, ale również pozytywnie wpływa na SEO, ponieważ wyszukiwarki również analizują ten atrybut.

Pytanie 39

Jak określa się element, który został oznaczony znakiem zapytania w strukturze platformy .NET, a który pozwala na tworzenie indywidualnych aplikacji z wykorzystaniem frameworków oraz na przekształcanie kompilowanego kodu pośredniego na kod maszynowy procesora znajdującego się w komputerze?

Ilustracja do pytania
A. Infrastruktura językowa (CLI)
B. Wspólne środowisko uruchomieniowe (CLR)
C. Biblioteka klas bazowych (BCL)
D. Wspólne środowisko programistyczne (CLP)
Wspólne środowisko uruchomieniowe (CLR) jest kluczowym komponentem platformy .NET, który odpowiada za zarządzanie wykonywaniem programów napisanych w różnych językach programowania. CLR działa jako wirtualna maszyna i umożliwia uruchamianie aplikacji poprzez kompilację kodu pośredniego (CIL) do kodu maszynowego właściwego dla danego procesora. Jednym z głównych zadań CLR jest zarządzanie pamięcią, w tym automatyczne zarządzanie zasobami oraz usuwanie nieużywanych obiektów za pomocą mechanizmu garbage collection. Ponadto CLR zapewnia bezpieczeństwo typów i izolację, co pozwala na lepszą kontrolę nad integralnością aplikacji. Dzięki takiemu podejściu, deweloperzy mogą skupić się na logice aplikacyjnej, nie martwiąc się o niskopoziomowe szczegóły związane z zarządzaniem pamięcią. CLR wspiera także interoperacyjność między różnymi językami, co oznacza, że komponenty napisane w jednym języku mogą być używane w aplikacjach napisanych w innym języku, co zwiększa elastyczność i możliwości wielokrotnego użycia kodu. Dzięki CLR deweloperzy mogą tworzyć stabilne i wydajne aplikacje w sposób efektywny i zgodny z nowoczesnymi standardami programistycznymi.

Pytanie 40

W SQL klauzula DISTINCT w poleceniu SELECT zapewnia, że zwrócone wyniki

A. będą zgrupowane według wskazanego pola.
B. nie zawiera będą duplikatów.
C. będą uporządkowane.
D. będą spełniały dany warunek.
Klauzula DISTINCT w języku SQL jest używana w instrukcji SELECT do eliminacji duplikatów w zwracanych wynikach zapytania. Gdy zapytanie wykorzystuje DISTINCT, zwracane są tylko unikalne rekordy, co oznacza, że identyczne wiersze występujące w zestawie wyników są redukowane do jednego wystąpienia. Działa to poprzez porównywanie wszystkich kolumn wymienionych w SELECT, co oznacza, że różnice w jakiejkolwiek kolumnie będą skutkować zwróceniem oddzielnych wierszy. Przykładowe zapytanie: SELECT DISTINCT nazwisko FROM pracownicy; zwróci listę unikalnych nazwisk pracowników, eliminując wszelkie powtórzenia. Klauzula DISTINCT jest szczególnie przydatna w raportach i analizach danych, gdyż pozwala na zrozumienie częstotliwości występowania różnych wartości. Zgodnie z SQL ANSI, użycie DISTINCT jest standardem, co oznacza, że jest obsługiwane przez wszystkie główne systemy zarządzania bazami danych, takie jak MySQL, PostgreSQL czy Oracle. Warto jednak pamiętać, że dodanie DISTINCT do zapytania może wpływać na wydajność, zwłaszcza w przypadku dużych zbiorów danych, ponieważ wymaga dodatkowych operacji przetwarzania, aby zidentyfikować i usunąć duplikaty.