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: 2 października 2025 21:45
  • Data zakończenia: 2 października 2025 22:07

Egzamin zdany!

Wynik: 20/40 punktów (50,0%)

Wymagane minimum: 20 punktów (50%)

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

Jaką funkcję w edytorze grafiki rastrowej trzeba wykorzystać, żeby przygotować rysunek do publikacji na stronie tak, aby widoczne było jedynie to, co znajduje się w obrębie ramki?

Ilustracja do pytania
A. Odbicie
B. Skalowanie
C. Kadrowanie
D. Perspektywa
Odbicie w edytorze grafiki rastrowej zmienia kierunek obrazu w pionie lub poziomie co jest użyteczne gdy chcemy uzyskać lustrzane odbicie elementów grafiki. Choć jest to przydatne narzędzie nie spełnia ono funkcji wybiórczego wyświetlania części obrazu tak jak kadrowanie. Skalowanie natomiast polega na zmianie rozmiaru obrazu poprzez zwiększenie lub zmniejszenie jego wymiarów przy jednoczesnym zachowaniu proporcji lub ich modyfikacji. Skalowanie jest istotne w kontekście dostosowywania obrazów do różnych rozdzielczości ekranów i formatów jednak nie eliminuje niechcianych fragmentów obrazu tak jak kadrowanie. Z kolei perspektywa odnosi się do zmiany kąta widzenia obrazu co pozwala na symulowanie widoku z różnych punktów obserwacji. Narzędzie perspektywy umożliwia tworzenie efektów przestrzennych ale nie ogranicza treści obrazu do konkretnego obszaru. Wszystkie te funkcje mają swoje zastosowanie w edycji grafiki lecz żadne z nich nie oferuje możliwości selektywnego wycinania fragmentu obrazu w celu jego dalszego wykorzystania co jest kluczową cechą kadrowania. Kadrowanie pozostaje narzędziem podstawowym do przygotowania obrazów do publikacji gdzie istotne jest skoncentrowanie uwagi odbiorcy na najważniejszych elementach grafiki eliminując zbędne szczegóły.

Pytanie 2

Jak wygląda instrukcja przypisania wartości do elementu tablicy w języku JavaScript względem tablicy? ```Tablica['technik'] = 'informatyk';```

A. wielowymiarowej
B. asocjacyjnej
C. numerycznej
D. statycznej
W języku JavaScript tablice mogą być traktowane jako obiekty, a więc wykazują cechy struktur asocjacyjnych. Przypisując wartość do tablicy za pomocą notacji z nawiasami kwadratowymi, jak w przykładzie 'Tablica[\'technik\'] = \'informatyk\';', tworzymy nowy element o kluczu 'technik', co jest charakterystyczne dla obiektów asocjacyjnych. W JavaScript tablice są dynamiczne, co oznacza, że możemy dodawać elementy w dowolny sposób, a ich rozmiar nie jest ustalony z góry. Standard ECMAScript definiuje tablice jako obiekty, gdzie klucze są indeksami liczb całkowitych, ale można również używać stringów jako kluczy, co czyni tablice asocjacyjnymi. Przykładem może być obiekt, który przechowuje różne informacje, a elementy są dostępne zarówno za pomocą indeksów numerycznych, jak i stringów. Warto zaznaczyć, że użycie tablicy jako obiektu asocjacyjnego może być praktyczne w wielu zastosowaniach, np. w przechowywaniu konfiguracji czy zestawów danych. Dobrą praktyką jest jednak ograniczać użycie takich technik dla przejrzystości kodu."

Pytanie 3

Jaką kompetencję społeczną możemy przypisać osobie, która potrafi wyrażać swoje zdanie oraz argumentować swoje racje, nie naruszając przy tym granic własnych i innych ludzi?

A. Asertywność
B. Empatia
C. Konformizm
D. Akomodacja
Empatia, akomodacja i konformizm to pojęcia, które choć związane z interakcjami społecznymi, nie oddają istoty umiejętności wyrażania własnego zdania w sposób asertywny. Empatia, często mylona z asertywnością, odnosi się do zdolności do rozumienia uczuć i perspektyw innych ludzi. Osoba empatyczna może dostrzegać, co czują inni, ale niekoniecznie jest w stanie wyrażać swoje własne zdanie w sposób, który nie narusza ich przestrzeni. Akomodacja z kolei polega na dostosowywaniu się do potrzeb i oczekiwań innych, często kosztem własnych przekonań, co stoi w sprzeczności z asertywnym wyrażaniem siebie. Osoba stosująca akomodację może unikać konfliktów, lecz nie zyskuje na autentyczności ani nie rozwija umiejętności obrony własnych racji. Konformizm natomiast to tendencja do dostosowywania się do norm grupowych, co może prowadzić do rezygnacji z osobistych przekonań. Chociaż konformizm może pomagać w budowaniu relacji, często wymaga poświęcenia indywidualności, co jest niewłaściwe w kontekście asertywności. W praktyce, zbyt duży nacisk na empatię, akomodację czy konformizm może prowadzić do problemów komunikacyjnych i utraty osobistej tożsamości, co nie jest zgodne z ideą asertywnego wyrażania swoich poglądów.

Pytanie 4

Przedstawiony błąd, który pojawił się podczas interpretacji kodu PHP, może być spowodowany

Notice: Trying to access array offset on value of type null in C:\xampp\htdocs\1\biuro.php on line 38
A. odwołaniem do niezadeklarowanej zmiennej
B. brakiem bazy danych o nazwie podanej w funkcji mysqli_connect
C. próbą odwołania do nieistniejącego elementu tablicy
D. niepowodzeniem w wykonaniu kwerendy na bazie danych
Brak bazy danych o nazwie wskazanej w funkcji mysqli_connect mógłby skutkować zupełnie innym rodzajem błędu związanym z połączeniem, a nie z dostępem do elementu tablicy. Taki problem zwykle objawia się jako błąd połączenia, wskazujący na niemożność odnalezienia bazy danych o podanej nazwie. Odwołanie się do niezadeklarowanej zmiennej w PHP skutkuje zazwyczaj błędem typu notice, który informuje, że zmienna nie była zainicjalizowana przed użyciem. Tego rodzaju błąd nie odnosi się bezpośrednio do tablic, lecz do zmiennych ogólnie. Dobra praktyka programistyczna nakazuje inicjalizację wszystkich zmiennych przed ich użyciem, co pomaga unikać takich komunikatów. Niepowodzenie wydania kwerendy na bazie danych mogłoby skutkować błędami dotyczącymi SQL, zwykle identyfikowanymi przez specyficzne komunikaty o błędach SQL zwracane przez serwer baz danych. Tego rodzaju problem jest ściśle związany z niewłaściwą konstrukcją zapytań SQL i logiką aplikacji, a nie z dostępem do elementów tablicy w PHP. Aby prawidłowo rozwiązywać takie problemy, ważne jest zrozumienie, w jaki sposób funkcje PHP współpracują z danymi i jak mogą być one obsługiwane, aby uniknąć błędów typu null w tablicach, co jest istotnym aspektem efektywnego programowania w PHP.

Pytanie 5

W zaprezentowanym fragmencie zapytania SQL, instrukcja SELECT ma za zadanie zwrócić

SELECT COUNT(wartosc) FROM ...
A. suma w kolumnie wartosc
B. liczby rekordów
C. średniej w kolumnie wartosc
D. średniej wartości tabeli
Komenda SELECT COUNT w języku SQL jest używana do zwracania liczby wierszy w rezultacie zapytania. Użycie funkcji COUNT z nazwą kolumny, jak w przykładzie SELECT COUNT(wartosc), pozwala policzyć wszystkie niepuste wartości w danej kolumnie wartosc w tabeli. Jest to przydatne w przypadkach, gdy chcemy zrozumieć, ile danych spełnia określone kryteria, lub gdy interesuje nas liczba wierszy zawierających wartości w konkretnej kolumnie. Funkcja COUNT jest jedną z podstawowych funkcji agregujących w SQL, co oznacza, że podsumowuje dane w określony sposób. Stosowanie tej funkcji jest zgodne z najlepszymi praktykami w projektowaniu baz danych, gdzie często potrzebujemy analizować dane w sposób ilościowy. Przykładowo, jeśli prowadzimy bazę danych klientów, możemy użyć SELECT COUNT(id) FROM klienci, aby dowiedzieć się, ilu mamy zarejestrowanych klientów. Ta funkcja jest także kluczowym elementem w optymalizacji zapytań, ponieważ pozwala na szybkie uzyskanie informacji o liczbie rekordów bez konieczności przetwarzania wszystkich danych z tabeli. Zrozumienie działania COUNT i jego zastosowań jest kluczowe dla efektywnego przetwarzania danych i tworzenia wydajnych zapytań w języku SQL.

Pytanie 6

Element <meta charset="utf-8"> definiuje metadane odnoszące się do strony internetowej dotyczące

A. języka używanego na stronie
B. opisu witryny
C. kodowania znaków
D. słów kluczowych
Element <meta charset="utf-8"> jest kluczowym składnikiem metadanych w dokumentach HTML, który określa sposób kodowania znaków używanych na stronie internetowej. Użycie kodowania UTF-8, które jest najczęściej stosowanym standardem, pozwala na wyświetlanie różnorodnych znaków z różnych języków, w tym znaków diakrytycznych. Dzięki temu, strony internetowe mogą być dostępne dla szerokiego grona użytkowników bez obaw o błędy związane z wyświetlaniem tekstu. Kiedy przeglądarka internetowa napotyka ten element, wie, że powinna interpretować zawartość dokumentu zgodnie z określonym kodowaniem. Jest to szczególnie ważne w kontekście globalizacji internetu, gdzie treści mogą być tworzone w wielu językach. Ustalając odpowiednie kodowanie, programiści minimalizują ryzyko wystąpienia problemów z wyświetlaniem, takich jak zamienione znaki czy nieczytelne fragmenty tekstu. Właściwe ustawienie metadanych jest zgodne z wytycznymi W3C oraz zaleceniami dla twórców stron internetowych, co czyni ten element niezbędnym w każdej współczesnej witrynie.

Pytanie 7

W zaprezentowanej części formularza HTML znajduje się pole ``````, które można określić jako

A. posiada domyślnie wpisany tekst "pole".
B. ukrywa wprowadzone znaki.
C. pozwala na wprowadzanie jedynie wartości liczbowych.
D. wyświetla wprowadzone znaki.
Wybrana przez ciebie odpowiedź jest niepoprawna. Możesz myśleć, że pole <i>input</i> ma domyślny tekst 'pole', ale zapomniałeś, że atrybut 'value', który to robi, nie występuje w tym kodzie. Poza tym, nie ma żadnych danych wskazujących, że to pole przyjmuje tylko liczby. Zazwyczaj, używa się atrybutu 'type' z wartością 'number', ale tutaj jest ustawiony na 'password'. Gdy mówisz, że pole pokazuje wprowadzone znaki, to też nie jest prawda. Jak mamy 'type' ustawione na 'password', to wszystko jest ukryte, żeby użytkownik był bezpieczny. Takie pomyłki to najczęściej efekt braku zrozumienia różnych atrybutów w HTML. Ważne, żeby ogarnąć, że atrybut 'type' mówi, jakie dane można wprowadzać, a różne wartości mają różne skutki.

Pytanie 8

W języku PHP, aby wyeliminować białe znaki na początku i końcu łańcucha znaków, należy zastosować funkcję

A. sort( )
B. time( )
C. strlen( )
D. trim( )
Zastosowanie funkcji time() w PHP jest całkowicie nieodpowiednie w kontekście usuwania spacji z ciągów znaków. Funkcja ta jest używana do uzyskiwania aktualnego czasu w formacie timestamp, co nie ma żadnego związku z manipulacją tekstem. Próbując użyć time() do operacji na ciągach, można natknąć się na błędy, ponieważ funkcja ta nie zwraca wartości typu string, co sprawia, że nie ma sensu w kontekście oczekiwanego wyniku. Ponadto, sort() jest funkcją przeznaczoną do porządkowania tablic, a nie do przetwarzania ciągów tekstowych, dlatego nie jest w stanie usunąć białych znaków. Jej użycie w tym kontekście może prowadzić do nieporozumień i błędów logicznych w kodzie. Z kolei funkcja strlen() służy do obliczania długości ciągu znaków, co również nie ma nic wspólnego z usuwaniem spacji. To typowy błąd myślowy, gdzie użytkownicy błędnie zakładają, że funkcje, które operują na danych o innej naturze (jak długość czy porządek), mogą być zastosowane do manipulacji tekstem. Właściwe podejście do przetwarzania danych wejściowych powinno obejmować znajomość odpowiednich funkcji oraz ich zastosowań w praktyce, co jest kluczowe w programowaniu w PHP i innych językach.

Pytanie 9

W CSS właściwość font-size może przyjmować wartości według słów kluczowych

A. z zestawu xx-small, x-small, smali, medium, large, x-large, xx-large
B. tylko smali, smaller, large, larger
C. wyłącznie smali, medium, large
D. jedynie big i smali
Właściwość font-size w CSS pozwala na określenie rozmiaru czcionki za pomocą zestawu wartości słownikowych, które obejmują xx-small, x-small, small, medium, large, x-large oraz xx-large. Użycie tych słów kluczowych jest zgodne z wytycznymi CSS i zapewnia spójne i zrozumiałe podejście do projektowania. Przykładowo, definiując klasę CSS dla nagłówka, możemy zastosować: h1 { font-size: large; } co skutkuje odpowiednim zwiększeniem rozmiaru czcionki, co jest zgodne z hierarchią typograficzną dokumentu. Zastosowanie wartości słownikowych zwiększa czytelność i dostępność treści, ponieważ są one zrozumiałe zarówno dla programistów, jak i dla przeglądarek. Ponadto, korzystając z tych wartości, projektanci mogą łatwiej dostosować wygląd strony do różnych urządzeń, co jest kluczowe w kontekście responsywnego web designu. Warto również wspomnieć, że wartości te są niezależne od jednostek miary, takich jak em czy px, co sprawia, że są bardziej elastyczne w użyciu.

Pytanie 10

W odniesieniu do zamieszczonego fragmentu kodu ```kwiat``` walidator HTML zgłosi błąd, ponieważ

A. nie zamknięto cudzysłowu
B. użyto niewłaściwego znacznika do wyświetlenia grafiki
C. użyto nieznanego atrybutu alt
D. nie odnaleziono pliku kwiat.jpg
Z tego, co widzę, użycie znacznika do wyświetlenia obrazu jest, wiesz, jakby nie do końca poprawne, bo <img> jest standardem w HTML. Więc nie można tego traktować jako błąd. A co do atrybutu alt - on jest ważny dla dostępności i SEO, więc nie można go bagatelizować. Pomaga on osobom, które nie widzą obrazów, dowiedzieć się, co one przedstawiają. Jak chodzi o ten problem z plikiem kwiat.jpg, to jest sprawa bardziej związaną ze strukturą plików na serwerze i nie do końca dotyczy samej składni HTML. Wiesz, błędy w HTML mogą mieć różne przyczyny, a żeby je zrozumieć, trzeba znać nie tylko składnię, ale i kontekst, w którym ten kod działa. Dlatego warto przestrzegać standardów i dobrych praktyk, żeby uniknąć typowych problemów w przyszłości.

Pytanie 11

Na przedstawionym obrazie widać wynik formatowania przy użyciu styli CSS oraz kod HTML, który go generuje. Przy założeniu, że marginesy wewnętrzne wynoszą 50 px, a zewnętrzne 20 px, jak wygląda styl CSS dla tego obrazu?

Ilustracja do pytania
A. Rys. C
B. Rys. D
C. Rys. B
D. Rys. A
Poprawna odpowiedź, Rys. C, przedstawia styl CSS, który prawidłowo definiuje marginesy i marginesy wewnętrzne obrazu. W tym przypadku margines wewnętrzny wynosi 50px, a zewnętrzny 20px, co jest zgodne z wymaganiami zawartymi w pytaniu. Kod CSS zawiera solidną linię graniczną o wartości 4px w kolorze czarnym, co jest dobrze praktykowane w projektowaniu stron internetowych, ponieważ solidna linia jest bardziej widoczna i profesjonalna niż linia przerywana. Kolor tła teal zapewnia atrakcyjny kontrast. Zastosowanie właściwego marginesu i marginesu wewnętrznego jest kluczowe w tworzeniu responsywnych układów, które są teraz standardem w branży. Poprawne ustawienie tych parametrów zapewnia estetyczny wygląd oraz prawidłowe rozmieszczenie elementów na stronie. Praktyczne zastosowanie tej wiedzy obejmuje projektowanie layoutów w CSS Grid czy Flexbox, gdzie marginesy i marginesy wewnętrzne pełnią kluczową rolę w zarządzaniu przestrzenią elementów. Właściwe wykorzystanie tych stylów wspiera tworzenie stron zgodnych ze standardami W3C, co jest fundamentem profesjonalnego web developmentu.

Pytanie 12

Jakiego typu w języku PHP można użyć do przechowywania wielu wartości z opcją ich indeksowania?

A. boolean
B. array
C. double
D. float
Typy float, double i boolean nie pasują do pytania o to, jak w PHP przechowywać wiele wartości z możliwością ich indeksowania. Float w PHP to liczby zmiennoprzecinkowe, dobre dla wartości z miejscami dziesiętnymi, ale nie nadają się do przechowywania wielu wartości w uporządkowany sposób. Z kolei double to termin używany w innych językach dla liczb zmiennoprzecinkowych o podwójnej precyzji, ale w PHP jest to po prostu float. Tak więc double nie wnosi nic nowego w porównaniu do float. Jeśli chodzi o boolean, to on tylko reprezentuje dwa stany: prawda (true) i fałsz (false). Oczywiście, boolean jest ważny w logice programowania, ale nie pozwala na przechowywanie wielu wartości. Dlatego ani float, ani double, ani boolean nie są odpowiednie, gdy mówimy o przechowywaniu i indeksowaniu wielu wartości w PHP.

Pytanie 13

Które z poniższych zdań poprawnie opisuje utworzoną tabelę? CREATE TABLE dane kolumna INTEGER3));

A. Tabela o tytule dane ma jedną kolumnę typu całkowitego
B. Kolumny tabeli dane są nazwane: kolumna1, kolumna2, kolumna3
C. Tabela o tytule dane składa się z trzech kolumn typu całkowitego
D. Tabela zawiera jedną kolumnę, która przechowuje trzyelementowe tablice
Wybierając odpowiedzi, które zawierają błędne informacje, można zauważyć kilka typowych nieporozumień dotyczących definicji tabel w SQL. Nieprawidłowe stwierdzenie, że tabela o nazwie 'dane' ma trzy kolumny liczb całkowitych, wynika z błędnej interpretacji składni SQL. W rzeczywistości słowo 'INTEGER3' sugeruje, że istnieje tylko jedna kolumna, a '3' może być błędnie odczytane jako liczba kolumn, co prowadzi do mylnej konkluzji. Kolejna niepoprawna odpowiedź o posiadaniu jednego elementu zawierającego trzyelementowe tablice jest technicznie niezgodna z definicją tabeli w SQL, gdzie kolumny nie mogą bezpośrednio przechowywać tablic, a jedynie pojedyncze wartości. Niepoprawna koncepcja, że tabela może mieć kolumny o nazwach 'kolumna1', 'kolumna2', 'kolumna3' również nie ma oparcia w podanej definicji, ponieważ nazwa kolumny nie została określona w tym kontekście. Takie podejście do interpretacji definicji tabeli może prowadzić do znacznych problemów w projektowaniu baz danych, gdyż niewłaściwe przypisanie nazw i typów danych może skutkować nieefektywnym zarządzaniem danymi i poważnymi błędami w aplikacjach korzystających z tych danych. W branży istotne jest, aby przy projektowaniu tabel posługiwać się precyzyjnym i zgodnym z normami językiem SQL, aby uniknąć nieporozumień i zapewnić skalowalność oraz wydajność systemów.

Pytanie 14

Funkcja agregująca MIN w SQL ma na celu obliczenie

A. średniej wartości różnych pól w rekordzie zwróconym przez zapytanie
B. długości tekstu w rekordach zwróconych przez kwerendę
C. liczby wierszy, które zostały zwrócone przez kwerendę
D. wartości najmniejszej w kolumnie wynikowej kwerendy
Funkcja agregująca MIN w języku SQL służy do obliczania wartości minimalnej w kolumnie zwróconej przez kwerendę. Działa ona na zbiorze rekordów i zwraca najmniejszą wartość spośród wartości znalezionych w specyfikowanej kolumnie. Przykładowo, jeśli w naszej bazie danych mamy tabelę 'Pracownicy' z kolumną 'Wynagrodzenie', zapytanie SQL 'SELECT MIN(Wynagrodzenie) FROM Pracownicy;' zwróci najniższe wynagrodzenie wśród wszystkich pracowników. Funkcja ta jest niezwykle przydatna w analizie danych, gdzie często chcemy zidentyfikować najniższe wartości, na przykład w raportach finansowych czy w analizach jakości danych. Dobrze jest też pamiętać, że MIN może być używana w połączeniu z klauzulą GROUP BY, co pozwala na uzyskanie minimalnych wartości w podgrupach danych, co jest standardem w analityce danych w SQL.

Pytanie 15

Jakie są przykłady standardowych poleceń w języku zapytań SQL, odnoszących się do operacji na danych SQL DML, takich jak wstawianie, usuwanie oraz modyfikacja danych?

A. ALTER, CREATE, DROP
B. DELETE, INSERT, UPDATE
C. SELECT, SELECT INTO
D. DENY, GRANT, REVOKE
Wybór innych odpowiedzi nie jest poprawny, ponieważ skupiają się na różnych aspektach zarządzania bazami danych. Polecenia typu ALTER, CREATE i DROP są związane z definicją danych (DDL, Data Definition Language). ALTER umożliwia modyfikację struktury tabeli, na przykład dodawanie nowych kolumn, natomiast CREATE jest używane do tworzenia nowych obiektów w bazie danych, takich jak tabele czy widoki. DROP z kolei służy do usuwania tych obiektów. Te polecenia są fundamentalne dla zarządzania strukturą bazy, ale nie dotyczą bezpośrednio operacji na danych. Inna grupa poleceń, takich jak DENY, GRANT i REVOKE, odnosi się do zarządzania uprawnieniami użytkowników w systemie baz danych, co jest istotne dla bezpieczeństwa, ale nie wpływa na manipulację danymi. Te polecenia kontrolują, kto ma dostęp do jakich danych, co jest kluczowe w kontekście bezpieczeństwa, ale nie są one używane do wprowadzania, usuwania czy aktualizacji danych w tabelach. Dlatego te zestawy poleceń, mimo że są istotne w kontekście zarządzania bazami danych, nie odpowiadają na pytanie dotyczące operacji na danych w kontekście DML.

Pytanie 16

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. <form="password" type="password" />
D. <input name="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 17

Aby włączyć zewnętrzny skrypt JavaScript zatytułowany skrypt.js, należy umieścić w kodzie HTML

A. <script> skrypt.js </script>
B. <link rel="JavaScript" type="js" href="skrypt.js" />
C. <link rel="script" href="skrypt.js" />
D. <script src="skrypt.js"></script>
Odpowiedź <script src="skrypt.js"></script> jest poprawna, ponieważ jest to standardowy sposób dołączania zewnętrznych plików JavaScript do dokumentu HTML. Element <script> informuje przeglądarkę, że zawiera on kod JavaScript, a atrybut src wskazuje na lokalizację pliku, który ma zostać załadowany. W praktyce, umieszczanie skryptów w tagu <script> z atrybutem src umożliwia oddzielenie logiki skryptowej od struktury HTML, co jest zgodne z zasadami programowania modularnego i ułatwia zarządzanie kodem. Taka struktura pozwala na łatwe ponowne wykorzystanie skryptów w różnych projektach bez konieczności kopiowania kodu. Ponadto, dobrym zwyczajem jest umieszczanie skryptów na końcu sekcji <body>, co pozwala na załadowanie całej zawartości HTML przed wykonaniem skryptu, co przekłada się na lepszą wydajność i doświadczenia użytkownika.

Pytanie 18

Z tabeli mieszkańcy należy uzyskać unikalne nazwy miejscowości, do czego konieczne jest użycie wyrażenia SQL z klauzulą

A. CHECK
B. UNIQUE
C. HAVING
D. DISTINCT
Wybór odpowiedzi CHECK, HAVING lub UNIQUE wskazuje na pewne nieporozumienia dotyczące zastosowania i znaczenia tych klauzul w SQL. Klauzula CHECK jest używana w kontekście definicji tabeli, aby zapewnić, że dane w danym atrybucie spełniają określone warunki, na przykład 'CHECK (wiek >= 0)', co oznacza, że wiek nie może być ujemny. Nie ma jednak zastosowania w kontekście eliminacji duplikatów z wyników zapytania. Klauzula HAVING jest z kolei używana do filtrowania grup z wyniku agregacji, na przykład w zapytaniu z użyciem GROUP BY. Użycie HAVING do eliminacji duplikatów z wyników bez wcześniejszego grupowania danych nie ma sensu. Z kolei UNIQUE to ograniczenie, które można ustawić na kolumnę w tabeli, aby zapewnić, że nie będą w niej występowały powtarzające się wartości. Chociaż jest związane z unikalnością, nie jest klauzulą, którą można wykorzystać w zapytaniach do eliminacji duplikatów z zestawów wyników. Typowym błędem jest mylenie tych koncepcji, co prowadzi do wyboru nieodpowiednich narzędzi w SQL do rozwiązania konkretnego problemu. Warto zatem dobrze zrozumieć różnice między tymi klauzulami, aby umiejętnie stosować je w praktyce i skutecznie zarządzać danymi.

Pytanie 19

W języku CSS zapis h2 {background-color: green;} spowoduje, że kolor zielony będzie dotyczył

A. czcionki każdego nagłówka na stronie
B. tła tekstu nagłówka drugiego stopnia
C. czcionki nagłówka drugiego stopnia
D. tła całej strony
Odpowiedź, że kolor zielony będzie dotyczył tła tekstu nagłówka drugiego stopnia, jest poprawna. W kodzie CSS, zapis <b>h2 {background-color: green;}</b> oznacza, że wszystkie elementy <h2> na stronie będą miały tło w kolorze zielonym. W praktyce oznacza to, że każdy nagłówek drugiego stopnia będzie miał zielone tło, co może być użyteczne do wyróżnienia sekcji na stronie. Warto zauważyć, że stylowanie tła nagłówków może poprawić czytelność i estetykę dokumentu, zwłaszcza w sytuacjach, gdy chcemy podkreślić różne sekcje treści. Dobrą praktyką w CSS jest także używanie klas i identyfikatorów do bardziej precyzyjnego stylowania, co pozwala na unikanie konfliktów z innymi stylami na stronie. Dodatkowo, można eksperymentować z różnymi kolorami i przezroczystościami, aby uzyskać unikalne efekty wizualne, co jest szczególnie ważne w nowoczesnym projektowaniu stron internetowych.

Pytanie 20

Jaką informację przekazuje przeglądarce internetowej zapis <!DOCTYPE html> ?

A. W dokumencie wymagane jest zamknięcie każdego taga, nawet samozamykającego
B. Dokument został zapisany w wersji HTML 5
C. W dokumencie wszystkie tagi są zapisane wielkimi literami
D. Dokument został zapisany w wersji HTML 4
Odpowiedź, że dokument został zapisany w języku HTML 5, jest prawidłowa, ponieważ zapis <DOCTYPE html> jest standardowym nagłówkiem deklarującym, że dokument jest napisany w najnowszej wersji HTML, czyli HTML 5. Taki zapis informuje przeglądarkę, że ma interpretować zawartość dokumentu zgodnie z zasadami i funkcjami określonymi w HTML 5. Wprowadzenie HTML 5 przyniosło wiele ulepszeń, takich jak nowe elementy semantyczne (np. <header>, <footer>, <article>), które ułatwiają tworzenie strukturalnie poprawnych i bardziej dostępnych stron internetowych. Dodatkowo, HTML 5 wprowadza wsparcie dla multimediów (np. <video>, <audio>) oraz API, które umożliwiają bardziej interaktywne podejście do tworzenia aplikacji webowych. Warto pamiętać, że stosowanie aktualnych standardów jest kluczowe dla zapewnienia kompatybilności z nowymi przeglądarkami oraz urządzeniami mobilnymi, a także dla zwiększenia wydajności i bezpieczeństwa aplikacji webowych.

Pytanie 21

Fragment kodu JavaScript, który sumuje dwie liczby, przedstawia się następująco. Aby wykonać dodawanie po kliknięciu przycisku o nazwie dodaj, należy umieścić kod w wykropkowanym miejscu.

Podaj pierwszą liczbę: <input type="text" name="liczba1" />
Podaj drugą liczbę: <input type="text" name="liczba2" />
....
<script>
function dodaj()
{
// ta funkcja realizuje dodawanie i podaje jego wynik
}
</script>
A. <button onclick="return oblicz()">dodaj</button>
B. <button onselect="return dodaj()">oblicz</button>
C. <button onclick="return dodaj()">dodaj</button>
D. <button onselect="return dodaj()">dodaj</button>
W omawianym zadaniu kluczowym aspektem jest prawidłowe przypisanie funkcji do zdarzenia kliknięcia. Atrybut onselect jest nieodpowiedni w tym kontekście, ponieważ dotyczy zdarzeń związanych z zaznaczeniem tekstu, a nie z kliknięciem przycisku. Wprowadzenie onselect jako atrybutu w odpowiedziach 1 i 2 jest błędne, gdyż nie spełnia funkcji wywoływania zdarzenia kliknięcia, które jest wymagane do uruchomienia procesu dodawania. Obsługa zdarzeń w JavaScript bazuje na przypisaniu odpowiednich funkcji do określonych sytuacji interakcji użytkownika z elementami interfejsu. Kliknięcie jest jednym z najczęściej używanych zdarzeń, dlatego poprawne użycie onclick zapewnia zgodność z podstawowymi zasadami projektowania aplikacji webowych. W odpowiedzi 3 atrybut onclick jest użyty poprawnie, jednak nazwa funkcji oblicz() nie jest tożsama z wymaganą funkcją dodaj(), przez co nie spełnia wymogów zadania. Ważne jest, aby nazwa funkcji w atrybucie onclick dokładnie odpowiadała nazwie funkcji, która ma być wykonana. To unikanie niezgodności w kodzie źródłowym pozwala na efektywne zarządzanie funkcjami i zapewnia prawidłowe działanie skryptu. Atrybut onclick powinien być stosowany, gdy chcemy zareagować na bezpośrednie działania użytkownika takie jak kliknięcie przycisku. Dzięki temu możemy tworzyć dynamiczne i interaktywne aplikacje internetowe, które odpowiadają na potrzeby użytkownika w czasie rzeczywistym, co jest jednym z kluczowych celów nowoczesnego projektowania stron internetowych.

Pytanie 22

Jaka wartość zostanie wypisana na standardowym wyjściu dla zamieszczonego w ramce fragmentu programu napisanego w języku C++ ?

int obliczenia( int x ){
    x %= 3;
    x++;
    return x;
}

int main( ){
    std::cout << obliczenia(32);
}
A. 32
B. 0
C. 3
D. 2
Dobra robota! Wybrałeś opcję 3, co oznacza, że zrozumiałeś, jak działają operatorzy w C++. W tym przykładzie mamy funkcję 'obliczenia', która przyjmuje argument 'x' równy 32. W środku tej funkcji wykonuje się operacja modulo (x %= 3), co w praktyce oznacza, że dzielimy 32 przez 3 i zostaje nam reszta, czyli 2. Później dodajemy 1 do 'x' (x++), co daje nam w sumie 3. I to właśnie ta liczba jest zwracana przez funkcję i wypisywana na ekranie przez 'std::cout'. Fajnie jest pamiętać, że '%=' skraca zapis do x = x % 3, a 'x++' to z kolei x = x + 1. Te skróty to codzienność w programowaniu, dlatego warto je znać. No i pamiętaj, że w C++ każda funkcja zwraca wartość przy użyciu 'return', a ta wartość jest potem używana tam, gdzie funkcję wywołujesz.

Pytanie 23

Jaki typ danych w MySQL należy zastosować, aby w jednym polu zapisać zarówno datę, jak i czas?

A. TIMESTAMP
B. YEAR
C. BOOLEAN
D. DATE
Typ danych TIMESTAMP w MySQL jest przeznaczony do przechowywania zarówno daty, jak i czasu w jednym polu. Jest szczególnie przydatny w sytuacjach, gdy potrzebne jest śledzenie zdarzeń w czasie, takich jak rejestracja daty i godziny utworzenia lub modyfikacji rekordów w bazie danych. TIMESTAMP przechowuje dane w formacie 'YYYY-MM-DD HH:MM:SS', co pozwala na precyzyjne określenie momentu w czasie. Wartością dodaną tego typu danych jest automatyczne aktualizowanie znacznika czasu przy każdej zmianie rekordu (jeśli ustawimy odpowiednie opcje), co jest zgodne z najlepszymi praktykami w zakresie audytu danych. Przykładem zastosowania może być rejestracja logów aktywności użytkowników w aplikacji internetowej lub monitorowanie transakcji w systemach finansowych, gdzie dokładny czas zdarzenia jest kluczowy. Dodatkowo, TIMESTAMP obsługuje różnice stref czasowych, co czyni go idealnym wyborem w aplikacjach działających w różnych lokalizacjach geograficznych.

Pytanie 24

Które z poniższych poleceń pozwala na dodanie kolumny zadanie_kompletne do tabeli zadania?

A. ADD COLUMN zadanie_kompletne WITH zadania
B. INSERT INTO zadania VALUES zadanie_kompletne
C. ALTER TABLE zadania ADD COLUMN zadanie_kompletne int
D. CREATE INDEX zadania ADD COLUMN zadanie_kompletne int
Dodanie kolumny do istniejącej tabeli w relacyjnej bazie danych może być realizowane za pomocą polecenia ALTER TABLE. To polecenie jest standardem SQL i jest wspierane przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL, Oracle czy Microsoft SQL Server. W przypadku zapytania 'ALTER TABLE zadania ADD COLUMN zadanie_kompletne int', polecenie to modyfikuje strukturę tabeli 'zadania', dodając nową kolumnę o nazwie 'zadanie_kompletne', która będzie przechowywać dane typu całkowitego (int). Praktycznym przykładem zastosowania tego polecenia może być system zarządzania projektami, w którym chcemy śledzić status zadań. Po dodaniu tej kolumny, możemy wprowadzać wartości 0 lub 1, które mogą reprezentować, czy zadanie zostało ukończone, czy nie. Użycie ALTER TABLE jest niezbędne, gdyż inne polecenia, takie jak CREATE INDEX czy INSERT INTO, służą do innych celów, takich jak tworzenie indeksów lub wstawianie danych, a nie do modyfikacji struktury tabeli. W praktyce, aby upewnić się, że zmiany są zgodne z wymaganiami systemu, zaleca się zawsze wykonanie kopii zapasowej bazy danych przed przeprowadzeniem operacji na strukturze tabeli.

Pytanie 25

Jaką wartość zwróci funkcja ```empty($a);``` w języku PHP, gdy zmienna ```$a``` będzie miała wartość liczbową równą 0?

A. NULL
B. FALSE
C. TRUE
D. 0
Odpowiedzi, które wskazują, że funkcja empty() zwraca 0, FALSE lub NULL, są mylne z kilku powodów. Po pierwsze, wartość 0 w PHP to po prostu liczba i nie jest interpretowana jako pusta. Zmienne, które mają wartość 0 są traktowane jako fałszywe w kontekście logicznym, ale nie są uznawane za puste zgodnie z definicją funkcji empty(). Kiedy przyjmujemy, że empty($a) zwraca 0, w rzeczywistości mylimy funkcję empty() z innymi, które operują na wartościach liczbowych. Podobnie, FALSE jako wynik również nie jest poprawny; chociaż 0 jest uważane za fałszywe, empty() zwraca TRUE, a nie FALSE, gdy zmienna jest pusta. Także NULL to typ danych, a w kontekście empty() jest uznawany za pusty, ale nie jest to wynik, jaki uzyskalibyśmy dla zmiennej $a = 0. Właściwe zrozumienie zwrotów z funkcji PHP oraz typów danych jest kluczowe dla skutecznego programowania. Pomocne jest, aby programiści upewniali się, że korzystają z odpowiednich funkcji do określenia pustych wartości, a w przypadku empty() nie mogą pomylić jej działania z innymi funkcjami, które operują na wartościach logicznych lub liczbowych.

Pytanie 26

W SQL, aby dokonać zmiany w strukturze tabeli, na przykład dodać lub usunąć kolumnę, powinno się użyć polecenia

A. DROP TABLE
B. ALTER TABLE
C. UPDATE
D. TRUNCATE
Wybór poleceń takich jak 'UPDATE', 'TRUNCATE' czy 'DROP TABLE' wskazuje na nieporozumienia dotyczące ich zastosowania w kontekście zmiany struktury tabeli. 'UPDATE' jest używane do modyfikacji danych już istniejących w tabeli, a nie do zmiany jej struktury. Umożliwia aktualizację wartości w kolumnach, jednak nie wpływa na same kolumny czy ich definicje. 'TRUNCATE' służy do szybkiego usuwania wszystkich rekordów z tabeli, ale nie można go używać do zmiany struktury tabeli ani do usunięcia kolumn. Tego typu operacja nie tylko nie jest możliwa, ale także wymaga innego podejścia niż modyfikacja struktury. Z kolei 'DROP TABLE' całkowicie usuwa tabelę i wszystkie jej dane, co jest drastycznym krokiem, gdyż skutkuje utratą wszystkich informacji w niej zawartych. Wybór tych poleceń wskazuje na typowe błędy myślowe związane z zamianą operacji na danych z operacjami na strukturze bazy danych. W praktyce, modyfikacje struktury tabel powinny być zawsze przemyślane i zaplanowane, aby zachować integralność danych oraz zgodność z wymaganiami aplikacyjnymi.

Pytanie 27

W języku JavaScript zdefiniowano następującą funkcję. Jej celem jest

Ilustracja do pytania
A. Wypisać wartość odwrotną do f
B. Wypisać wartość bezwzględną z f
C. Zwrócić wartość odwrotną do f
D. Zwrócić wartość bezwzględną z f
Niepoprawne odpowiedzi wynikają z niepełnego zrozumienia funkcji i jej założeń. Wypisanie wartości bezwzględnej z f sugerowałoby że funkcja korzysta z mechanizmu wyjściowego takiego jak console.log co nie ma miejsca w tym przypadku. Funkcja jedynie zwraca wynik za pomocą return a nie wypisuje go na konsolę. Zwrócenie wartości odwrotnej do f oznaczałoby że funkcja miałaby inny cel: przekształcenie liczby na jej odwrotność czyli wartość 1/f co wymagało by dodatkowej logiki i warunkowania aby uniknąć dzielenia przez zero. Podobnie wypisanie wartości odwrotnej do f również wskazywałoby na potrzebę użycia mechanizmu wyjściowego a nie tylko return. Kluczowym błędem w takich rozumowaniach jest nieodróżnianie funkcji zwracających wartość od tych które wypisują wynik oraz niedocenienie znaczenia przekształcania wartości co jest fundamentem programowania funkcyjnego. Dobre praktyki programistyczne wymagają jasno zdefiniowanego celu funkcji co w tym przypadku jest poprawnie zrealizowane poprzez zwracanie wartości bezwzględnej co jest częstym i użytecznym wzorcem w wielu zastosowaniach praktycznych.

Pytanie 28

W hurtowni utworzono tabelę sprzedaż, która zawiera pola: id, kontrahent, grupa_cenowa oraz obrot. Jakie polecenie należy wykorzystać, aby znaleźć tylko kontrahentów z drugiej grupy cenowej, których obrót przekracza 4000 zł?

A. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa=2 AND obrot>4000
B. SELECT sprzedaz FROM kontrahent WHERE grupa_cenowa=2 AND obrot>4000
C. SELECT sprzedaz FROM kontrahent WHERE obrot>4000
D. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa=2 OR obrot>4000
W analizowanych odpowiedziach znajdują się elementy, które nie spełniają wymogów stawianych przez zapytanie o kontrahentów z drugiej grupy cenowej i obrotem powyżej 4000 zł. W pierwszym przypadku, zapytanie używa niewłaściwej konstrukcji, ponieważ polecenie 'SELECT sprzedaz FROM kontrahent WHERE obrot>4000;' odnosi się do błędnych tabel i kolumn, wprowadzając zamieszanie. Użycie 'FROM kontrahent' zamiast 'FROM sprzedaz' wskazuje na nieprawidłowe zrozumienie struktury bazy danych. Kolejny błąd polega na zastosowaniu operatora OR w jednym z zapytań, co prowadzi do zwrócenia wszystkich kontrahentów, którzy mają obrót większy niż 4000 zł, niezależnie od grupy cenowej. W kontekście wymagań pytania, taki zabieg nie jest wystarczający, ponieważ nie segreguje wyników według grupy cenowej, co może skutkować uzyskaniem niepożądanych danych. W ostatniej niepoprawnej odpowiedzi także występuje mylna konstrukcja, ponieważ 'SELECT sprzedaz FROM kontrahent WHERE grupa_cenowa=2 AND obrot>4000;' błędnie wskazuje na tabele i kolumny, co jest niezgodne z zasadami normalizacji baz danych. Zastosowanie niewłaściwych aliasów i odniesień do tabel uniemożliwia skuteczne wykonanie zapytania i analizę danych.

Pytanie 29

Jakiego typu mechanizm zabezpieczeń aplikacji jest zawarty w środowisku uruchomieniowym platformy .NET Framework?

A. Mechanizm uruchamiania aplikacji zrealizowany przez frameworki aplikacji webowych (ASP.NET)
B. Mechanizm uruchamiania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
C. Mechanizm uruchamiania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) i na rolach (RBS - Role-Based Security)
D. Mechanizm uruchamiania aplikacji dla bibliotek klas
Mechanizm wykonywania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security) jest kluczowym elementem platformy .NET Framework, który zapewnia odpowiedni poziom bezpieczeństwa dla aplikacji. CAS umożliwia definiowanie poziomów uprawnień dla różnych komponentów kodu, co pozwala na kontrolę, jakie operacje mogą być wykonywane przez dany kod w zależności od jego pochodzenia oraz kontekstu. Na przykład, aplikacja uruchomiona z lokalnego dysku może mieć inne uprawnienia niż ta sama aplikacja uruchomiona z internetu. RBS z kolei umożliwia przypisywanie ról użytkownikom, co pozwala na dalsze graniczenie dostępu do funkcji aplikacji w oparciu o przypisane role. Takie podejście nie tylko zabezpiecza aplikacje przed nieautoryzowanym dostępem, ale także wspiera środowiska wieloużytkownikowe, gdzie różne osoby mogą potrzebować różnych poziomów dostępu. Przykładowo, w aplikacji webowej mogą istnieć role administratora, edytora i widza, gdzie każdy z użytkowników ma różne możliwości interakcji z systemem. Zastosowanie CAS i RBS jest zgodne z najlepszymi praktykami w zakresie zabezpieczeń kodu, co jest istotne w kontekście rosnących zagrożeń w dzisiejszym świecie cyfrowym.

Pytanie 30

Aby w tabeli praca, tworzonej w języku SQL, dodać do kolumny stawka warunek, który wymusza, aby przyjmowane były jedynie wartości dodatnie, a jednocześnie mniejsze niż 50, należy zastosować zapis

A. … stawka foat CHECK (stawka BETWEEN 0 AND 50.00)
B. … stawka foat CHECK (stawka IN (0, 50.00))
C. … stawka foat CHECK (stawka>0 OR stawka<50.00)
D. … stawka foat CHECK (stawka>0 AND stawka<50.00)
Wybór odpowiedzi, która nie spełnia założonych warunków, może wynikać z nieprawidłowego zrozumienia logiki operatorów oraz zasadności stosowania warunków CHECK w SQL. Na przykład, zapis '… stawka foat CHECK (stawka BETWEEN 0 AND 50.00)' jest niewłaściwy, ponieważ warunek ten dopuszcza wartość równą zeru, która nie jest wartością dodatnią. Umożliwienie zerowych wartości może prowadzić do sytuacji, w której w tabeli znajdą się dane niezgodne z założeniem, że 'stawka' ma być wartością dodatnią. Podobnie, zapis '… stawka foat CHECK (stawka>0 OR stawka<50.00)' również jest błędny, ponieważ logiczne połączenie za pomocą operatora OR wprowadza możliwość, że 'stawka' może być większa od zera i jednocześnie większa lub równa 50, co jest sprzeczne z naszym celem. Z kolei użycie '… stawka foat CHECK (stawka IN (0, 50.00))' jest nieodpowiednie, ponieważ operator IN sprawdza, czy wartość 'stawka' znajduje się w specyficznej liście wartości, a w tym przypadku znowu dopuszcza zera i wartości graniczne, które nie powinny być zaakceptowane. Tego rodzaju błędy myślowe prowadzą do niepoprawnych założeń w projektowaniu bazy danych, które z kolei mogą skutkować problemami z jakością danych oraz ich późniejszą analizą. Dlatego kluczowe jest zrozumienie, jak właściwie formułować warunki walidacji, aby zapewnić spójność i integralność danych.

Pytanie 31

Jaki jest efekt działania programu w JavaScript?

var osoba = prompt("Podaj imię", "Adam");
A. przypisanie do zmiennej osoba wartości "Adam"
B. pojawi się okno z pustym polem do edycji
C. uzyskanie z formularza wyświetlonego na stronie HTML imienia "Adam"
D. otwarcie okna z polem do edycji, w którym znajduje się domyślny tekst "Adam"
Kod var osoba = prompt('Podaj imię' 'Adam') używa funkcji prompt która jest specyficznym mechanizmem w JavaScript. Funkcja ta nie przypisuje bezpośrednio wartości Adam do zmiennej osoba w sposób jawny ale prezentuje użytkownikowi okno dialogowe z domyślną wartością. To okno dialogowe zawiera pole tekstowe które umożliwia edycję przez użytkownika. Użytkownik może pozostawić sugerowaną wartość Adam lub ją zmienić wprowadzając dane. W przypadku gdy użytkownik kliknie anuluj zmienna osoba zostanie ustawiona na null. Z tego powodu odpowiedź sugerująca bezpośrednie przypisanie wartości do zmiennej nie jest poprawna. Koncepcja pobrania imienia z formularza HTML również jest błędna ponieważ nie jest to forma interakcji z formularzem a z oknem dialogowym. Formularze HTML mają swoją własną strukturę i sposób manipulacji danymi który różni się od metody używanej w przypadku prompt. Kolejnym błędnym założeniem jest twierdzenie że okno dialogowe jest puste. Prompt oferuje możliwość podania domyślnej wartości co zostało zrealizowane w przykładzie poprzez umieszczenie Adama jako drugiego argumentu funkcji. Zrozumienie różnic w działaniu funkcji JavaScript oraz ich ograniczeń jest kluczowe w projektowaniu efektywnych interfejsów użytkownika na stronach internetowych. Programiści powinni być świadomi standardów i dobrych praktyk związanych z używaniem różnych metod interakcji w aplikacjach webowych by zapewnić optymalne doświadczenia użytkownika i kompatybilność z nowoczesnymi przeglądarkami internetowymi. Funkcje takie jak prompt są wygodne lecz ich użycie wymaga zrozumienia kontekstu i potencjalnych ograniczeń bezpieczeństwa oraz kompatybilności z przeglądarkami które mogą wpływać na sposób ich obsługi w bardziej złożonych aplikacjach webowych. Dlatego nowoczesne rozwiązania często korzystają z bardziej złożonych mechanizmów jak formularze HTML z dynamicznymi stylami i skryptami które pozwalają na większą kontrolę i elastyczność w interakcji z użytkownikiem.

Pytanie 32

W języku JavaScript zdefiniowano obiekt. Aby uzyskać wartość atrybutu, można użyć następującego zapisu: obiekt = { q: 1, w: 2, e: 3, r:4 };

A. obiekt.w
B. obiekt::w
C. obiekt->w
D. obiekt:w
Błędne odpowiedzi opierają się na nieprawidłowej interpretacji sposobu dostępu do właściwości obiektów w JavaScript. Notacja 'obiekt:w' nie jest poprawna, ponieważ nie stosuje się dwukropka do uzyskiwania dostępu do właściwości. Dwukropek jest używany w kontekście tworzenia obiektów, gdzie określa parę klucz-wartość, a nie podczas odczytywania wartości. Z kolei notacja 'obiekt::w' w JavaScript również nie ma zastosowania. Podwójny dwukropek nie jest uznawany za prawidłową operację i nie ma zastosowania w kontekście obiektów. Zresztą, w wielu innych językach programowania, takich jak C++ czy Python, używa się podwójnego dwukropka w zupełnie innym kontekście, co może prowadzić do pomyłek. Ostatnia odpowiedź 'obiekt->w' może sugerować wpływy z języków takich jak C czy C++, gdzie operator strzałki '->' jest używany do dostępu do właściwości wskaźnika na obiekt. W JavaScript jednak nie używa się wskaźników, a dostęp do właściwości obiektu odbywa się przez notację kropkową lub notację indeksu. Właściwe zrozumienie tych koncepcji jest kluczowe dla efektywnego programowania w JavaScript, a błędne podejście do notacji prowadzi do frustracji i błędów w kodzie.

Pytanie 33

Dostępna jest tabela programisci, która zawiera pola: id, nick, ilosc_kodu, ocena. Pole ilosc_kodu wskazuje liczbę linii kodu stworzonych przez programistę w danym miesiącu. W celu obliczenia łącznej liczby linii kodu napisanych przez wszystkich programistów, należy zastosować poniższe polecenie

A. SELECT COUNT(programisci) FROM ilosc_kodu;
B. SELECT MAX(ilosc_kodu) FROM programisci;
C. SELECT SUM(ilosc_kodu) FROM programisci;
D. SELECT SUM(ocena) FROM ilosc_kodu;
Aby obliczyć sumę linii kodu napisanych przez wszystkich programistów w tabeli 'programisci', poprawne jest użycie zapytania SQL: SELECT SUM(ilosc_kodu) FROM programisci. Zapytanie to wykorzystuje funkcję agregującą SUM(), która sumuje wartości w określonej kolumnie, w tym przypadku 'ilosc_kodu'. Kolumna ta zawiera liczbę linii kodu napisanych przez każdego programistę w danym miesiącu. Przykładem zastosowania tego zapytania może być sytuacja, w której chcemy określić całkowitą produktywność zespołu programistycznego w danym okresie czasu. Możemy rozszerzyć to zapytanie, dodając klauzulę WHERE, aby zsumować tylko linie kodu z określonego miesiąca lub roku. Warto również pamiętać o standardach SQL oraz zasadach normalizacji baz danych, które zalecają unikanie redundancji danych i umożliwiają efektywne przetwarzanie zapytań. Dzięki poprawnym praktykom można zapewnić optymalizację wydajności bazy danych oraz ułatwić późniejsze analizy danych.

Pytanie 34

Jakiego typu danych w bazie MySQL należy używać, aby zapisać datę oraz czas w jednym polu?

A. TIMESTAMP
B. DATE
C. BOOLEAN
D. YEAR
Typ danych TIMESTAMP w MySQL jest idealnym wyborem do przechowywania zarówno daty, jak i czasu w jednym polu, co czyni go bardzo funkcjonalnym w kontekście aplikacji wymagających ścisłej kontroli nad czasem zdarzeń. TIMESTAMP przechowuje datę i czas jako liczbę sekund, które upłynęły od 1 stycznia 1970 roku, co pozwala na łatwe manipulowanie danymi związanymi z czasem, jak obliczanie różnic między datami czy sortowanie po czasie. Przykładowo, w aplikacjach takich jak systemy rezerwacji, gdzie istotne jest nie tylko kiedy coś zostało zarezerwowane, ale również czas rezerwacji, użycie TIMESTAMP umożliwia efektywne zarządzanie danymi. Dodatkowo, TIMESTAMP automatycznie aktualizuje się, gdy rekord jest zmieniany, co jest niezwykle przydatne w kontekście audytów i monitorowania historii zmian w danych. Warto również zauważyć, że TIMESTAMP w MySQL obsługuje strefy czasowe, co czyni go bardziej uniwersalnym w międzynarodowych zastosowaniach. W standardach branżowych dobre praktyki wskazują na używanie TIMESTAMP dla operacji wymagających ścisłej synchronizacji czasowej oraz tam, gdzie istotna jest informacja o czasie zdarzenia.

Pytanie 35

Jeżeli rozmiar pliku graficznego jest zbyt duży do publikacji w sieci, co należy zrobić?

A. zwiększyć jego głębię kolorów
B. zmniejszyć jego rozdzielczość
C. zapisać w formacie BMP
D. dodać kanał alfa
Zmniejszenie rozdzielczości pliku graficznego jest jedną z najskuteczniejszych metod na zmniejszenie jego rozmiaru, co jest niezwykle ważne w kontekście publikacji w Internecie. Rozdzielczość obrazu odnosi się do liczby pikseli, które składają się na dany obraz, wyrażoną zazwyczaj w pikselach na cal (PPI) lub w całkowitej liczbie pikseli w szerokości i wysokości. Zmniejszając rozdzielczość, obniżamy liczbę pikseli, co w efekcie prowadzi do mniejszego rozmiaru pliku. Na przykład, obraz o rozdzielczości 4000x3000 pikseli ma 12 milionów pikseli, podczas gdy obraz o rozdzielczości 2000x1500 pikseli zaledwie 3 miliony pikseli. Oprócz zmniejszenia rozdzielczości, można również zastosować inne techniki kompresji, takie jak zmiana formatu pliku na JPEG, który jest bardziej efektywny w kompresji zdjęć, a także wykorzystanie narzędzi do optymalizacji grafiki, takich jak TinyPNG czy ImageOptim. Zmniejszając rozdzielczość, należy jednak pamiętać o zachowaniu odpowiedniej jakości obrazu, aby nie wpłynęło to negatywnie na jego czytelność i estetykę, co jest kluczowe w kontekście publikacji online.

Pytanie 36

Używa się zapytania z klauzulą JOIN, aby

A. uzyskać dane z dwóch tabel, które są ze sobą powiązane
B. otrzymać wynik tylko z jednej tabeli
C. określić klucz obcy dla tabeli
D. wykonać funkcję agregującą
Zapytanie z klauzulą JOIN jest kluczowym narzędziem w języku SQL, które umożliwia łączenie danych z dwóch lub więcej tabel na podstawie relacji między nimi. Używając JOIN, możemy uzyskać bardziej złożone i użyteczne zestawienia danych, które nie byłyby możliwe do uzyskania, gdybyśmy korzystali tylko z pojedynczej tabeli. Na przykład, jeśli mamy tabelę klientów oraz tabelę zamówień, możemy z łatwością połączyć je, aby uzyskać informacje o tym, jakie zamówienia złożył dany klient. Przykładowe zapytanie może wyglądać tak: "SELECT klienci.imie, zamowienia.data FROM klienci JOIN zamowienia ON klienci.id = zamowienia.klient_id;" W takim przypadku wykorzystanie JOIN pozwala na integrowanie danych z obu tabel w jedną spójną odpowiedź. Takie podejście jest szeroko stosowane w branży, ponieważ standardy relacyjnych baz danych wymagają efektywnej organizacji i analizy danych, a JOIN jest jednym z podstawowych mechanizmów umożliwiających realizację takich zadań.

Pytanie 37

W jakiej technologii niemożliwe jest przetwarzanie danych wprowadzanych przez użytkownika na stronie WWW?

A. CSS
B. PHP
C. AJAX
D. JavaScript
CSS, czyli Kaskadowe Arkusze Stylów, jest technologią używaną do stylizacji stron internetowych. Jego głównym celem jest określenie, jak elementy HTML powinny wyglądać, w tym ich wygląd, kolor, rozmiar oraz układ na stronie. CSS nie ma możliwości przetwarzania danych użytkownika, ponieważ działa wyłącznie po stronie klienta i nie posiada funkcji interakcji z danymi użytkowników. Przykładem zastosowania CSS jest nadanie stylu nawigacji w serwisie internetowym, gdzie style mogą być określone w pliku CSS, ale nie mają zdolności do przechwytywania i przetwarzania informacji wprowadzonych przez użytkowników w formularzach. Standardy CSS rozwijane przez World Wide Web Consortium (W3C) podkreślają jego rolę w stylizacji i prezentacji, a nie w logice aplikacji czy przetwarzaniu danych. Użytkownicy mogą korzystać z CSS do tworzenia responsywnych układów, jednak bez zdolności do interakcji z danymi, co czyni go technologią czysto wizualną.

Pytanie 38

Podczas definiowania tabeli produkty należy stworzyć pole cena, które będzie reprezentować wartość produktu. Odpowiedni typ danych dla tego pola to

A. DECIMAL(10, 2)
B. TINYTEXT
C. ENUM
D. INTEGER(11)
Wybór typów danych dla pola przechowującego cenę produktu ma kluczowe znaczenie dla poprawności funkcjonowania bazy danych. INTEGER(11) jest typem, który przechowuje liczby całkowite, co oznacza, że nie może być zastosowany do reprezentacji wartości z miejscami dziesiętnymi, co jest niezbędne w przypadku cen. Użycie INTEGER może prowadzić do poważnych problemów, jak zaokrąglanie cen, co w branży handlowej może skutkować błędnymi transakcjami. TINYTEXT to typ danych przeznaczony do przechowywania tekstu, co czyni go całkowicie nieodpowiednim do reprezentacji wartości liczbowych, a tym bardziej cen. W przypadku zastosowania TINYTEXT w tym kontekście, nie tylko utracimy możliwość przeprowadzania obliczeń na cenach, ale również stworzymy dodatkowe problemy z wydajnością bazy danych, ponieważ operacje na tekstach są znacznie wolniejsze niż na liczbach. Z kolei ENUM, który jest używany do określenia zestawu dozwolonych wartości, nie ma zastosowania w kontekście cen, które mogą się zmieniać i nie są ograniczone do stałego zestawu opcji. Użycie ENUM do reprezentacji cen prowadziłoby do nieefektywności, ponieważ każda zmiana ceny wymagałaby modyfikacji definicji pola. Typowe błędy myślowe prowadzące do takich niepoprawnych wniosków to brak zrozumienia znaczenia precyzyjnego przechowywania danych finansowych oraz nieznajomość dostępnych typów danych i ich zastosowań w kontekście konkretnej aplikacji.

Pytanie 39

Który program komputerowy zamienia kod źródłowy, stworzony w danym języku programowania, na język zrozumiały dla komputera?

A. Debugger
B. Kompilator
C. Edytor kodu źródłowego
D. Środowisko programistyczne
Debugger, edytor kodu źródłowego oraz środowisko programistyczne to narzędzia, które pełnią różne funkcje w procesie tworzenia oprogramowania, ale nie są odpowiedzialne za przekształcanie kodu źródłowego na język maszynowy. Debugger to narzędzie, które umożliwia programistom analizowanie i poprawianie błędów w kodzie, pozwalając na zatrzymywanie wykonania programu w określonych punktach, aby sprawdzić wartości zmiennych i stan aplikacji. Choć jest to istotny element procesu programowania, nie zajmuje się kompilacją kodu. Edytor kodu źródłowego służy do pisania i edytowania kodu, jednak nie dokonuje konwersji na język maszynowy; przykładem edytora może być Visual Studio Code czy Sublime Text, które umożliwiają programistom wygodne pisanie kodu, ale same w sobie nie kompilują ani nie interpretują kodu. Środowisko programistyczne (IDE) to zintegrowane środowisko, które łączy edytor kodu, debugger oraz kompilator w jednym narzędziu, co ułatwia proces tworzenia oprogramowania. Mimo że IDE może zawierać kompilator, to jako całość nie jest odpowiedzialne za sam proces kompilacji, lecz raczej za organizację całego procesu programistycznego. Dlatego wszystkie wymienione narzędzia są istotne, ale żadne z nich nie pełni roli kompilatora.

Pytanie 40

W jakim typie pliku powinno się zapisać zdjęcie, aby mogło być wyświetlane na stronie WWW z zachowaniem efektu przezroczystości?

A. PNG
B. BMP
C. JPG
D. CDR
Format PNG (Portable Network Graphics) jest idealnym wyborem do przechowywania obrazów z przezroczystością, ponieważ obsługuje kanał alfa, który pozwala na reprezentację przezroczystości w obrazach. Ta cecha jest szczególnie cenna w projektowaniu stron internetowych, gdzie grafiki muszą być dopasowane do różnych tła bez widocznych krawędzi. Przykładowo, logo firmy zapisane w formacie PNG może być umieszczone na stronie o różnych kolorach tła, zachowując estetyczny wygląd i nie zaburzając kompozycji. Ponadto, PNG jest formatem bezstratnym, co oznacza, że zachowuje jakość oryginalnego obrazu podczas kompresji, co jest ważne, gdy zależy nam na zachowaniu szczegółów i kolorów. W praktyce, wiele przeglądarek internetowych i edytorów graficznych obsługuje ten format, co czyni go standardem w branży. Dlatego dla grafik z przezroczystością PNG jest najczęściej zalecanym formatem, zgodnym z aktualnymi standardami i najlepszymi praktykami w dziedzinie projektowania stron internetowych.