Wyniki egzaminu

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

Egzamin zdany!

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

Wykonano następującą kwerendę SQL na tabeli dania, której wiersze zostały pokazane na obrazie:

SELECT * FROM dania WHERE typ < 3 AND cena < 30 LIMIT 5;
Ile wierszy wybierze ta kwerenda?

idtypnazwacena
11Gazpacho20
21Krem z warzyw25
31Gulaszowa ostra30
42Kaczka i owoc30
52Kurczak pieczony40
62wieprzowy przysmak35
72Mintaj w panierce30
82Alle kotlet30
93Owoce morza20
103Grzybki, warzywka, sos15
113Orzechy i chipsy10
123Tatar i jajo15
133Bukiet warzyw10
A. 8
B. 5
C. 2
D. 13
Gratulacje, dobrze sobie poradziłeś z tym pytaniem! Wykonanie kwerendy SELECT na tabeli danych, oznacza wybieranie konkretnych wierszy z tej tabeli, które spełniają określone kryteria. Kwerendy SQL są podstawowym narzędziem w zarządzaniu bazami danych, a ich zrozumienie jest kluczowe dla efektywnej pracy z danymi. W tym przypadku, kwerenda SELECT wybrała 2 wiersze - jest to prawidłowa odpowiedź. W praktyce, mogłoby to oznaczać na przykład wybranie z bazy danych informacji o dwóch klientach, którzy spełnili określone kryteria. Ważne jest, aby pamiętać, że liczba wybranych wierszy zależy od kryteriów, które określamy w kwerendzie. W SQL mamy wiele możliwości filtrowania i sortowania danych, co pozwala na efektywne zarządzanie informacjami. Dobra praktyka to dokładne zrozumienie działania kwerendy, zanim zostanie ona wykonana na dużej ilości danych.

Pytanie 2

Jakiego języka można użyć do obsługi połączenia z bazą danych MySQL podczas rozwijania aplikacji webowej?

A. XHTML
B. CSS
C. PHP
D. HTML
PHP jest językiem skryptowym, który jest szeroko stosowany do tworzenia dynamicznych aplikacji internetowych, a jego zdolność do interakcji z bazami danych, takimi jak MySQL, czyni go idealnym narzędziem do obsługi połączeń z bazą danych. PHP umożliwia programistom wysyłanie zapytań SQL do bazy danych, wykonywanie operacji CRUD (tworzenie, odczyt, aktualizacja, usuwanie) oraz przetwarzanie wyników, co jest kluczowe w nowoczesnym tworzeniu aplikacji webowych. Przykładowy kod PHP do nawiązania połączenia z bazą danych MySQL może wyglądać następująco: $conn = new mysqli('localhost', 'username', 'password', 'database');. W przypadku niepowodzenia połączenia, można użyć if ($conn->connect_error) { die('Connection failed: ' . $conn->connect_error); }. PHP wspiera również różne techniki zabezpieczeń, takie jak przygotowywanie zapytań, co znacząco zwiększa bezpieczeństwo aplikacji przed atakami typu SQL Injection. Dokumentacja PHP oraz standardy, takie jak PSR (PHP Standards Recommendations), dostarczają programistom niezbędnych wytycznych, aby tworzyć wydajne i bezpieczne aplikacje. Dzięki swojej elastyczności i wszechstronności, PHP stał się językiem pierwszego wyboru dla programistów zajmujących się tworzeniem aplikacji internetowych z interfejsem do baz danych.

Pytanie 3

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. <input name="password" />
B. <input type="password" />
C. <form input type="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 4

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

Pytanie 5

W CSS zapis w postaci ```h1::first-letter{color:red;}``` spowoduje, że kolor czerwony będzie dotyczył

A. pierwszej litery nagłówka pierwszego poziomu
B. tekstów nagłówka pierwszego poziomu
C. pierwszej litery nagłówka drugiego poziomu
D. pierwszej linii akapitu
Zapis CSS h1::first-letter {color: red;} odnosi się do selektora pseudo-elementu first-letter, który jest używany do stylizacji pierwszej litery bloku tekstowego w nagłówkach. W tym wypadku, gdy selektor jest zastosowany do elementu h1, oznacza to, że kolor pierwszej litery nagłówka pierwszego stopnia (h1) zostanie zmieniony na czerwony. Pseudo-element first-letter działa tylko dla elementów blokowych, takich jak nagłówki, akapity czy listy. W praktyce, jeśli w dokumencie HTML mamy element <h1> z tekstem, np. 'Witaj świecie', to wyłącznie litera 'W' zostanie wyświetlona w kolorze czerwonym. To podejście jest zgodne ze standardami CSS, które definiują pseudo-elementy jako specyficzne fragmenty dokumentu, które można stylizować niezależnie od reszty zawartości. Warto również zauważyć, że stosowanie takich selektorów pozwala na uzyskanie bardziej złożonych efektów wizualnych bez konieczności modyfikacji struktury HTML. Umożliwia to projektantom stron internetowych większą elastyczność i kontrolę nad estetyką treści.

Pytanie 6

Jakie zapytanie pozwoli Administratorowi cofnąć uprawnienia do przeglądania oraz modyfikacji danych w bazie gazeta dla użytkownika redaktor?

A. REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost';
B. GRANT SELECT, UPDATE ON gazeta.* TO 'redaktor'@'localhost';
C. GRANT SELECT, ALTER ON gazeta.* TO 'redaktor'@'localhost';
D. REVOKE SELECT, ALTER ON gazeta.* FROM 'redaktor'@'localhost';
Wybrana odpowiedź jest poprawna, ponieważ polecenie REVOKE służy do odbierania wcześniej przyznanych uprawnień użytkownikowi w systemie zarządzania bazą danych. W tym przypadku, REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost'; skutecznie odbiera prawo do przeglądania (SELECT) oraz aktualizacji (UPDATE) danych w bazie danych 'gazeta' dla użytkownika 'redaktor'. Przykładowe zastosowanie tego zapytania może mieć miejsce w sytuacji, gdy redaktor przestaje pełnić swoją funkcję i nie powinien już mieć dostępu do tych informacji. Standardową praktyką w zarządzaniu dostępem do baz danych jest stosowanie zasady najmniejszych uprawnień, co oznacza, że użytkownik powinien mieć tylko te uprawnienia, które są mu niezbędne do wykonywania swoich obowiązków. W przypadku, gdy konieczne jest zmodyfikowanie uprawnień, zamiast usuwania użytkownika, łatwiej jest po prostu odebrać mu konkretne prawa, co jest dokładnie tym, co robi to polecenie.

Pytanie 7

W algorytmie jeden z bloków ma wpisaną akcję "Wypisz liczbę". Który z kształtów może przyjąć tę akcję?

Ilustracja do pytania
A. Kształt 2.
B. Kształt 1.
C. Kształt 4.
D. Kształt 3.
Niestety, udzieliłeś nieprawidłowej odpowiedzi. W algorytmie, akcje takie jak 'wypisz liczbę' są zwykle zawarte w blokach oznaczających konkretne działania, które algorytm powinien wykonać. Kształt 1, który wybrałeś jako odpowiedź, jest standardowym oznaczeniem dla bloków akcji w notacjach diagramów przepływu, co oznacza, że algorytm powinien wykonać pewną operację lub działanie. Inne kształty, takie jak kształt 2, 3 lub 4, mogą reprezentować inne elementy algorytmu, takie jak decyzje, procesy wejścia lub wyjścia, lub podprocesy. Te kształty służą do oznaczania różnych aspektów przepływu sterowania w algorytmie, ale żaden z nich nie jest przeznaczony do reprezentowania akcji, takich jak 'wypisz liczbę'. Zrozumienie znaczenia i zastosowania tych różnych kształtów jest kluczowe dla efektywnego czytania i tworzenia diagramów przepływu, które są niezbędne w programowaniu i analizie systemów.

Pytanie 8

Język HTML posiada nagłówki, które służą do tworzenia hierarchii treści. Nagłówki te występują tylko w zakresie

A. h1 – h8
B. h1 – h4
C. h1 – h10
D. h1 – h6
Odpowiedź h1 – h6 jest poprawna, ponieważ język HTML udostępnia sześć poziomów nagłówków, od h1 do h6, które służą do tworzenia hierarchii treści na stronie internetowej. Nagłówek h1 jest najważniejszy i powinien być używany do oznaczenia głównego tytułu strony, podczas gdy h2, h3, h4, h5 i h6 wskazują na kolejne poziomy nagłówków, które pomagają w organizacji treści. Przykładowo, nagłówek h2 może być używany do sekcji, natomiast h3 może oznaczać podsekcje w ramach danej sekcji. Używanie nagłówków w ten sposób nie tylko poprawia czytelność i zrozumienie treści przez użytkowników, ale także pozytywnie wpływa na SEO (optymalizację dla wyszukiwarek). Warto pamiętać, że zgodnie z najlepszymi praktykami, powinno się unikać pomijania poziomów nagłówków, co zapewnia logiczną strukturę treści i ułatwia indeksację przez roboty wyszukiwarek.

Pytanie 9

Jakie czynniki wpływają na wysokość dźwięku?

A. intensywność wzbudzenia drgań
B. częstotliwość drgań fali akustycznej
C. metoda wzbudzania drgań
D. czas oscylacji źródła dźwięku
Częstotliwość drgań fali akustycznej to taki kluczowy element, który wpływa na to, jak wysoko brzmi dźwięk. Mówiąc prosto, to ilość drgań, które źródło dźwięku wykonuje w danym czasie, zwykle mierzona w Hertzach (Hz). Im wyższa ta częstotliwość, tym wyższy dźwięk wydobywają instrumenty muzyczne. Na przykład na gitarze, jak skrócisz strunę, to dźwięk staje się wyższy, co jest zgodne z tym, co mówi fizyka akustyczna. W inżynierii dźwięku często korzysta się z filtrów i equalizerów, żeby odpowiednio dostosować dźwięki w nagraniach. Rozumienie tego jest ważne nie tylko w muzyce, ale i w technologiach audio. Projektanci dźwięku muszą dobrze znać te zasady, aby móc stworzyć odpowiednie efekty dźwiękowe. Więc, ogólnie mówiąc, znajomość tego, jak częstotliwość wiąże się z wysokością dźwięku, jest istotna dla każdej osoby związanej z dźwiękiem, zarówno w teorii, jak i w praktyce.

Pytanie 10

W przypadku uszkodzenia serwera bazy danych, aby jak najszybciej przywrócić pełną funkcjonalność bazy danych, należy skorzystać z

A. najnowszej wersji instalacyjnej serwera.
B. aktualnej wersji kopii zapasowej.
C. kompletnej listy użytkowników serwera.
D. opisów struktur danych w tabelach.
Wybór aktualnej wersji kopii zapasowej jako najefektywniejszej metody przywrócenia działania bazy danych po awarii serwera jest zgodny z najlepszymi praktykami w zarządzaniu danymi. Kopie zapasowe stanowią kluczowy element strategii ochrony danych i powinny być regularnie tworzone, aby minimalizować ryzyko utraty informacji. W przypadku uszkodzenia serwera bazy danych, przywrócenie z najnowszej kopii zapasowej, która zawiera wszystkie aktualne dane, jest najskuteczniejszym sposobem odzyskania sprawności systemu. Kopie zapasowe można tworzyć na różne sposoby, w tym pełne, przyrostowe i różnicowe, co pozwala na elastyczność w zarządzaniu danymi. Zgodnie z rekomendacjami takich standardów jak ISO 27001, organizacje powinny wdrażać procedury tworzenia i zarządzania kopiami zapasowymi. Przykładowo, w przypadku awarii, administratorzy mogą szybko przywrócić bazę danych do stanu sprzed awarii, co znacząco ogranicza przestoje i straty finansowe związane z utratą danych.

Pytanie 11

Zapis CSS w postaci: ```ul{ list-style-image:url('rys.gif');}``` spowoduje, że na stronie internetowej

A. rys.gif będzie służyć jako tło dla nienumerowanej listy
B. każdy element listy zyska indywidualne tło pochodzące z grafiki rys.gif
C. rysunek rys.gif zostanie wyświetlony jako punkt listy nienumerowanej
D. punktorem nienumerowanej listy stanie się rys.gif
W CSS właściwość 'list-style-image' służy do określenia obrazu, który ma być użyty jako znacznik punktu dla list nienumerowanych. W podanym przykładzie zapis 'ul{ list-style-image:url('rys.gif'); }' informuje przeglądarkę, aby zamiast domyślnego punktu, wykorzystała obrazek 'rys.gif'. Oznacza to, że każdy element listy (li) w tej nienumerowanej liście będzie miał przypisany obraz jako punkt. To podejście jest zgodne ze standardami CSS i jest szeroko stosowane w celu dodania indywidualnego stylu do elementów listy. Przykładowo, zamiast tradycyjnego kropkowania, możemy użyć ikon lub obrazów, które lepiej oddają tematykę strony. Ważne jest, aby plik graficzny był dostępny i poprawnie załadowany, co zapewni, że znacznik wyświetli się na stronie. Istotne jest również, aby pamiętać o optymalizacji obrazków dla sieci, co może poprawić szybkość ładowania strony.

Pytanie 12

W kodzie HTML stworzono formularz, który wysyła informacje do pliku formularz.php. Po naciśnięciu przycisku typu submit, przeglądarka zostaje przekierowana na wskazany adres. Na podstawie podanego adresu /formularz.php?imie=Anna&nazwisko=Kowalska można stwierdzić, że dane do pliku formularz.php zostały wysłane za pomocą metody:

A. SESSION
B. GET
C. COOKIE
D. POST
Poprawna odpowiedź wskazuje na metodę GET. Jako jedna z dwóch podstawowych metod przesyłania danych w protokole HTTP, GET przesyła informacje poprzez dołączenie ich do adresu URL. I tak, jeżeli na załączonym obrazku widzimy adres URL zawierający parametry (np. imię=Anna&nazwisko=Kowalska) dołączone do adresu pliku formularz.php, to oznacza, że dane zostały przesłane właśnie tą metodą. Jest to zgodne z dobrymi praktykami i standardami branżowymi, które zalecają użycie metody GET zwłaszcza przy przesyłaniu niewielkich ilości danych, które nie wymagają specjalnego zabezpieczenia. Ważne jednak jest zrozumienie, że metoda GET nie jest odpowiednia, gdy przesyłane dane są poufne, np. hasła, ponieważ są one widoczne w pasku adresu przeglądarki. Ponadto, warto zauważyć, że dane przesyłane metodą GET mogą być zapisane w historii przeglądarki, co również ma swoje implikacje bezpieczeństwa.

Pytanie 13

SELECT count(*) FROM Uczniowie WHERE srednia = 5;
Wynikiem uruchomienia przedstawionego zapytania SQL jest:
A. Liczba uczniów, których średnia ocen wynosi 5.
B. Średnia ocen wszystkich uczniów.
C. Liczba wszystkich uczniów.
D. Suma ocen uczniów, których średnia ocen wynosi 5.
Poprawnie – to zapytanie zwraca liczbę uczniów, których kolumna „srednia” ma wartość równą dokładnie 5. Funkcja agregująca COUNT(*) w SQL nie liczy sumy ani średniej, tylko po prostu zlicza wiersze spełniające warunek w klauzuli WHERE. W tym przypadku tabela Uczniowie jest filtrowana warunkiem srednia = 5, więc do liczenia trafiają wyłącznie rekordy uczniów, którzy mają średnią ocen równą 5. Dopiero na takim przefiltrowanym zbiorze wykonywany jest COUNT(*), który zwraca jedną liczbę – ile takich rekordów istnieje. Moim zdaniem to jedno z najczęściej używanych połączeń: WHERE + COUNT(*), bo w praktyce non stop chcemy wiedzieć „ile jest elementów spełniających warunek”. W raportach, panelach administracyjnych, dashboardach – np. ile jest klientów z określonym statusem, ilu użytkowników ma aktywne konto, ilu pracowników ma premię powyżej jakiegoś progu itd. Warto też zauważyć, że COUNT(*) liczy wszystkie wiersze, niezależnie od tego, czy jakieś inne kolumny są NULL, a kluczowe jest tylko to, że warunek WHERE jest spełniony. Dobrą praktyką jest zawsze dokładne określanie warunku filtrowania, bo drobna zmiana, np. srednia >= 5 zamiast srednia = 5, całkowicie zmienia znaczenie zapytania. W projektowaniu baz danych i zapytań SQL takie precyzyjne myślenie o warunkach i funkcjach agregujących jest absolutną podstawą profesjonalnej pracy z danymi.

Pytanie 14

Który z elementów relacyjnej bazy danych, będący kodem w języku SQL, może być użyty w zapytaniach zmieniających kolumny danych przedstawiane w formie tabeli, niezależnie od tego, czy jest tworzony ręcznie, czy też dynamicznie?

A. Funkcja zdefiniowana
B. Procedura składowa
C. Wyzwalacz
D. Reguła
Funkcja zdefiniowana, znana również jako funkcja skalarna, jest obiektem relacyjnej bazy danych, który może być wywoływany w zapytaniach SQL, w tym w zapytaniach modyfikujących dane. Oferuje ona możliwość przetwarzania i zwracania wartości na podstawie określonego zestawu wejściowych. Funkcje zdefiniowane przez użytkownika są szczególnie przydatne, gdy potrzebujemy skomplikowanej logiki przetwarzania danych, która nie jest dostępna w standardowych funkcjach SQL. Przykładem może być funkcja obliczająca VAT na podstawie podanej kwoty, która może być użyta w zapytaniach INSERT lub UPDATE, aby dynamicznie obliczyć wartość i wprowadzić ją do bazy danych. W standardzie SQL, funkcje zdefiniowane są zgodne z normą SQL-92 i są kluczowym elementem w budowie bardziej zaawansowanych aplikacji bazodanowych. Umożliwiają one encapsulację logiki biznesowej, co pozwala na wielokrotne ich wykorzystanie, a także zwiększa czytelność kodu SQL.

Pytanie 15

Gdzie są rejestrowane błędy interpretacji kodu PHP?

A. nigdzie, są pomijane przez przeglądarkę oraz interpreter kodu PHP
B. w logu, jeśli zostanie ustawiony odpowiedni parametr w pliku php.ini
C. w oknie edytora, w którym pisany jest kod PHP
D. w podglądzie zdarzeń systemu Windows
Nieprawidłowe podejście do lokalizacji błędów w PHP może prowadzić do poważnych problemów w procesie debugowania aplikacji. Odpowiedź sugerująca, że błędy są wyświetlane w oknie edytora, w którym powstaje kod, jest myląca, ponieważ edytory kodu nie są standardowo zaprojektowane do wyłapywania błędów wykonywania kodu PHP. Edytory mogą podświetlać syntaktyczne błędy na etapie pisania kodu, ale nie rejestrują błędów runtime, które są kluczowe dla zrozumienia, dlaczego dany skrypt nie działa zgodnie z oczekiwaniami. Z kolei twierdzenie, że błędy są zapisywane w podglądzie zdarzeń systemu Windows, jest błędne, ponieważ podgląd zdarzeń służy do monitorowania zdarzeń systemowych, a nie do rejestrowania błędów aplikacji. To może prowadzić do nieporozumień i trudności w identyfikacji problemów w kodzie. Ponadto, stwierdzenie, że błędy są ignorowane przez przeglądarkę oraz interpreter PHP, jest nieprawdziwe. W rzeczywistości, jeśli nie skonfigurujemy odpowiednio systemu logowania, błędy mogą być trudne do zauważenia, co prowadzi do ignorowania ich, ale w rzeczywistości są one obecne i mogą wpłynąć na działanie aplikacji. Dlatego fundamentalne jest, aby programiści rozumieli różnicę pomiędzy błędami syntaktycznymi a runtime oraz jak efektywnie korzystać z mechanizmów logowania w PHP, aby poprawić jakość swojego kodu.

Pytanie 16

Który efekt został zaprezentowany na filmie?

A. Zwiększenie ostrości zdjęcia.
B. Zmiana jasności zdjęć.
C. Zmniejszenie kontrastu zdjęcia.
D. Przenikanie zdjęć.
W tym zadaniu łatwo pomylić kilka różnych rodzajów operacji na obrazie, bo wszystkie jakoś „zmieniają wygląd zdjęcia”, ale działają zupełnie inaczej. Efekt pokazany na filmie to przenikanie dwóch zdjęć w czasie, czyli animowane przejście między jednym obrazem a drugim. Kluczowa cecha: widzimy jednocześnie dwa zdjęcia, jedno stopniowo zanika, a drugie stopniowo się pojawia. To nie jest typowa operacja edycyjna na pojedynczym pliku graficznym, tylko efekt animacyjny, często wykorzystywany w pokazach slajdów, sliderach na stronach WWW i w montażu wideo. Zmiana jasności zdjęć to zupełnie inny rodzaj przetwarzania. Jasność modyfikuje poziom luminancji całego obrazu lub jego fragmentów – obraz staje się ciemniejszy albo jaśniejszy, ale dalej jest to to samo zdjęcie. Nie pojawia się nowe, drugie zdjęcie, nie ma nakładania dwóch kadrów. W programach do grafiki mamy to jako „Brightness”, „Exposure” czy „Levels”. Jeśli na filmie widać, że jeden obraz przechodzi płynnie w inny, to nie jest korekta jasności, tylko przejście między dwiema warstwami. Podobnie z ostrością – zwiększenie ostrości polega na podbiciu kontrastu na krawędziach, żeby szczegóły wyglądały wyraźniej. W praktyce używa się filtrów typu Unsharp Mask, Smart Sharpen albo algorytmów wyostrzania w czasie rzeczywistym. Obraz przed i po wyostrzeniu to ciągle ta sama klatka, tylko z innym przetworzeniem detali, nie ma efektu zanikania jednego zdjęcia i pojawiania się drugiego. Zmniejszenie kontrastu to kolejna korekta globalna, która spłaszcza różnice między jasnymi a ciemnymi partiami obrazu. Zdjęcie robi się bardziej „szare”, mniej dynamiczne. Znowu – cały czas pracujemy na jednym ujęciu, bez miksowania dwóch fotografii. Typowym błędem myślowym przy takich pytaniach jest to, że skoro coś się „zmienia w czasie”, to musi chodzić o jakąś regulację parametrów typu jasność czy kontrast. Tymczasem w efektach multimedialnych bardzo często operujemy na wielu warstwach – dwa obrazy, dwie klatki wideo – i animujemy ich wzajemną przezroczystość. Właśnie to jest esencją przenikania zdjęć i odróżnia je od zwykłych korekt obrazu.

Pytanie 17

Jakiego języka skryptowego ogólnego zastosowania powinno się użyć do tworzenia aplikacji internetowych, które są zintegrowane z HTML i działają na serwerze?

A. PHP
B. C#
C. JavaScript
D. Perl
JavaScript, choć jest niezwykle popularnym językiem skryptowym używanym do tworzenia interaktywnych elementów na stronach internetowych, działa głównie po stronie klienta, co oznacza, że kod jest wykonywany w przeglądarce użytkownika, a nie na serwerze. To ogranicza możliwość bezpośredniej interakcji z bazą danych lub przetwarzania danych na serwerze. Użycie Javy jako języka skryptowego w aplikacjach webowych również napotyka ograniczenia, ponieważ jest to język o większej złożoności i przeznaczeniu systemowym, a nie specjalnie dostosowany do dynamicznych treści w sieci. W przypadku Perla, choć jest to język o dużych możliwościach, jego popularność w tworzeniu aplikacji WWW znacznie zmalała na rzecz bardziej nowoczesnych rozwiązań, jak PHP lub Python. C# również nie jest idealnym wyborem dla aplikacji WWW, które mają być zagnieżdżane w HTML, ponieważ jest językiem głównie stosowanym w ekosystemie Microsoftu i .NET, który wymaga dodatkowej konfiguracji serwera. To prowadzi do nieefektywności, jeśli chodzi o szybkość i łatwość wdrażania. Wybór niewłaściwego języka do danego zadania, takiego jak tworzenie aplikacji WWW, może skutkować poważnymi komplikacjami, w tym większym czasem ładowania, trudnościami w integracji oraz mniejszą elastycznością w rozwoju aplikacji. Dlatego tak ważne jest zrozumienie specyfiki i zastosowania różnych języków skryptowych w kontekście budowy aplikacji webowych.

Pytanie 18

Jak można opisać przedstawiony obiekt w JavaScript?

var obiekt1 = {
  x: 0,
  y: 0,
  wsp: function() { ... }
}
A. dwiema właściwościami i jedną metodą
B. trzema metodami
C. dwiema metodami i jedną właściwością
D. trzema właściwościami
W języku JavaScript obiekty są fundamentalną częścią języka, umożliwiającą przechowywanie i manipulowanie danymi w sposób bardziej uporządkowany. W podanym przykładzie obiekt zawiera dwie właściwości z wartościami liczbowymi oraz jedną metodę. Częstym błędem jest mylenie właściwości z metodami. Właściwość to statyczna wartość przypisana do klucza, natomiast metoda to funkcja przypisana do klucza, którą można wywołać. Niewłaściwe zrozumienie tej różnicy może prowadzić do błędnego interpretowania struktury obiektu. Zrozumienie poprawnego rozróżniania między właściwościami a metodami jest kluczowe w programowaniu obiektowym, które kładzie nacisk na modularność i wielokrotne używanie kodu. Programiści muszą również pamiętać, że struktura obiektu w JavaScript pozwala na dynamiczne dodawanie nowych właściwości i metod, co czyni ten język elastycznym i potężnym narzędziem w tworzeniu dynamicznych aplikacji internetowych. Błędem jest przypuszczanie, że każda deklaracja w obiekcie jest metodą, co może wynikać z niezrozumienia, że metody muszą zawierać fragment funkcji. Właściwe rozpoznanie tych elementów jest niezbędne do efektywnego wykorzystania zasad programowania obiektowego oraz tworzenia bardziej złożonych i skalowalnych aplikacji.

Pytanie 19

Jakiego typu tablicy dotyczy instrukcja dodawania elementu w JavaScript?

Tablica['technik'] = 'informatyk';
A. asocjacyjnej
B. wielowymiarowej
C. stałej
D. liczbowej
Tablica asocjacyjna w JavaScript to struktura danych, która przechowuje wartości w formie par klucz-wartość, co pozwala na efektywne i dynamiczne przypisywanie i pobieranie danych. Klucze w tablicy asocjacyjnej mogą być dowolnymi łańcuchami znaków, co daje dużą elastyczność w organizacji danych. Przykładem jest przypisanie Tablica['technik'] = 'informatyk'; gdzie 'technik' jest kluczem, a 'informatyk' wartością. To podejście jest zgodne ze standardami JavaScript, w którym tablice asocjacyjne są implementowane jako obiekty. W praktyce używa się ich często do przechowywania konfiguracji, danych użytkowników lub innych danych, które wymagają szybkiego dostępu i modyfikacji. Tablice asocjacyjne umożliwiają dynamiczne dodawanie nowych par klucz-wartość, co jest cenioną cechą w aplikacjach wymagających skalowalności. Warto zauważyć, że podczas gdy tradycyjne tablice używają indeksów liczbowych, tablice asocjacyjne oferują większą elastyczność poprzez użycie kluczy tekstowych, co jest zgodne z dobrymi praktykami kodowania i ułatwia czytelność oraz utrzymanie kodu.

Pytanie 20

Jakie będzie wyjście programu napisanego w języku JavaScript, umieszczonego w ramce, po podaniu wartości 5 na wejściu?

Ilustracja do pytania
A. 125
B. 625
C. 60
D. 120
Pytanie dotyczy obliczenia silni liczby podanej przez użytkownika w języku JavaScript. Program przy użyciu pętli for oblicza silnię liczby n, zaczynając od wartości a równej 1. Silnia liczby, oznaczana jako n!, to iloczyn wszystkich liczb naturalnych od 1 do n. W tym przypadku, użytkownik podaje liczbę 5, co oznacza że program oblicza 5! czyli 5 * 4 * 3 * 2 * 1. Wynik tego działania to 120, co jest poprawną odpowiedzią. Silnia jest często wykorzystywana w kombinatoryce i statystyce, a także w algorytmach związanych z analizą permutacji. Wykorzystanie pętli for w tym kontekście jest powszechną praktyką w programowaniu, umożliwiającą iterację poprzez określony zakres liczb oraz wykonywanie logicznych działań w złożonych obliczeniach algorytmicznych. Dobrą praktyką jest zrozumienie, jak działają pętle i jawne przypisywanie wartości początkowych zmiennych, co ułatwia debugowanie i rozwój kodu. Tego typu operacje matematyczne są podstawą wielu zaawansowanych zastosowań, od teoretycznych podstaw algorytmów do praktycznych implementacji w analizach danych.

Pytanie 21

Jakiego języka można użyć do nawiązania połączenia z bazą MySQL w trakcie tworzenia aplikacji internetowej?

A. CSS
B. HTML
C. XHTML
D. PHP
PHP to naprawdę fajny język skryptowy, który świetnie sprawdza się w tworzeniu dynamicznych aplikacji internetowych. Jest super efektywny, kiedy trzeba połączyć się z bazami danych, takimi jak MySQL. Jako język serwerowy, daje programistom narzędzia do robienia różnych rzeczy z danymi, jak dodawanie, edytowanie czy usuwanie rekordów w bazie. Na przykład, gdy tworzysz aplikację do zarządzania użytkownikami, możesz użyć PHP do obsługi formularza rejestracyjnego, który zbiera dane od użytkowników i następnie łączy się z MySQL, by je zapisać. Do łączenia z bazą danych używa się funkcji, jak mysqli_connect() lub PDO (PHP Data Objects), co pozwala na bezpieczne i sprawne zarządzanie połączeniami oraz zapytaniami SQL. Co ważne, PHP zachęca do dobrych praktyk, jak stosowanie przygotowanych zapytań, co mocno zwiększa bezpieczeństwo aplikacji, chroniąc przed różnymi atakami, jak SQL injection.

Pytanie 22

W CSS zapis selektora

p > i { color: red;} 
wskazuje, że kolorem czerwonym będzie wyróżniony
A. wszystkie teksty w znaczniku <p> lub każdy tekst w znaczniku <i>
B. jedynie tekst w znaczniku <i>, który znajduje się bezpośrednio wewnątrz znacznika <p>
C. tylko ten tekst znacznika <p>, który ma przypisaną klasę o nazwie i
D. każdy tekst w znaczniku <p> z wyjątkiem tych w znaczniku <i>
Odpowiedź ta jest poprawna, ponieważ selektor CSS <pre>p &gt; i { color: red; }</pre> definiuje regułę, która odnosi się jedynie do elementów <i> znajdujących się bezpośrednio wewnątrz elementu <p>. Operator > jest selektorem potomka bezpośredniego, co oznacza, że tylko te <i>, które są bezpośrednio dzieckiem <p>, będą miały przypisany kolor czerwony. Na przykład, jeśli w kodzie HTML mamy <p><i>Tekst</i></p>, to ten tekst będzie czerwony. Z drugiej strony, jeżeli <i> znajduje się zagnieżdżone w innym elemencie wewnątrz <p>, jak <p><span><i>Tekst</i></span></p>, to ten tekst nie będzie formatowany na czerwono. Tego typu selektory są niezwykle przydatne w praktycznym zastosowaniu, gdyż pozwalają na precyzyjne określenie stylów dla konkretnych elementów, co jest zgodne z najlepszymi praktykami projektowania stron internetowych, takimi jak utrzymanie czytelności kodu i unikanie niezamierzonych efektów formatowania.

Pytanie 23

Czy poniższy kod PHP działa poprawnie, wyświetlając na stronie dane pobrane z bazy danych? Ile pól zostanie zaprezentowanych?

$ile = mysqli_num_rows($zapytanie);
for ($i = 0; $i < $ile; $i++)
{
  $wiersz = mysqli_fetch_row($zapytanie);
  echo "<p>Klient: $wiersz[0] $wiersz[1], adres: $wiersz[2] </p>";
}
A. Z dwóch pól
B. Z trzech pól
C. Z jednego pola
D. Z czterech pól
W analizowanym fragmencie kodu PHP wykorzystano funkcję mysqli_fetch_row do pobrania danych z wyników kwerendy wykonanej na bazie danych. Wiersz z wyników jest zwracany jako tablica indeksowana liczbowo co jest kluczowe dla zrozumienia jakie dane zostaną wyświetlone. W kodzie używane są trzy elementy tej tablicy: $wiersz[0] $wiersz[1] oraz $wiersz[2]. Oznacza to że z każdego wiersza danych pobierane są trzy pola które następnie są wykorzystywane do budowy dynamicznego paragrafu HTML. Częstym błędem w interpretacji tego kodu jest założenie że funkcja mysqli_fetch_row zwraca tylko jedno pole. W rzeczywistości zwraca ona cały wiersz jako tablicę gdzie każdy element odpowiada jednemu polu z zapytania SQL. Inny błąd może wynikać z mylnego utożsamiania indeksu tablicy z liczbą wyświetlanych pól. Warto zawsze weryfikować strukturę danych zwracanych przez funkcje bazy danych i zrozumieć sposób ich przetwarzania. W kontekście dobrych praktyk ważne jest również unikanie potencjalnych zagrożeń związanych z nieodpowiednim przetwarzaniem danych z bazy oraz stosowanie odpowiednich mechanizmów zabezpieczeń takich jak walidacja i sanitacja danych wejściowych aby zapewnić bezpieczne działanie aplikacji webowych. Poprawne zrozumienie działania funkcji przetwarzających dane jest kluczowe dla tworzenia wydajnych i bezpiecznych systemów informatycznych

Pytanie 24

Jaką czynność należy wykonać przed zrobieniem kopii zapasowej danych w MySQL?

A. sprawdzenie, czy baza działa wystarczająco wydajnie
B. zweryfikowanie poprawności tabel w bazie oraz ewentualne naprawienie usterek
C. ustalenie systemu kodowania znaków w bazie
D. przyznanie uprawnień do przeglądania bazy dla Administratora
Sprawdzenie poprawności tabel w bazie przed wykonaniem kopii bezpieczeństwa jest kluczowym krokiem, który pozwala na zapewnienie integralności danych. W przypadku, gdy w tabelach występują błędy, takie jak uszkodzone wiersze czy niedopasowane indeksy, proces tworzenia kopii zapasowej może nie uwzględnić tych problemów, co w konsekwencji prowadzi do utraty danych lub trudności w ich przywróceniu. W MySQL, przed rozpoczęciem backupu, zaleca się użycie polecenia 'CHECK TABLE' do weryfikacji stanu tabel. Przykładowo, jeśli tabela 'users' jest sprawdzana i wykryto błąd, można zastosować 'REPAIR TABLE', aby naprawić uszkodzenia. Dobrą praktyką w branży jest regularne tworzenie kopii zapasowych oraz prowadzenie audytów jakości danych, co pozwala na minimalizację ryzyka utraty informacji. Utrzymywanie bazy danych w dobrym stanie technicznym poprzez regularne sprawdzanie tabel oraz ich naprawianie jest zalecane w dokumentacji MySQL oraz innych systemów zarządzania bazami danych, co podkreśla znaczenie tego procesu w kontekście bezpieczeństwa danych.

Pytanie 25

Aby zrealizować przycisk na stronę internetową zgodnie z wzorem, należy w programie graficznym skorzystać z opcji

Ilustracja do pytania
A. zaokrąglenie lub wybranie opcji prostokąt z zaokrąglonymi rogami
B. wybór eliptyczny
C. propagacja wartości
D. deformacje i zniekształcenia
Opcja zaznaczenia eliptycznego, choć może być użyteczna w innych kontekstach, nie jest odpowiednia do tworzenia przycisków prostokątnych z zaokrąglonymi rogami. Zaznaczenie eliptyczne służy głównie do tworzenia okrągłych lub eliptycznych zaznaczeń, co nie spełnia wymagań dla standardowych przycisków na stronach internetowych. Zniekształcenia i deformowanie odnoszą się do bardziej zaawansowanych technik modyfikacji grafiki, które mogą być używane do artystycznych efektów, ale nie są praktyczne w kontekście prostego i skutecznego projektowania przycisków. Użycie tych technik mogłoby prowadzić do nieprzewidywalnych wyników i nie jest zgodne z najlepszymi praktykami w projektowaniu UI. Propagacja wartości to termin bardziej związany z przetwarzaniem danych i nie odnosi się bezpośrednio do projektowania grafiki. W kontekście projektowania przycisków na stronach internetowych, istotne jest zrozumienie zasad skutecznego projektowania wizualnego, które obejmuje przede wszystkim prostotę, użyteczność i estetykę. Skuteczne przyciski powinny być łatwe do rozpoznania i klikalne, co eliminuje zastosowanie skomplikowanych technik, które mogą wpłynąć na ich funkcjonalność. Wybierając odpowiednie narzędzia i techniki, projektanci mogą zapewnić, że ich interfejsy są nie tylko estetyczne, ale również intuicyjne dla użytkowników. Dobre zrozumienie tych aspektów pozwala na bardziej efektywne tworzenie elementów interfejsu, które spełniają oczekiwania i potrzeby użytkowników.

Pytanie 26

W języku JavaScript stworzono obiekt Samochod. Aby wywołać jedną z jego metod, trzeba wpisać

A. Samochod.spalanie()
B. Samochod.spalanie_na100
C. Samochod.kolor
D. Samochod()
W języku JavaScript obiekt to podstawowa jednostka, która pozwala na grupowanie danych i funkcji w jednym miejscu. W kontekście zdefiniowanego obiektu Samochod, aby wywołać jego metodę, należy skorzystać z notacji kropkowej. Poprawne użycie to Samochod.spalanie(), co wskazuje na wywołanie metody 'spalanie' z obiektu 'Samochod'. Ta metoda może zawierać logikę obliczającą zużycie paliwa lub inne operacje związane z danym samochodem. Warto zauważyć, że metody w JavaScript są funkcjami przypisanymi do obiektów, co umożliwia ich wywołanie za pomocą notacji kropkowej. Przykładowo, jeśli obiekt Samochod ma zdefiniowaną metodę spalanie, możemy ją zainicjować i uzyskać wynik, co czyni nasz kod bardziej modularnym i czytelnym. Użycie odpowiednich metod jest zgodne z zasadami programowania obiektowego, które są fundamentem JavaScript. Metody obiektów mogą korzystać z właściwości innych obiektów, co zwiększa elastyczność programowania. Ta architektura jest zgodna ze standardem ECMAScript, który definiuje zasady dotyczące obiektów i funkcji w JavaScript.

Pytanie 27

Instrukcja REVOKE SELECT ON nazwa1 FROM nazwa2 w SQL pozwala na

A. przyznawanie uprawnień za pomocą ustalonego schematu
B. usuwanie konta użytkownika z bazy danych
C. pozbawianie użytkownika uprawnień
D. przyznawanie praw dostępu do tabeli
Pierwsza z błędnych odpowiedzi dotyczy nadawania uprawnień przy użyciu schematu, co jest trochę mylące. REVOKE nie nadaje, a odbiera uprawnienia. Wiele osób to myli, co prowadzi do zamieszania w zarządzaniu uprawnieniami. Kolejna nieprawidłowa odpowiedź mówi o usuwaniu użytkownika z bazy, co też jest błędne, bo REVOKE nie usuwa kont, a tylko zmienia uprawnienia. Kluczowe jest, żeby rozumieć różnicę między zarządzaniem uprawnieniami a użytkownikami. Ostatnia z błędnych odpowiedzi sugeruje, że to polecenie nadaje prawa do tabeli, a to totalnie mija się z prawdą, bo jego zadaniem jest właśnie odbieranie takich uprawnień. Z mojego doświadczenia, przydatne jest stosowanie GRANT do nadawania uprawnień, żeby uniknąć zamieszania. W zarządzaniu bazami danych ważne jest, żeby wiedzieć, jakie operacje dotyczą bezpieczeństwa danych i jak je właściwie stosować, żeby wszystko działało jak należy.

Pytanie 28

Aby usunąć nienaturalne wygładzanie ukośnych krawędzi w grafice rastrowej, czyli tak zwane schodkowanie, konieczne jest wykorzystanie filtru

A. pikselizacji
B. antyaliasingu
C. gradientu
D. szumu
Antyaliasing to technika stosowana w grafice rastrowej, która ma na celu wygładzenie krawędzi obiektów, co z kolei redukuje efekt schodkowania. Schodkowanie, zwane również jagged edges, to zjawisko, w którym krawędzie linii wyglądają na poszarpane i nienaturalne, co jest szczególnie zauważalne przy nachylonych liniach lub krzywych. Antyaliasing działa na zasadzie wygładzania krawędzi poprzez mieszanie kolorów pikseli na granicy obiektu z kolorami pikseli tła, co tworzy iluzję płynności. Przykładem zastosowania antyaliasingu jest grafika komputerowa w grach, gdzie zapewnia on bardziej realistyczny obraz, a także przy renderowaniu grafik wektorowych do rastrowych. W standardach branżowych, takich jak OpenGL i DirectX, zastosowanie antyaliasingu jest zalecane, aby poprawić jakość wizualną i doświadczenia użytkowników. Zastosowanie technik takich jak MSAA (Multisample Anti-Aliasing) lub FXAA (Fast Approximate Anti-Aliasing) jest powszechną praktyką w nowoczesnych aplikacjach graficznych.

Pytanie 29

W języku HTML aby zdefiniować słowa kluczowe strony, należy użyć zapisu

A. <meta name = "keywords" = "psy, koty, gryzonie">
B. <meta name = "keywords" content = "psy, koty, gryzonie">
C. <meta name = "description" content = "psy, koty, gryzonie">
D. <meta keywords = "psy, koty, gryzonie">
Poprawna odpowiedź to <meta name = "keywords" content = "psy, koty, gryzonie">, ponieważ jest to właściwy sposób definiowania słów kluczowych w sekcji <head> dokumentu HTML. Element <meta> służy do dostarczania metadanych o stronie internetowej, a atrybut 'name' określa, jakie informacje są zawarte w danym elemencie. W przypadku 'keywords', atrybut 'content' z kolei zawiera listę słów kluczowych, które są związane z treścią strony. Chociaż znaczenie słów kluczowych w SEO zmienia się, wciąż są one używane przez niektóre wyszukiwarki do kategoryzowania zawartości strony. Przykładowo, jeśli strona dotyczy zwierząt domowych, użycie fraz takich jak 'psy', 'koty', czy 'gryzonie' w atrybucie 'content' może pomóc w poprawie widoczności w wynikach wyszukiwania. Dobrą praktyką jest, aby słowa kluczowe były specyficzne, związane z tematyką strony i nie przekraczały rozsądnej liczby, aby nie wprowadzać w błąd algorytmy wyszukiwarek. Używanie odpowiednich metatagów to kluczowy element optymalizacji SEO.

Pytanie 30

W języku HTML, aby stworzyć pole do wprowadzania hasła, w którym tekst jest maskowany (zastąpiony kropeczkami), należy zastosować znacznik

A. <input name="password" />
B. <form="password" type="password" />
C. <input type="password" />
D. <form input type="password" />
Aby utworzyć pole edycyjne do wpisywania hasła w HTML, należy użyć znacznika <input> z atrybutem type ustawionym na 'password'. Taki typ pola edycyjnego zapewnia, że wprowadzany tekst jest maskowany, co w praktyce oznacza, że jest on wyświetlany jako kropki lub gwiazdki, co znacząco podnosi poziom bezpieczeństwa. Stosując <input type='password' />, zalecane jest również dodanie atrybutu name, co ułatwi przesyłanie danych na serwer. Warto zwrócić uwagę, że zgodnie z tym, co definiuje specyfikacja HTML5, pole to jest standardowo obsługiwane przez wszystkie nowoczesne przeglądarki. Przykład użycia: <input type='password' name='user_password' placeholder='Wpisz swoje hasło' />. Ponadto, dobrym praktyką jest stosowanie odpowiednich mechanizmów walidacji po stronie serwera, aby upewnić się, że dane przesyłane z formularzy są bezpieczne i chronione przed nieautoryzowanym dostępem. Maskowanie hasła w polach edycyjnych jest kluczowym elementem ochrony danych użytkowników w aplikacjach internetowych oraz stronach, które wymagają logowania.

Pytanie 31

Aby prawidłowo udokumentować linię kodu w języku JavaScript, należy po znakach // wpisać komentarz.

x = Math.max(a, b, c); //
A. w zmiennej x maksymalna wartość ze zmiennych a, b, c
B. w zmiennej x minimalna wartość ze zmiennych a, b, c
C. wybór losowej wartości ze zmiennych a, b i c
D. nieprawidłowe dane.
Odpowiedź "w zmiennej x maksymalna wartość ze zmiennych a, b, c" jest poprawna, ponieważ odzwierciedla działanie funkcji Math.max() w języku JavaScript, która zwraca największą wartość spośród podanych argumentów. W kontekście tej linii kodu, przypisanie wartości do zmiennej x jest kluczowym elementem programowania, gdyż pozwala na dynamiczne ustalanie największej wartości zmiennych a, b i c w różnych scenariuszach. W praktyce, odpowiednia dokumentacja kodu, w tym komentarze, jest niezbędna do utrzymania czytelności i zrozumiałości kodu, zwłaszcza w większych projektach. Komentarze pomagają innym programistom (lub nawet samym autorom kodu w przyszłości) szybko zrozumieć, co dany fragment kodu robi. Używanie komentarzy w odpowiednich miejscach, szczególnie po operatorze "//", jest uznawane za dobrą praktykę w programowaniu. Dlatego ważne jest, aby jasno określić funkcję danej linii kodu, co czyni tę odpowiedź trafną.

Pytanie 32

W języku PHP, aby otworzyć już istniejący plik lektury.txt w trybie dodawania treści, tak aby wskaźnik pliku został umieszczony na końcu tego pliku należy zastosować instrukcję

A. fopen("lektury.txt", "a")
B. fopen("lektury.txt", "x")
C. fopen("lektury.txt", "w")
D. fopen("lektury.txt", "r")
W tym zadaniu kluczowe są dwa elementy: tryb otwarcia pliku oraz pozycja wskaźnika pliku. W PHP funkcja fopen() przyjmuje drugi parametr właśnie po to, żeby określić, co chcemy zrobić z plikiem: tylko czytać, tylko pisać, nadpisywać, dopisywać, tworzyć nowy itd. Pomyłki biorą się najczęściej z tego, że ktoś zna ogólne działanie funkcji, ale nie pamięta dokładnie znaczenia poszczególnych liter. Tryb "r" oznacza otwarcie pliku tylko do odczytu. Wskaźnik pliku ustawiany jest na początku, a nie na końcu. W tym trybie nie wolno pisać do pliku – próba użycia fwrite() skończy się ostrzeżeniem lub błędem. To dobry wybór, gdy chcemy np. wczytać konfigurację lub treść pliku, ale zupełnie nie nadaje się do dopisywania nowych danych. Typowym błędem myślowym jest założenie, że skoro fopen otwiera plik, to zawsze można do niego pisać. Niestety, nie – tryb ma tutaj kluczowe znaczenie. Tryb "w" otwiera plik do zapisu, ale przy tym kasuje jego dotychczasową zawartość (truncation). W praktyce oznacza to, że gdy użyjemy fopen("lektury.txt", "w"), cały wcześniejszy tekst zostanie usunięty, a wskaźnik pliku znajdzie się na początku pustego pliku. To jest bardzo ważne: "w" jest dobre, gdy chcemy stworzyć nową wersję pliku od zera, np. generowany raport, ale całkowicie sprzeczne z wymaganiem zadania, które mówi o „dodawaniu treści” do istniejącego pliku bez utraty danych. Tryb "x" z kolei służy do tworzenia nowego pliku i zakończy się błędem, jeśli plik już istnieje. To mechanizm ochronny, używany często tam, gdzie nie chcemy przypadkiem nadpisać istniejącego pliku (np. przy generowaniu unikalnych plików). W kontekście pytania jest to odwrotność tego, co trzeba: my właśnie chcemy pracować z już istniejącym plikiem, a nie wymuszać jego nowość. Moim zdaniem najczęstsza pułapka polega na myleniu „w” i „a”. Oba tryby umożliwiają zapis, ale tylko "a" gwarantuje, że wskaźnik ustawi się na końcu, a dane będą dopisywane, a nie nadpisywane. Dlatego, gdy w zadaniu pojawia się fraza „tryb dodawania treści” i „wskaźnik na końcu pliku”, praktycznie zawsze chodzi o tryb append, czyli właśnie "a".

Pytanie 33

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

A. // komentarz
B. <!-- komentarz -->
C. # komentarz
D. /* komentarz */
Odpowiedź <!-- komentarz --> jest prawidłowa, ponieważ w PHP nie używa się tego rodzaju komentarzy w kodzie źródłowym. W PHP komentarze są oznaczane przy pomocy dwóch głównych metod: // dla komentarzy jednoliniowych oraz /* ... */ dla komentarzy wieloliniowych. Komentarze są niezwykle istotnym elementem programowania, ponieważ pozwalają na dokumentację kodu, co ułatwia jego zrozumienie i konserwację. Chociaż <!-- ... --> jest składnią używaną w HTML do komentowania, w kontekście PHP nie jest ona rozpoznawana i nie będzie miała wpływu na kod. Używanie odpowiednich typów komentarzy w PHP jest zgodne z najlepszymi praktykami, ponieważ zapewnia czytelność kodu i ułatwia współpracę w zespole deweloperskim. Ważne jest również, aby unikać niepoprawnych praktyk, które mogą prowadzić do błędów w interpretacji kodu, szczególnie w projektach, gdzie HTML i PHP są łączone.

Pytanie 34

Wskaż zapytanie, które z tabeli klienci wybierze tylko nazwiska trzech najlepszych klientów, czyli tych, którzy mają najwięcej punktów na swoim koncie (pole całkowite punkty)?

A. SELECT nazwisko FROM klienci ORDER BY nazwisko DESC LIMIT 3
B. SELECT LIMIT 3 nazwisko FROM klienci ORDER BY nazwisko DESC
C. SELECT nazwisko FROM klienci ORDER BY punkty DESC LIMIT 3
D. SELECT nazwisko FROM klienci LIMIT 3
Wybór kwerendy SELECT nazwisko FROM klienci ORDER BY punkty DESC LIMIT 3 jest poprawny, ponieważ wykorzystuje klauzulę ORDER BY w celu posortowania wyników na podstawie kolumny 'punkty' w porządku malejącym. Dzięki temu, najpierw wyświetlone zostaną rekordy z najwyższą liczbą punktów. Zastosowanie LIMIT 3 oznacza, że z całej posortowanej listy, wybierane są jedynie trzy rekordy, co idealnie odpowiada wymaganiu znalezienia trzech najlepszych klientów. Takie podejście jest zgodne z dobrymi praktykami w programowaniu SQL, ponieważ pozwala na precyzyjne wydobycie danych z bazy, a także na efektywne zarządzanie wynikami zapytań. Przykład zastosowania to sytuacja, gdy firma chce nagrodzić swoich najlepszych klientów na podstawie ich aktywności, co może przyczynić się do zwiększenia ich lojalności. W kontekście analizy danych, zrozumienie, jak korzystać z klauzul ORDER BY i LIMIT, jest kluczowe dla optymalizacji zapytań oraz interpretacji wyników.

Pytanie 35

Za pomocą podanego zapytania w tabeli zostanie wykonane

ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;
A. Zmieniono typ kolumny nazwa2 na DOUBLE.
B. Została zmieniona nazwa kolumny z nazwa1 na nazwa2.
C. Dodana kolumna nazwa2, która nie przyjmuje wartości domyślnej.
D. Dodana kolumna nazwa2 o typie zmiennoprzecinkowym.
Poprawna odpowiedź, czyli dodanie kolumny nazwa2 typu zmiennoprzecinkowego (DOUBLE), jest zgodna z poleceniem przedstawionym w zapytaniu SQL. Instrukcja ALTER TABLE jest używana do modyfikacji istniejącej tabeli, a w tym przypadku dodajemy nową kolumnę. Typ DOUBLE oznacza zmiennoprzecinkową reprezentację liczb, co jest przydatne w sytuacjach, gdy potrzebujemy precyzyjnie przechowywać wartości liczbowe z ułamkami, takie jak ceny, wyniki pomiarów czy dane statystyczne. W praktyce, użycie zmiennoprzecinkowego typu danych jest standardową praktyką w bazach danych, kiedy musimy operować na liczbach, które mogą mieć wartości dziesiętne. Dodatkowo, opcja NOT NULL zapewnia, że kolumna ta zawsze będzie miała przypisaną wartość, co przyczynia się do integralności danych w bazie. Zastosowanie takiego rozwiązania jest niezbędne w wielu aplikacjach, gdzie precyzyjne obliczenia są kluczowe, na przykład w systemach finansowych czy analizach danych.

Pytanie 36

W celu przeniesienia strony internetowej na serwer, można wykorzystać program

A. FileZilla
B. Go!Zilla
C. Bugzilla
D. CloneZilla
FileZilla to oprogramowanie typu FTP (File Transfer Protocol), które jest powszechnie używane do przesyłania plików pomiędzy lokalnym komputerem a serwerem. Jest to narzędzie open-source, które obsługuje zarówno FTP, jak i SFTP (SSH File Transfer Protocol), co czyni je wszechstronnym rozwiązaniem dla transferu plików w bezpieczny sposób. Dzięki intuicyjnemu interfejsowi użytkownika, który przypomina popularne menedżery plików, użytkownicy mogą łatwo przeglądać lokalne i zdalne systemy plików, co znacznie ułatwia transfer danych. Przykładem zastosowania może być sytuacja, w której deweloper webowy musi przesłać pliki witryny internetowej do nowego serwera. W takim przypadku FileZilla pozwala na szybki i efektywny transfer z minimalnym ryzykiem błędów. Ponadto, FileZilla wspiera różne protokoły uwierzytelniania, co zwiększa bezpieczeństwo przesyłanych plików. Używanie FileZilla jest zgodne z najlepszymi praktykami branżowymi, ponieważ narzędzie to jest regularnie aktualizowane i wspiera standardy bezpieczeństwa, co czyni je niezawodnym wyborem dla profesjonalnych administratorów systemów.

Pytanie 37

Dla jakich nazwisk użyta w zapytaniu klauzula LIKE jest poprawna?

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';
A. Gerald, Jarosław, Marek, Tamara
B. Krzysztof, Krystyna, Romuald
C. Rafał, Rebeka, Renata, Roksana
D. Arleta, Krzysztof, Krystyna, Tristan
Prawidłowa odpowiedź Arleta Krzysztof Krystyna Tristan jest zgodna z klauzulą LIKE w języku SQL która pozwala na wyszukiwanie wzorców w danych tekstowych W zapytaniu użyto wzorca '_r%' gdzie podkreślenie oznacza dowolny pojedynczy znak a procent dowolną liczbę znaków W tym przypadku imiona muszą mieć 'r' jako drugi znak co jest spełnione dla Arleta Krzysztof Krystyna i Tristan Klauzula LIKE jest często używana w aplikacjach bazodanowych do filtrowania danych tekstowych na przykład w systemach zarządzania klientami gdzie można wyszukiwać nazwiska klientów zaczynające się na określoną literę Dobre praktyki zalecają ostrożne używanie wzorców które mogą prowadzić do pełnych skanów tabel co wpływa na wydajność Indeksowanie kolumn może poprawić szybkość zapytań LIKE jednak należy unikać wzorców zaczynających się od symbolu procenta gdyż pomijają indeksy Warto zrozumieć że LIKE jest potężnym narzędziem w SQL które może znacznie ułatwić pracę z tekstem jednak wymaga ono przemyślanego użycia by nie pogorszyć wydajności bazy danych

Pytanie 38

Aby określić styl czcionki w CSS, należy zastosować właściwość

A. text-family
B. text-style
C. font-family
D. font-style
Właściwość CSS 'font-family' jest kluczowym elementem definiowania kroju czcionki w stylach CSS. Umożliwia ona określenie, jaki krój czcionki ma być użyty dla danego elementu na stronie. Możemy podać pojedynczy krój czcionki, na przykład 'Arial', lub listę alternatywnych krojów, jak 'Helvetica, sans-serif', co zapewnia większą elastyczność w przypadku, gdy wybrany krój nie jest dostępny na urządzeniu użytkownika. Zaleca się również stosowanie nazw krojów czcionek w postaci cudzysłowów, zwłaszcza jeśli nazwa zawiera spacje, jak 'Times New Roman'. Zgodnie z najlepszymi praktykami, dobór odpowiedniego kroju czcionki jest kluczowy dla czytelności i estetyki strony, dlatego warto przeprowadzić testy A/B, aby sprawdzić, które krój czcionki lepiej wpływa na doświadczenia użytkowników. Oprócz 'font-family', warto również zwrócić uwagę na inne właściwości, takie jak 'font-size', 'font-weight' czy 'line-height', które wspólnie kształtują wygląd tekstu na stronie.

Pytanie 39

W tabeli mieszkańcy zawierającej pola id, imie, nazwisko, ulica, numer, czynsz (wartość całkowita) należy zidentyfikować osoby zamieszkujące ulicę Mickiewicza pod numerami 71, 72, 80, których czynsz jest niższy niż
1000 zł. Jak będzie wyglądać klauzula WHERE w zapytaniu?

A. WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) OR czynsz < 1000
B. WHERE ulica = 'Mickiewicza' OR numer IN (71, 72, 80) OR czynsz < 1000
C. WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) AND czynsz < 1000
D. WHERE ulica = 'Mickiewicza' AND numer > 70 AND numer < 81 OR czynsz < 1000
Pojawiające się w odpowiedziach błędne koncepcje mogą prowadzić do niepoprawnych wyników w zapytaniach SQL, co jest istotne z punktu widzenia analizy danych. W przypadku użycia operatora OR, jak w niektórych z przedstawionych odpowiedzi, skutkuje to potencjalnym zwróceniem danych, które nie spełniają wszystkich wymaganych kryteriów. Na przykład, jeżeli zastosujemy klauzulę WHERE z OR, system zwróci wszystkie rekordy, które są na ulicy 'Mickiewicza' lub mają numer 71, 72 lub 80, niezależnie od wartości czynszu. To może prowadzić do błędnych interpretacji i niepoprawnych raportów. Podobnie, użycie warunków numerycznych, jak 'numer > 70 AND numer < 81', w połączeniu z OR dla czynszu, również nie dostarcza precyzyjnych wyników, ponieważ czyni je zbyt ogólnymi. Takie podejście może prowadzić do zwrócenia danych, które nie są zgodne z zamierzonymi kryteriami, co jest sprzeczne z zasadą maksymalnej precyzji w zapytaniach SQL. Dobre praktyki w programowaniu SQL wymagają, by warunki były ściśle określone i logicznie powiązane, aby zapewnić klarowność oraz wydajność zapytań. Błędy takie mogą prowadzić do nieefektywności w przetwarzaniu danych oraz do podejmowania niewłaściwych decyzji na podstawie niepoprawnych informacji.

Pytanie 40

Jakie wyjście zostanie pokazane po zrealizowaniu podanego kodu HTML?

Ilustracja do pytania
A. Rys. D
B. Rys.A
C. Rys. C
D. Rys. B
Nieprawidłowe odpowiedzi mogą wynikać z niezrozumienia struktury zagnieżdżonych list w HTML. Zrozumienie jak różne typy list i atrybuty wpływają na ich wyświetlanie jest kluczowe. Lista uporządkowana <ol> domyślnie numeruje swoje elementy co często prowadzi do założenia że wszystkie elementy muszą być numerowane w standardowy sposób. Jednak HTML pozwala na dostosowanie tego zachowania poprzez atrybuty type i start co może zmieniać domyślną numerację na litery czy inne formy. Kolejnym źródłem błędu jest zignorowanie zagnieżdżonej listy nieuporządkowanej <ul> która używa kropki jako punktora co różni się od standardowego kółka. Bez znajomości tych aspektów łatwo jest błędnie zinterpretować strukturę i wyświetlanie kodu. Typowe błędy myślowe wynikają z założeń że każda lista zachowa domyślną formę co nie zawsze jest prawdą w zaawansowanym HTML. Poprawne zrozumienie wymaga eksperymentowania i testowania różnych konfiguracji atrybutów aby w pełni wykorzystać potencjał HTML w tworzeniu elastycznych i dostosowanych interfejsów.