Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 9 stycznia 2025 17:42
  • Data zakończenia: 9 stycznia 2025 17:58

Egzamin zdany!

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

Wymagane minimum: 20 punktów (50%)

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

Jakie wartości zostaną wyświetlone przez funkcję wypisz(2) napisaną w języku JavaScript?

Ilustracja do pytania
A. 3 4 6
B. 2 3 4 6
C. 3 4 6 8
D. 6
Funkcja wypisz w JavaScript działa w ten sposób, że przyjmuje argument a i korzysta z pętli for, która powtarza się pięć razy, zwiększając a o 1 w każdej iteracji. Potem sprawdza, czy a jest podzielne przez 2 lub 3, co znaczy, że liczba musi spełniać jeden z tych warunków, żeby być wypisaną. Kiedy zaczniemy z a=2, po pierwszym obiegu pętli a idzie na 3, a 3 spełnia warunek, więc zostaje wypisana. Potem mamy 4 (4 jest podzielne przez 2) i też jest wypisana, a następnie 5, która nie łapie się w warunek. A potem mamy 6, która już wchodzi, bo 6%2==0 i 6%3==0. W efekcie funkcja wypisuje liczby 3, 4 i 6, co zgadza się z poprawną odpowiedzią 3. Warto też dodać, że korzystanie z document.write jest już trochę passé i lepiej używać innych metod, jak innerHTML, bo to jest bardziej bezpieczne i zgodne z nowoczesnymi standardami webowymi. To pozwala na lepszą manipulację treścią strony, co jest na pewno lepsze w kontekście aplikacji dynamicznych.

Pytanie 2

To pytanie jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się lub utwórz konto aby zobaczyć pełną treść pytania.

Odpowiedzi dostępne po zalogowaniu.

Wyjaśnienie dostępne po zalogowaniu.


Pytanie 3

W systemie baz danych sklepu komputerowego znajduje się tabela o nazwie komputery. Aby stworzyć raport, który wyświetli dane dla konkretnego zestawu informacji z tej tabeli, zawierający tylko te komputery, które mają co najmniej 8 GB pamięci RAM oraz procesor Intel, można wykorzystać zapytanie:

A. SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec>=8
B. SELECT * FROM komputery WHERE procesor= 'Intel' OR pamiec<8
C. SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec<8
D. SELECT * FROM komputery WHERE procesor= 'Intel' OR pamiec>=8
Aby stworzyć kwerendę, która wyświetli wszystkie komputery w tabeli 'komputery', spełniające określone warunki, musimy użyć odpowiednich operatorów logicznych oraz porównań. W tym przypadku chcemy uzyskać sprzęt, którego procesor to 'Intel' oraz pamięć RAM wynosi co najmniej 8 GB. Kluczowym elementem jest tutaj użycie operatora 'AND', który zapewnia, że muszą być spełnione oba warunki jednocześnie. Kwerenda 'SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec>=8;' w pełni odpowiada tym wymaganiom. Operator 'AND' jest istotny, ponieważ bez niego moglibyśmy otrzymać komputery z procesorem Intel, ale z pamięcią RAM mniejszą niż 8 GB, co jest sprzeczne z naszym celem. Tego rodzaju zapytania są powszechne w analizie danych i często wykorzystywane w raportowaniu i wizualizacji danych. Odpowiednia struktura kwerendy zapewnia, że wyniki będą precyzyjne i zgodne z oczekiwaniami użytkowników, co jest kluczowe w zarządzaniu bazami danych oraz w tworzeniu systemów informacyjnych dla sklepów komputerowych.

Pytanie 4

Na zaprezentowanej tabeli dotyczącej samochodów wykonano zapytanie SQL SELECT ```SELECT model FROM samochody WHERE rocznik=2016;``` Jakie wartości zostaną zwrócone w wyniku tego zapytania?

Ilustracja do pytania
A. Punto, Corsa, Corolla
B. Fiat, Opel, Toyota
C. Punto, Corsa, Astra, Corolla, Yaris
D. Czerwony, grafitowy
Zapytanie SQL, które podałeś, czyli SELECT model FROM samochody WHERE rocznik=2016, jest zaprojektowane tak, żeby wyciągnąć z tabeli samochody wszystkie modele aut z rocznika 2016. To ogranicza wynik tylko do tych modeli, które spełniają ten właśnie warunek. Patrząc na dostarczoną tabelę, widzimy, że modele z rocznika 2016 to Punto, Corsa i Corolla. Więc z tego zapytania otrzymamy tylko te trzy modele. W realnym świecie, zapytania SQL są mega przydatne przy filtrowaniu danych w bazach. Zrozumienie, jak pisać zapytania SELECT, jest naprawdę ważne, zwłaszcza dla analityków i administratorów. Dobrze jest znać zasady budowania zapytań, żeby były one jasne i precyzyjne, bo to pozwala lepiej zarządzać i analizować dane. Ta wiedza to podstawa w analizie danych, gdzie umiejętność wyciągania odpowiednich informacji jest kluczowa do podejmowania dobrych decyzji biznesowych.

Pytanie 5

System baz danych gromadzi multimedia, co wiąże się z przechowywaniem znacznych ilości danych binarnych. Jakiego typu danych należy użyć w tym przypadku?

A. DOUBLE
B. LONGTEXT
C. BLOB
D. ENUM
Wybór innych typów danych, takich jak ENUM, DOUBLE czy LONGTEXT, do przechowywania danych multimedialnych jest nieodpowiedni z kilku powodów. ENUM jest typem danych służącym do przechowywania z góry zdefiniowanych wartości, co oznacza, że jego zastosowanie ogranicza się do małych zestawów danych, takich jak kategorie czy statusy, a nie do dużych, binarnych plików multimedialnych. Przykładowo, jeśli chcielibyśmy przechować obraz jako ENUM, napotkalibyśmy na problem z rozmiarem oraz elastycznością tego rozwiązania, co w praktyce byłoby nieefektywne. DOUBLE z kolei jest typem służącym do przechowywania liczb zmiennoprzecinkowych, co również nie ma zastosowania w kontekście danych binarnych, takich jak multimedia. Użycie DOUBLE do przechowywania plików audio czy wideo byłoby błędne, ponieważ nie jest on przystosowany do przechowywania danych binarnych, a jedynie do reprezentacji wartości numerycznych. LONGTEXT, mimo że może pomieścić dużą ilość danych tekstowych, również nie jest odpowiedni do przechowywania danych binarnych. Jest to typ przeznaczony do długich łańcuchów znaków, co nie pasuje do formatu plików multimedialnych, które wymagają innego podejścia. Użycie niewłaściwych typów danych w bazach danych może prowadzić do problemów z wydajnością, a także do trudności w zarządzaniu danymi. Dlatego ważne jest, aby dobrze rozumieć różnice między typami danych i ich zastosowaniem w praktyce, aby zapewnić optymalne przechowywanie i zarządzanie danymi w aplikacjach.

Pytanie 6

W CSS, aby ustawić wcięcie pierwszej linii akapitu na 30 pikseli, należy użyć następującego zapisu

A. p { line-height: 30px; }
B. p { text-indent: 30px; }
C. p { line-indent: 30px; }
D. p { text-spacing: 30px; }
Analizując inne opcje, można zauważyć, że zapisy takie jak line-indent, line-height, czy text-spacing nie są poprawne w kontekście wcięcia pierwszej linii akapitu w CSS. Właściwość line-indent nie istnieje w specyfikacji CSS, co czyni tę odpowiedź zupełnie niewłaściwą. Użytkownicy mogą mylić terminologię, sądząc, że line-indent odnosi się do wcięcia, jednak nie jest to termin rozpoznawany przez standardy CSS. Bardziej odpowiednią właściwością do modyfikacji wysokości linii jest line-height, która jednak nie ma związku z wcięciem tekstu, lecz z odstępem pomiędzy poszczególnymi liniami tekstu w akapicie. Użycie line-height do uzyskania wcięcia prowadzi do nieporozumień i niepożądanych efektów wizualnych. Z kolei text-spacing, będący inną niepoprawną odpowiedzią, nie jest uznaną właściwością CSS i nie wpływa na wcięcia. Dobre praktyki w projektowaniu stron internetowych wymagają znajomości standardów CSS i ich zastosowania w praktyce. Ważne jest, aby przyzwyczaić się do stosowania właściwości, które są uznawane przez wiodące przeglądarki i standardy webowe, aby uniknąć takich błędów i uzyskać zamierzony efekt wizualny. Zapewnienie, że używamy odpowiednich właściwości, jest kluczowe dla poprawności i jakości kodu CSS, który ma bezpośredni wpływ na końcowy rezultat, czyli wygląd i funkcjonalność stron internetowych.

Pytanie 7

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

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

Pytanie 8

$x = 0; while($x < 5) { echo "$x,"; $x++; } Wskaż instrukcję, która jest funkcjonalnie równoważna dla podanej pętli while w języku PHP.

Ilustracja do pytania
A. Instrukcja 2
B. Instrukcja 4
C. Instrukcja 1
D. Instrukcja 3
W programowaniu często spotyka się różne sposoby implementacji pętli, jednak nie wszystkie z nich są równie efektywne czy poprawne w kontekście stawianych wymagań. W przypadku zaproponowanych instrukcji for, które miałyby być równoważne funkcjonalnie do podanej pętli while, kluczowym aspektem jest zachowanie identycznych warunków początkowych, warunku końcowego oraz sposobu inkrementacji zmiennej sterującej. Podczas gdy instrukcja 3 dokładnie odwzorowuje działanie pętli while pod względem inicjalizacji wartości $x, warunku kontynuacji ($x < 5) oraz kroku inkrementacyjnego ($x++), inne opcje różnią się w tych aspektach. Instrukcja 1 zawiera podwójną inkrementację zmiennej w każdym kroku pętli, co skutkuje zbyt szybkim osiągnięciem warunku końcowego. Instrukcja 2 zmienia krok inkrementacji na $x+=2, co prowadzi do pominięcia wartości i skrócenia pętli. Instrukcja 4 modyfikuje warunek początkowy, startując z $x równym 1, zamiast 0, co również wpływa na zakres wyświetlanych wartości. Te modyfikacje mogą wprowadzać w błąd i generować nieprzewidywalne wyniki, co jest niepożądane w kontekście pisania stabilnego i przewidywalnego kodu. Zrozumienie różnic w tych implementacjach jest kluczowe dla skutecznego programowania i unikania typowych błędów, które mogą prowadzić do niezamierzonych konsekwencji w działaniu aplikacji. Dlatego ważne jest, aby każda z pętli była precyzyjnie dostosowana do zamierzonej funkcjonalności i zgodna z założonymi celami projektu, co jest podstawą dobrych praktyk w branży inżynierii oprogramowania.

Pytanie 9

Która z poniższych funkcji sortujących, stosowanych w języku PHP, porządkuje tablicę asocjacyjną według kluczy?

A. sort()
B. rsort()
C. ksort()
D. asort()
Funkcje sort(), rsort() i asort() czasami mylą się z ksort(), ale każda z nich działa trochę inaczej. Sort() na przykład, sortuje elementy tablicy według wartości, a nie kluczy, więc w asocjacyjnej tablicy klucze nie mają tu znaczenia. Rsort() działa odwrotnie, bo sortuje wartości w kolejności malejącej, co może być przydatne, gdy chcesz mieć dane od najwyższej do najniższej wartości, ale też nie zmienia kluczy. Asort() znowu sortuje tablicę asocjacyjną według wartości, ale klucze mogą pozostać w pierwotnej kolejności. Wybór funkcji sortującej jest ważny, żeby dobrze zorganizować dane, więc warto ogarnąć te różnice między funkcjami.

Pytanie 10

W CSS jednostką miary, która jest wyrażona w punktach edytorskich, oznaczana jest symbolem

A. px
B. em
C. pt
D. in
Jednostki 'em', 'px' oraz 'in' nie są związane z punktami edytorskimi, co czyni je nieodpowiednimi w tym kontekście. 'em' jest jednostką miary, która jest zależna od rozmiaru czcionki elementu nadrzędnego. To oznacza, że wartość '1em' odpowiada rozmiarowi czcionki zastosowanemu w danym kontekście. Używanie 'em' jest korzystne w przypadku responsywnego projektowania, ponieważ pozwala na skalowanie elementów w zależności od rozmiaru tekstu. Z kolei 'px', czyli piksel, to jednostka miary, która jest niezależna od rozmiaru czcionki i oznacza stałą wartość wyrażoną w pikselach. W świecie web designu, 'px' jest często preferowane ze względu na swoją przewidywalność i prostotę. Ostatnią z jednostek, 'in', oznacza cale i jest rzadko wykorzystywana w CSS, ponieważ jest bardziej związana z drukiem i rzadko stosowana w kontekście nawigacji webowej. W kontekście druku takie jednostki jak 'in' mogą być użyteczne, jednak w projektowaniu stron internetowych ich zastosowanie jest ograniczone. Każda z wymienionych jednostek ma swoje zastosowanie, ale nie można ich stosować zamiennie z 'pt', która jest jednoznacznie związana z punktami edytorskimi.

Pytanie 11

Który składnik języka HTML jest niezbędny, aby uniknąć błędu w walidacji HTML5?

A. <meta name="author" content="....">
B. prologu <!DOCTYPE html>
C. <body>
D. przynajmniej jednego <h1>
Brak prologu <!DOCTYPE html> w dokumencie HTML5 prowadzi do nieprawidłowego działania strony, ale inne elementy również odgrywają istotne role. <meta name="author" content="...."> jest używany do wskazania autora dokumentu, jednak jego brak nie spowoduje błędu walidatora HTML5. Ta informacja jest pomocna w kontekście SEO i nie wpływa na sposób, w jaki strona jest renderowana przez przeglądarki. Podobnie, przynajmniej jedno wystąpienie nagłówka <h1> jest zalecane dla SEO i struktury dokumentu, ale nie jest to element wymagany do uznania dokumentu za poprawny. Brak <h1> może prowadzić do problemów z dostępnością i indeksowaniem, lecz nie spowoduje błędu walidacji. Element <body> jest z kolei kluczowy dla struktury dokumentu, ponieważ zawiera widoczną zawartość strony. Jego brak spowoduje problemy z renderowaniem, ale nie wpłynie na walidację do poziomu HTML5. Warto zauważyć, że typowe błędy myślowe mogą prowadzić do przekonania, że każdy element jest równie ważny dla walidacji dokumentu, tymczasem to <!DOCTYPE html> pełni unikalną rolę w definiowaniu, że przeglądarka powinna interpretować stronę jako HTML5. Znajomość tych różnic jest kluczowa dla skutecznego tworzenia stron internetowych zgodnych ze standardami.

Pytanie 12

Jaką wartość przyjmie zmienna a po realizacji podanej sekwencji komend w języku PHP?

Ilustracja do pytania
A. 10
B. 1
C. 11
D. 12
Początkowa wartość zmiennej a wynosi 1. Częstym błędem jest niewłaściwe zrozumienie działania operatorów inkrementacji i dekrementacji. W przypadku operatora postinkrementacji $a++ najpierw używana jest aktualna wartość zmiennej a a dopiero po tym następuje jej zwiększenie co daje 2. To zamieszanie może prowadzić do błędnego przekonania że wartość zmiennej wzrasta natychmiast co jest nieprawidłowe. Następnie instrukcja $a += 10 zwiększa wartość zmiennej o 10 co w rzeczywistości daje 12. Powszechnym błędem jest niedostateczne zrozumienie jak działają przypisania z dodawaniem co może skutkować nieoczekiwanymi wynikami. Ostatnia instrukcja --$a jest predekrementacją co oznacza że wartość zmiennej zmniejsza się przed jej użyciem co ostatecznie prowadzi do wartości 11. Często myli się to z postdekrementacją gdzie wartości byłyby używane przed zmniejszeniem co wpływa na kolejność operacji. Zrozumienie różnicy między pre- i post-operatorami jest niezbędne dla precyzyjnego przewidywania wyników kodu. Uwaga na te subtelności jest kluczowa dla unikania błędów logicznych w programowaniu i zapewnienia poprawnego działania aplikacji

Pytanie 13

To pytanie jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się lub utwórz konto aby zobaczyć pełną treść pytania.

Odpowiedzi dostępne po zalogowaniu.

Wyjaśnienie dostępne po zalogowaniu.


Pytanie 14

Który z wariantów znacznika <meta> jest poprawny pod względem użytych atrybutów?

A. <meta name = "description" content = "Masz jakieś hobby? To jest strona dla Ciebie! ">
B. <meta background = blue>
C. <meta title = "Strona dla hobbystów">
D. <meta name = "!DOCTYPE">
Odpowiedź <meta name = "description" content = "Masz jakieś hobby? To jest strona dla Ciebie! "> jest prawidłowa, ponieważ wykorzystuje atrybuty zgodne z wymaganiami standardu HTML. Znacznik <meta> jest używany do przekazywania metadanych o stronie internetowej, które są niezwykle istotne dla wyszukiwarek internetowych oraz dla użytkowników. Atrybut 'name' definiuje typ metadanych, a 'content' zawiera wartość przypisaną do tego typu. W przypadku tej odpowiedzi, 'name' jest ustawione na 'description', co oznacza, że zawiera opis strony, a 'content' dostarcza konkretną treść, która może być wykorzystana przez wyszukiwarki do generowania podsumowań w wynikach wyszukiwania. Przykładem zastosowania tego znacznika jest optymalizacja SEO, gdzie dobrze napisany opis może przyczynić się do zwiększenia kliknięć na stronie. Warto również zauważyć, że zgodnie z praktykami SEO, opis powinien być zwięzły, atrakcyjny i dokładnie odzwierciedlać zawartość strony, co może wpłynąć na jej pozycjonowanie w wynikach wyszukiwania.

Pytanie 15

Testy aplikacji webowej, których celem jest ocena wydajności aplikacji oraz bazy danych, a także architektury serwera i konfiguracji, określane są mianem testów

A. bezpieczeństwa
B. kompatybilności
C. funkcjonalności
D. użyteczności
Testy bezpieczeństwa koncentrują się na ocenie, jak dobrze aplikacja chroni dane użytkowników oraz jak reaguje na próby nieautoryzowanego dostępu. W tym kontekście testy te mają na celu identyfikację luk bezpieczeństwa, które mogłyby być wykorzystane przez atakujących. Testy te nie koncentrują się na aspektach skalowalności ani architektury serwera, a ich celem jest zapewnienie, że aplikacja jest odporna na zagrożenia. Z kolei testy funkcjonalności mają na celu weryfikację, czy wszystkie elementy aplikacji działają zgodnie z wymaganiami. Obejmują one testowanie poszczególnych funkcji i ich interakcji, ale nie badają wydajności systemu w warunkach dużego obciążenia ani nie analizują architektury bazy danych. Funkcjonalność aplikacji może być poprawna, ale nieprzystosowana do obsługi wzrastającej liczby użytkowników, co jest istotne w kontekście skalowalności. Testy użyteczności oceniają, jak łatwo użytkownicy mogą korzystać z aplikacji, koncentrując się na interfejsie, ergonomii oraz ogólnym doświadczeniu użytkownika. Choć te aspekty są niezwykle ważne, nie mają one bezpośredniego związku z testowaniem architektury serwera czy skalowalności systemu, co jest kluczowe dla odpowiedzi na postawione pytanie.

Pytanie 16

Ustanowienie klucza obcego jest konieczne do stworzenia

A. relacji 1..n
B. klucza podstawowego
C. relacji 1..1
D. transakcji
Klucz obcy (foreign key) to jeden z podstawowych elementów baz danych, który służy do definiowania relacji między tabelami. Jego główną funkcją jest zapewnienie integralności referencyjnej, co oznacza, że wartość klucza obcego w jednej tabeli musi odpowiadać wartości klucza podstawowego w innej tabeli. Definiując klucz obcy, tworzymy relację 1..n, co oznacza, że jeden rekord w tabeli rodzica (tabela z kluczem podstawowym) może być powiązany z wieloma rekordami w tabeli dziecka (tabela z kluczem obcym). Przykładem może być tabela klientów i tabela zamówień, gdzie jeden klient może mieć wiele zamówień. W praktyce, klucz obcy jest często używany w systemach zarządzania bazą danych, takich jak MySQL, PostgreSQL czy Oracle, zgodnie z normami SQL, które definiują relacje między tabelami. Właściwe wykorzystanie kluczy obcych jest kluczowe dla prawidłowego modelowania baz danych oraz zapewnienia spójności danych podczas operacji takich jak aktualizacja czy usuwanie rekordów.

Pytanie 17

Który z frameworków stworzono dla języka skryptowego PHP?

A. Symfony
B. Spring
C. ASP.NET
D. Angular
Wybór frameworka do rozwoju aplikacji webowych wymaga zrozumienia specyfiki i przeznaczenia danego narzędzia. W przypadku Spring, jest to framework stworzony z myślą o języku Java, skoncentrowany na tworzeniu aplikacji korporacyjnych. Jego zalety, takie jak wsparcie dla zależności i aspektowości, czynią go doskonałym wyborem dla programistów Java, ale nie mają zastosowania w kontekście PHP. Angular natomiast to framework JavaScript, który jest używany do budowy interaktywnych aplikacji jednostronicowych (SPA) w przeglądarkach. Oferuje zaawansowane techniki zarządzania stanem oraz komponentami, lecz nie jest przeznaczony do programowania w PHP. ASP.NET jest z kolei technologią opracowaną przez Microsoft dla języka C# i platformy .NET, co czyni go nieodpowiednim dla projektów PHP. Te błędne odpowiedzi mogą wynikać z nieporozumienia w zakresie technologii webowych i ich wzajemnych relacji. Kluczowym elementem przy wyborze frameworka jest zrozumienie, że każde z tych narzędzi jest optymalizowane do konkretnego języka programowania i jego architektury, co podkreśla znaczenie dobrego dopasowania technologii do wymagań projektu.

Pytanie 18

Jak należy skonstruować zapytanie przy pomocy polecenia SELECT, aby wyświetlić unikalne nazwiska osób zamieszkujących osiedle?

A. SELECT DISTINCT nazwisko FROM mieszkancy;
B. SELECT AVG(nazwisko) FROM mieszkancy;
C. SELECT nazwisko FROM mieszkancy ORDER BY nazwisko;
D. SELECT TOP 10 nazwisko FROM mieszkancy;
Odpowiedź 'SELECT DISTINCT nazwisko FROM mieszkancy;' jest poprawna, ponieważ wykorzystuje klauzulę DISTINCT, która eliminuje duplikaty w wynikach zapytania. W kontekście baz danych, klauzula ta jest niezwykle użyteczna, gdy zależy nam na uzyskaniu unikalnych wartości z kolumny. W tym przypadku, wybierając unikalne nazwiska osób z tabeli 'mieszkancy', zapewniamy, że każde nazwisko pojawi się w wynikach tylko raz, co jest istotne w analizach i raportach, gdzie duplikaty mogłyby wprowadzać w błąd. Praktycznym przykładem użycia tego zapytania może być sytuacja, w której chcemy przygotować raport dla władz lokalnych o mieszkańcach danego osiedla. Zastosowanie DISTINCT pozwoli na przejrzystość raportu i jego większą użyteczność. Warto dodać, że użycie DISTINCT jest zgodne z dobrymi praktykami w programowaniu SQL, ponieważ przyczynia się do efektywnego zarządzania danymi i poprawy jakości wyników.

Pytanie 19

Jaki znacznik z sekcji head dokumentu HTML w wersji 5 jest wymagany przez walidator HTML i jego brak skutkuje zgłoszeniem błędu error?

A. link
B. title
C. style
D. meta
Znacznik <title> jest kluczowym elementem każdej strony internetowej, który znajduje się w sekcji <head> dokumentu HTML. Jego podstawową funkcją jest określenie tytułu strony, który jest wyświetlany w pasku tytułowym przeglądarki oraz w wynikach wyszukiwania. Wersja HTML5 podkreśla znaczenie tego znacznika, czyniąc go wymaganym do poprawnej walidacji dokumentu. Brak znacznika <title> prowadzi do błędu walidacji, co może wpływać na SEO oraz użyteczność strony. Dobrze zaprojektowany tytuł powinien być krótki, ale zwięzły, zawierać kluczowe słowa związane z treścią strony, co pozytywnie wpływa na pozycjonowanie w wyszukiwarkach. Przykład poprawnego znacznika to: <title>Moja Strona Internetowa</title>. Ważne jest, aby tytuł był unikalny dla każdej podstrony, co ułatwia użytkownikom oraz wyszukiwarkom identyfikację treści. W praktyce, zrozumienie roli znacznika <title> jest kluczowe dla każdego, kto tworzy strony internetowe, ponieważ jego obecność ma istotny wpływ na wrażenia użytkowników oraz sukces witryny w Internecie.

Pytanie 20

Jakie jest odstępstwo pomiędzy poleceniem DROP TABLE a TRUNCATE TABLE?

A. Obydwa polecenia usuwają tylko zawartość tabeli, ale tylko DROP TABLE może być przywrócone
B. Obydwa polecenia usuwają tabelę wraz z jej zawartością, jednak tylko TRUNCATE TABLE można cofnąć
C. DROP TABLE usuwa tabelę, a TRUNCATE TABLE eliminuje wszystkie dane, zostawiając pustą tabelę
D. DROP TABLE usuwa tabelę, natomiast TRUNCATE TABLE modyfikuje dane w niej spełniające określony warunek
Odpowiedź jest prawidłowa, ponieważ polecenie DROP TABLE całkowicie usuwa tabelę z bazy danych, łącznie z jej strukturą i danymi. Nie można jej później przywrócić, co oznacza, że wszelkie dane w niej zawarte zostaną na stałe utracone. Z kolei TRUNCATE TABLE jest poleceniem, które usuwa jedynie dane wewnątrz tabeli, ale sama tabela i jej struktura pozostają nienaruszone. Po wykonaniu TRUNCATE TABLE tabela staje się pusta, a jej definicja oraz wszystkie indeksy pozostają w bazie danych. Przykładowo, jeśli mamy tabelę 'Klienci' z danymi klientów, wykonanie TRUNCATE TABLE Klienci spowoduje, że tabela pozostanie, ale wszystkie rekordy zostaną usunięte. Wywołanie tych poleceń ma różne zastosowanie w praktyce; DROP TABLE można wykorzystać, gdy nie potrzebujemy tabeli, natomiast TRUNCATE TABLE jest przydatne, gdy chcemy szybko usunąć wszystkie dane z tabeli, zachowując jej strukturę dla przyszłych operacji.

Pytanie 21

W SQL warunek ten odpowiada warunkowi liczba >= 10 AND liczba <= 100?

A. liczba LIKE '10%'
B. liczba IN (10, 100)
C. liczba BETWEEN 10 AND 100
D. NOT (liczba < 10 AND liczba > 100)
Odpowiedź 'liczba BETWEEN 10 AND 100' jest prawidłowa, ponieważ odpowiada warunkowi, który sprawdza, czy wartość zmiennej 'liczba' mieści się w przedziale od 10 do 100, włączając oba końce. W SQL konstrukcja 'BETWEEN' jest preferowana, ponieważ jest bardziej czytelna i zrozumiała dla programistów, co sprzyja utrzymaniu kodu. Przykładowe zapytanie SQL używające tego warunku mogłoby wyglądać tak: 'SELECT * FROM tabela WHERE liczba BETWEEN 10 AND 100;'. Zastosowanie 'BETWEEN' unika potencjalnych błędów związanych z używaniem operatorów porównawczych i zapewnia, że obie granice przedziału są respektowane. W praktyce, korzystanie z 'BETWEEN' w zapytaniach SQL jest zgodne z dobrymi praktykami programowania, gdyż poprawia czytelność i ułatwia analizę kodu. Dodatkowo, warto zauważyć, że 'BETWEEN' działa również z datami, co czyni go uniwersalnym narzędziem w SQL.

Pytanie 22

Witryna internetowa powinna mieć zaprezentowaną strukturę bloków. Aby osiągnąć ten układ, należy przypisać sekcjom odpowiednie właściwości w następujący sposób:

Ilustracja do pytania
A. float tylko dla bloków: 2, 3, 4; clear dla bloku 5
B. float tylko dla bloku 2; clear dla bloków: 3, 4
C. float tylko dla bloków: 3, 4; clear dla bloku 5
D. float wyłącznie dla bloku 5; clear dla bloku 2
Żeby osiągnąć układ, który widzisz w pytaniu, musisz dobrze zrozumieć, jak działają właściwości CSS float i clear. Właściwość float umożliwia przesunięcie elementów w lewo lub w prawo w stosunku do ich kontenera oraz innych elementów. To jest przydatne do tworzenia układów kolumnowych. W tym przypadku bloki 2, 3 i 4 muszą być przesunięte w prawo, żeby ułożyły się obok siebie na poziomie. Blok 2 jest największy i pełni rolę ramki dla pozostałych bloków. Użycie float dla tych bloków daje oczekiwany efekt. Jednak żeby blok 5 znalazł się pod całą strukturą, musisz zastosować clear dla bloku 5. Dzięki temu clear, blok 5 nie będzie otoczony przez inne elementy z float i znajdzie się poniżej. Z mojego doświadczenia, praktyczne wykorzystanie float i clear jest świetne, bo pozwala na tworzenie responsywnych układów bez potrzeby sięgania po bardziej skomplikowane metody jak flexbox czy grid. Choć float nie jest już tak powszechnie stosowany w profesjonalnych projektach, dobrze jest znać jego działanie i ograniczenia, żeby lepiej rozumieć ewolucję CSS oraz móc pracować z kodem, który jeszcze wykorzystuje te klasyczne metody.

Pytanie 23

W języku HTML w celu określenia słów kluczowych dla danej strony, należy zastosować następujący zapis

A. <meta name="keywords" = "psy, koty, gryzonie">
B. <meta name="keywords" content="psy, koty, gryzonie">
C. <meta keywords="psy, koty, gryzonie">
D. <meta name="description" content="psy, koty, gryzonie">
Poprawna odpowiedź to <meta name="keywords" content="psy, koty, gryzonie">, ponieważ jest to zgodne z aktualnymi standardami HTML i poprawną składnią. Element <meta> jest używany do dostarczania metadanych, które nie są wyświetlane bezpośrednio na stronie, ale mają kluczowe znaczenie dla wyszukiwarek internetowych i innych aplikacji. Atrybut 'name' definiuje typ metadanych, a 'content' zawiera konkretne informacje, w tym przypadku słowa kluczowe, które mają być używane przez wyszukiwarki do indeksowania strony. Przykład zastosowania tego elementu w kodzie HTML wyglądałby następująco: <head><meta name="keywords" content="psy, koty, gryzonie"></head>. Warto zauważyć, że chociaż atrybut 'keywords' nie jest już tak istotny jak kiedyś ze względu na zmiany w algorytmach wyszukiwarek, to jego poprawne zdefiniowanie wciąż pokazuje dbałość o standardy HTML. Dobrą praktyką jest aktualizowanie i dostosowywanie metadanych do aktualnych trendów SEO, co może zwiększyć widoczność strony w wynikach wyszukiwania.

Pytanie 24

Określ rodzaj powiązania pomiędzy tabelami: Tabela1 oraz Tabela3

Ilustracja do pytania
A. Jeden do jednego
B. Jeden do wielu
C. Wiele do wielu
D. Wiele do jednego
Zrozumienie typów relacji w bazach danych jest kluczowym aspektem projektowania efektywnych i zrównoważonych systemów informatycznych. Jednym z najczęstszych błędów jest mylenie relacji wiele do wielu z innymi rodzajami relacji, takimi jak jeden do wielu lub jeden do jednego. Relacja jeden do wielu oznacza, że jeden rekord w jednej tabeli jest powiązany z wieloma rekordami w innej tabeli, co w przypadku Tabela1 i Tabela3 nie jest stosowne, ponieważ wymagałoby to bezpośredniego połączenia między tymi tabelami bez użycia tabeli pośredniej. Z kolei relacja jeden do jednego implikuje, że każdy rekord w jednej tabeli odpowiada dokładnie jednemu rekordowi w drugiej tabeli, co ogranicza elastyczność danych i nie pasuje do struktur gdzie występuje wiele powiązań, jak w przypadku szkół, gdzie wielu uczniów może mieć zajęcia z tym samym nauczycielem. Wreszcie, relacja wiele do jednego jest odwrotnością relacji jeden do wielu, gdzie wiele rekordów w jednej tabeli odpowiada jednemu rekordowi w drugiej tabeli, co również nie znajduje odzwierciedlenia w przedstawionym schemacie, jako że nie opisuje wzajemnych powiązań uczniów i nauczycieli. Zrozumienie i prawidłowe zastosowanie relacji wiele do wielu eliminuje redundancję danych i umożliwia efektywne przechowywanie oraz przetwarzanie informacji w systemach zarządzania bazami danych. Kluczem do sukcesu jest tutaj wykorzystanie tabel pośrednich do prawidłowego mapowania powiązań między tabelami, co jest standardem w dobrych praktykach projektowania baz danych.

Pytanie 25

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

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

Pytanie 26

Używając komendy BACKUP LOG w MS SQL Server, można

A. odczytać komunikaty generowane podczas tworzenia kopii
B. zrealizować pełną kopię zapasową
C. wykonać kopię zapasową dziennika transakcyjnego
D. zalogować się do kopii zapasowej
Wybór odpowiedzi dotyczący logowania się do kopii bezpieczeństwa wykazuje nieporozumienie dotyczące funkcji, jakie pełnią operacje backupu w MS SQL Server. Proces tworzenia kopii zapasowej dziennika transakcyjnego nie ma nic wspólnego z logowaniem się do wygenerowanej kopii; jest to osobny proces, który polega głównie na archiwizacji danych transakcyjnych. Kolejne stwierdzenie, że możliwe jest przeczytanie komunikatów wygenerowanych podczas tworzenia kopii, zakłada, że operacja backupu dostarcza interaktywnych danych na temat jej przebiegu, co nie jest zgodne z rzeczywistością. MS SQL Server zwykle loguje wyniki operacji do dziennika zdarzeń lub plików logów, ale nie jest to funkcjonalność, na którą można liczyć w codziennym użytkowaniu. Wreszcie, stwierdzenie, że BACKUP LOG pozwala na wykonanie pełnej kopii bezpieczeństwa, jest także błędne. BACKUP LOG dotyczy tylko dziennika transakcyjnego, podczas gdy pełna kopia bezpieczeństwa wykonana jest przy użyciu polecenia BACKUP DATABASE. W praktyce, wiele osób myli te dwa procesy, co prowadzi do nieefektywnego zarządzania danymi i ryzyka utraty informacji. Zrozumienie technicznych aspektów działania tych poleceń jest kluczowe dla prawidłowego administrowania bazami danych.

Pytanie 27

W kodzie HTML umieszczono grafikę na stronie internetowej. Jeśli plik rysunek.png nie zostanie znaleziony, przeglądarka

Ilustracja do pytania
A. zademonstruje błąd wyświetlania strony w miejscu grafiki
B. wyświetli tekst "pejzaż" w miejscu grafiki
C. nie pokaże strony internetowej
D. wstawi tekst "rysunek.png" zamiast grafiki
Kiedy używasz elementu <img> w HTML, warto ogarnąć, jak przeglądarka radzi sobie z jego atrybutami. Gdy obrazek pod danym adresem nie jest dostępny, przeglądarka nie wyświetli błędu dla całej strony. Strona dalej będzie działać normalnie, a przeglądarka po prostu nie wyświetli obrazka. W takim przypadku dostaniesz tekst z atrybutu alt jako zamiennik. Jeśli zapomniałbyś o tym atrybucie, to użytkownik nie dowie się, co tam miało być na tym obrazku. Może się wydawać, że przeglądarka wyświetli nazwę brakującego pliku graficznego, ale tak nie jest. Często wynika to z tego, że nie wszyscy znają zasady poprawnego projektowania stron, gdzie stosowanie tekstu alternatywnego to standardowa praktyka, która wspiera dostępność i użyteczność aplikacji webowych.

Pytanie 28

Do modyfikacji danych w bazie danych można wykorzystać

A. formularz
B. raport
C. kwerendę SELECT
D. filtrowanie
Formularz jest narzędziem, które umożliwia użytkownikom wprowadzanie i edytowanie danych w bazie danych w sposób przyjazny i intuicyjny. Przy użyciu formularzy można łatwo zdefiniować, jakie dane mają być wprowadzone, oraz w jakim formacie, co znacząco ogranicza ryzyko błędów. W praktyce, formularze są powszechnie wykorzystywane w aplikacjach webowych oraz systemach zarządzania danymi, takich jak systemy CRM czy ERP. Umożliwiają one także walidację danych przed ich zapisaniem w bazie, co jest ważnym krokiem w zapewnieniu integralności danych. Wykorzystanie formularzy w projektowaniu aplikacji jest zgodne z zasadami UX, które kładą nacisk na łatwość obsługi i wygodę użytkownika. Dodatkowo, standardy takie jak HTML5 oferują różnorodne elementy formularzy, które można łatwo integrować z backendem, co ułatwia przechwytywanie danych i ich późniejsze przetwarzanie.

Pytanie 29

To pytanie jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się lub utwórz konto aby zobaczyć pełną treść pytania.

Odpowiedzi dostępne po zalogowaniu.

Wyjaśnienie dostępne po zalogowaniu.


Pytanie 30

Jakiej opcji w edytorze grafiki rastrowej należy użyć, aby przygotować obraz do wyświetlenia na stronie w taki sposób, aby widoczna była tylko część znajdująca się w obrębie ramki?

Ilustracja do pytania
A. Perspektywa
B. Skalowanie
C. Odbicie
D. Kadrowanie
Odbicie polega na symetrycznym odwróceniu obrazu i choć jest użyteczne w niektórych kontekstach artystycznych, nie ma związku z wyborem fragmentu obrazu do wyświetlania. Perspektywa to technika zmieniająca głębię i kąt widzenia, co może być użyteczne w tworzeniu wrażenia trójwymiarowości, ale nie rozwiązuje problemu selekcji widocznych elementów. Skalowanie dotyczy zmiany rozmiaru obrazu, co jest przydatne przy dostosowywaniu grafiki do różnych rozdzielczości, ale nie zapewnia wycięcia określonego fragmentu. Często błędem jest myślenie, że skalowanie zastępuje kadrowanie, jednak zmniejsza ono cały obraz, nie pozwalając na skupienie się na wybranej części. Te nieporozumienia mogą wynikać z braku zrozumienia różnych narzędzi edycji, które mają swoje specyficzne zastosowania. Kadrowanie jest jedyną metodą, która pozwala na selektywne wycięcie i prezentację obszaru obrazu, co jest niezbędne przy projektowaniu elementów stron internetowych. Właściwe opanowanie różnych funkcji edytora grafiki jest kluczowe dla osiągnięcia profesjonalnych efektów wizualnych i optymalizacji projektu. Każda technika ma swoje unikalne zastosowania, a umiejętność ich odpowiedniego użycia wpływa na jakość końcowego produktu multimedialnego. Dlatego zrozumienie różnic między tymi funkcjami jest istotne dla skutecznej pracy z grafiką cyfrową.

Pytanie 31

Jaką relację w projekcie bazy danych powinno się ustalić pomiędzy tabelami przedstawionymi na rysunku, przy założeniu, że każdy klient sklepu internetowego złoży co najmniej dwa zamówienia?

Ilustracja do pytania
A. 1:n, gdzie 1 znajduje się po stronie Zamówienia, a wiele po stronie Klienta
B. 1:n, gdzie 1 jest po stronie Klienta, a wiele po stronie Zamówienia
C. 1:1
D. n:n
Relacja 1:n, gdzie 1 jest po stronie Klienta, a wiele po stronie Zamówienia, oznacza, że każdy klient może mieć wiele zamówień, ale każde zamówienie jest powiązane dokładnie z jednym klientem. To podejście odpowiada rzeczywistości większości sklepów internetowych, gdzie klienci wielokrotnie dokonują zamówień. Projektując bazę danych zgodnie z tą relacją, stosujemy klucz obcy w tabeli Zamówienia, który odwołuje się do klucza głównego w tabeli Klient. Jest to zgodne z dobrymi praktykami w projektowaniu baz danych, które zalecają minimalizowanie redundancji i zapewnienie integralności danych. Praktyczne zastosowanie tego modelu umożliwia łatwe śledzenie historii zamówień klientów, co jest kluczowe dla analizy sprzedaży i zarządzania relacjami z klientami. Relacja 1:n jest jedną z najczęściej stosowanych w modelowaniu danych, co potwierdza jej uniwersalność i skuteczność w różnych systemach informatycznych, od sklepów internetowych po systemy zarządzania zasobami ludzkimi.

Pytanie 32

Aby wykonać usunięcie wszystkich zapisów z tabeli, konieczne jest użycie kwerendy

A. INSERT INTO
B. TRUNCATE TABLE
C. CREATE COLUMN
D. ALTER COLUMN
Odpowiedź 'TRUNCATE TABLE' jest poprawna, ponieważ ta kwerenda służy do usuwania wszystkich rekordów z tabeli w bazach danych SQL. W przeciwieństwie do kwerendy 'DELETE', która usuwa rekordy jeden po drugim i może być stosowana z warunkiem, 'TRUNCATE TABLE' działa na poziomie strony i usuwa wszystkie wiersze za jednym razem, co czyni ją znacznie bardziej wydajną, szczególnie w przypadku dużych zbiorów danych. Gdy wykonujemy 'TRUNCATE TABLE', wszystkie dane są usuwane, a struktura tabeli pozostaje nienaruszona, co oznacza, że możemy natychmiast dodawać nowe dane do tej samej tabeli. Ponadto, użycie 'TRUNCATE TABLE' resetuje wszelkie generatory tożsamości (IDENTITY) w tabeli. W praktyce ta metoda jest często wykorzystywana w scenariuszach, gdzie potrzebne jest szybkie zresetowanie danych w tabeli, na przykład w aplikacjach testowych lub podczas czyszczenia danych w hurtowniach danych. Warto pamiętać, że 'TRUNCATE' nie można zastosować, jeśli tabela jest powiązana z innymi tabelami przez klucze obce, co jest zgodne z zasadami integralności referencyjnej w bazach danych.

Pytanie 33

GRANT SELECT, INSERT, UPDATE ON klienci TO anna; Zakładając, że użytkownik wcześniej nie posiadał żadnych uprawnień, to polecenie SQL przyzna użytkownikowi anna prawa jedynie do

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

Pytanie 34

Pierwszym etapem w procesie konwersji sygnału analogowego na cyfrowy jest

A. próbkowanie
B. kodowanie
C. filtracja
D. kwantyzacja
Filtrowanie i próbkowanie to dwa różne procesy, chociaż czasem można się pogubić. Filtrowanie polega na tym, że usuwamy niechciane częstotliwości z sygnału analogowego przed jego próbkowaniem. Jak nie zrobimy tego dobrze, sygnał może mieć różne zakłócenia, które później popsują wyniki próbkowania. Kodowanie to już inna bajka, bo tu przekształcamy wartości, które próbkowaliśmy, na format binarny. Kwantyzacja z kolei to proces wygładzania tych wartości do najbliższych punktów. Niektórzy mylą te procesy i myślą, że są takie same, a to błąd! One wszystkie są ważne i muszą zachodzić w odpowiedniej kolejności, żeby sygnał cyfrowy wiernie odwzorował sygnał analogowy. Musimy też pamiętać o standardach, jak Nyquist-Shannon, żeby wszystko działało jak należy.

Pytanie 35

Jakie polecenie w CSS wykorzystuje się do dołączenia zewnętrznego arkusza stylów?

A. open
B. require
C. include
D. import
W CSS, polecenie 'import' jest używane do załączenia zewnętrznego arkusza stylów. Pozwala na włączenie jednego arkusza CSS do innego, co umożliwia modularność i lepszą organizację stylów w projektach. Składnia polecenia 'import' jest następująca: @import url('ścieżka/do/arkusza.css');. Umożliwia to dynamiczne ładowanie stylów, co jest szczególnie przydatne w dużych projektach, gdzie może być konieczne podzielenie stylów na mniejsze, bardziej zarządzalne pliki. Warto również pamiętać, że polecenie powinno znajdować się na początku arkusza CSS, przed jakimikolwiek innymi regułami, aby mogło być prawidłowo przetworzone przez przeglądarki. Zgodnie z normami W3C, 'import' jest uznawane za standardową metodę organizacji stylów, jednak nadmierne jego użycie może wpłynąć na wydajność, ponieważ może prowadzić do zwiększenia liczby zapytań HTTP. W praktyce, najlepszym podejściem jest ograniczenie użycia 'import' do sytuacji, w których jest to rzeczywiście konieczne, a w miarę możliwości korzystanie z bezpośrednich linków do arkuszy stylów w sekcji <head> dokumentu HTML.

Pytanie 36

W obiektowym programowaniu w języku JavaScript zapis: this.zawod w podanym kodzie oznacza <table style="border: 2px solid black; border-collapse: collapse; margin-bottom: 20px;"> <tr> <td style="border: 1px solid black; padding: 10px; font-family: monospace;"> function Uczen(){<br> &nbsp;&nbsp;this.imie = '';<br> &nbsp;&nbsp;this.nazwisko = '';<br> &nbsp;&nbsp;this.technik = 'informatyk';<br> &nbsp;&nbsp;this.zawod = function() {<br> &nbsp;&nbsp;&nbsp;&nbsp;return this.technik;<br> &nbsp;&nbsp;};<br> } </td> </tr> </table>

A. metodę
B. konstruktor
C. właściwość
D. klasę
W programowaniu obiektowym w JavaScript słowo kluczowe this odnosi się do kontekstu bieżącego obiektu. W przedstawionym kodzie mamy do czynienia z funkcją konstrukcyjną Uczen, która jest używana do tworzenia nowych obiektów. Wewnątrz tej funkcji, this związuje się z nowo tworzonym obiektem. Metoda this.zawod, która jest zdefiniowana jako funkcja, odwołuje się do właściwości technik za pomocą słowa this i zwraca jej wartość. W JavaScript metody są funkcjami, które są przypisane do właściwości obiektu i które mogą być wywoływane jako część tego obiektu. Zapis this.zawod = function() { return this.technik; } definiuje metodę zawod w kontekście obiektu tworzonego przez konstruktor Uczen. Praktyczne zastosowanie tej metody umożliwia dostęp do wartości właściwości technik w sposób kontrolowany, co jest zgodne z dobrymi praktykami programowania obiektowego, gdzie enkapsulacja i zarządzanie dostępem do danych są kluczowymi elementami. Metody w JavaScript są podstawowym elementem umożliwiającym realizację zachowań obiektów dzięki czemu programy są bardziej modularne i łatwiejsze do utrzymania

Pytanie 37

W utworzonej tabeli pole należące do typu BLOB służy do składowania

A. danych logicznych takich jak true
B. danych binarnych o dużych rozmiarach, takich jak grafika
C. łańcuchów znaków o nieokreślonej długości
D. liczb całkowitych, które przekraczają zakres typu INT
Wydaje się, że odpowiedzi dotyczące danych logicznych, łańcuchów znaków czy liczb całkowitych nie są zgodne z przeznaczeniem pola BLOB. Dane logiczne, takie jak 'true' lub 'false', są zazwyczaj przechowywane w typach danych, takich jak BOOLEAN, które są zoptymalizowane do zarządzania wartościami binarnymi, ale nie są odpowiednie dla dużych obiektów binarnych. Z kolei łańcuchy znaków nieokreślonej długości są lepiej przechowywane w typach VARCHAR lub TEXT, które są zoptymalizowane do zarządzania tekstem, a nie danymi binarnymi. Liczby całkowite, które przekraczają zakres typu INT, powinny być przechowywane jako BIGINT, co jest bardziej odpowiednie do zarządzania dużymi liczbami całkowitymi, a nie BLOB. Właściwe zrozumienie typów danych i ich zastosowań jest kluczowe w projektowaniu efektywnych baz danych. Stosowanie niewłaściwych typów danych może prowadzić do nieefektywności, zwiększonego zużycia pamięci, a także problemów z wydajnością w aplikacjach korzystających z tych baz danych. Dlatego ważne jest, aby każdorazowo dobierać odpowiedni typ danych zgodnie z jego specyfiką i przeznaczeniem.

Pytanie 38

W języku PHP wykorzystano funkcję ```is_float()```. Które z poniższych wywołań tej funkcji zwróci rezultat true?

A. is_float(334)
B. is_float('3,34')
C. is_float(3.34)
D. is_float(NULL)
Funkcja is_float() w PHP to coś, co naprawdę warto znać, bo sprawdza, czy dana wartość jest liczbą zmiennoprzecinkową. Na przykład, jak wywołasz is_float(3.34), to dostaniesz true, bo 3.34 to faktycznie float. W programowaniu ważne jest, żeby poprawnie rozróżniać różne typy danych, bo inaczej mogą być problemy przy obliczeniach. W finansach czy modelowaniu danych, dobór typów danych to kluczowa sprawa, bo chcemy, żeby nasze obliczenia były precyzyjne. Warto wiedzieć, że w PHP liczby zmiennoprzecinkowe działają według standardu IEEE 754, co czasem może powodować zaskoczenia przy dużych albo bardzo małych liczbach. Dlatego lepiej używać funkcji is_float() do sprawdzania danych wprowadzanych przez użytkowników, żeby nie wkradały się błędy, które mogą popsuć nasze obliczenia.

Pytanie 39

Zastosowanie atrybutu NOT NULL dla kolumny jest konieczne w sytuacji, gdy

A. tworzymy definicję wszystkich pól tabeli
B. korzystamy z atrybutu DEFAULT
C. mamy do czynienia z kluczem podstawowym
D. definiujemy wszystkie pola o typie numerycznym
Nieprawidłowe odpowiedzi odzwierciedlają typowe błędne rozumienie działania atrybutu NOT NULL w kontekście tabel baz danych. W przypadku klucza podstawowego, jest to niezbędny warunek, aby zapewnić, że każdy wiersz w tabeli jest jednoznacznie identyfikowalny. Odpowiedzi sugerujące, że atrybut NOT NULL jest wymagany przy użyciu atrybutu DEFAULT, są mylące, ponieważ atrybut DEFAULT służy do ustalania wartości domyślnych dla kolumn, które mogą przyjmować wartość NULL. Użycie atrybutu DEFAULT wcale nie implikuje, że kolumna musi być oznaczona jako NOT NULL. Kolejna niepoprawna koncepcja dotyczy definicji wszystkich pól tabeli. Nie ma wymogu, aby wszystkie kolumny w tabeli były oznaczone jako NOT NULL; zależy to od specyficznych wymagań dotyczących danych w danej aplikacji. Ponadto, definicja wszystkich pól typu numerycznego jako NOT NULL również jest fałszywa, ponieważ pola numeryczne mogą być używane do reprezentacji wartości, które mogą być nieznane lub nieprzydzielone, co prowadziłoby do sytuacji, w której wartość NULL jest jak najbardziej uzasadniona. Zrozumienie tych różnic jest kluczowe dla efektywnego projektowania baz danych oraz zarządzania danymi w aplikacjach, co jest zgodne z najlepszymi praktykami w branży.

Pytanie 40

Na stronie internetowej znajduje się formularz, do którego trzeba zaprogramować następujące funkcje:<br>– walidacja: podczas wypełniania formularza na bieżąco jest kontrolowana poprawność danych<br>– przesyłanie danych: po wypełnieniu formularza i jego zatwierdzeniu informacje są przesyłane do bazy danych na serwerze<br>Aby zrealizować tę funkcjonalność w możliwie najprostszy sposób, należy zapisać

A. walidację i przesyłanie danych w języku PHP
B. walidację w skrypcie PHP, a przesyłanie danych w JavaScript
C. walidację i przesyłanie danych w języku JavaScript
D. walidację w języku JavaScript, a przesyłanie danych w skrypcie PHP
Wybór walidacji i przesyłania danych w języku PHP jest nieefektywny w kontekście nowoczesnych aplikacji webowych. Język PHP jest używany głównie po stronie serwera i nie jest przeznaczony do walidacji danych w czasie rzeczywistym. Oczekiwanie na przesłanie formularza do serwera, aby uzyskać informację o błędach, prowadzi do nieprzyjemnych doświadczeń użytkowników. Użytkownik musi czekać na odpowiedź serwera, co może być czasochłonne i frustrujące. Ponadto, walidacja po stronie serwera może sprawić, że użytkownik straci wprowadzone dane, jeśli wystąpią błędy. To podejście nie tylko obniża użyteczność formularzy, ale także może prowadzić do większych obciążeń serwera, ponieważ każde wprowadzenie danych wymaga zaangażowania zasobów serwerowych. Implementując walidację w JavaScript, można natychmiast informować użytkownika o niewłaściwych danych, co nie tylko zaspokaja potrzeby użytkownika, ale także zmniejsza ilość niepotrzebnych zapytań do serwera. Ostatecznie, korzystanie z jednego języka do obu zadań jest sprzeczne z zasadą separacji obowiązków, co jest kluczowe w inżynierii oprogramowania. Zamiast tego, prawidłową praktyką jest wykorzystanie JavaScript do walidacji danych przed ich przesłaniem, co pozwala na znacznie bardziej responsywne i przyjazne dla użytkownika doświadczenia.