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: 7 maja 2026 22:14
  • Data zakończenia: 7 maja 2026 22:43

Egzamin zdany!

Wynik: 32/40 punktów (80,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Narzędziem do zarządzania bazą danych, które jest zintegrowane w pakiecie XAMPP, jest

A. SQLite
B. pgAdmin
C. phpMyAdmin
D. MySQL Workbench
phpMyAdmin jest popularnym narzędziem wbudowanym w pakiet XAMPP, które służy do zarządzania bazą danych MySQL. Umożliwia użytkownikom łatwe wykonywanie operacji takich jak tworzenie, edytowanie i usuwanie baz danych oraz tabel, a także zarządzanie użytkownikami i uprawnieniami. Interfejs phpMyAdmin jest oparty na przeglądarkach internetowych, co sprawia, że jego obsługa jest intuicyjna nawet dla osób bez zaawansowanej wiedzy technicznej. Przykładowo, można szybko importować lub eksportować dane w różnych formatach, takich jak SQL, CSV czy XML, co jest niezwykle przydatne podczas migracji danych między różnymi środowiskami. Standardy dobrych praktyk przewidują korzystanie z narzędzi takich jak phpMyAdmin w celu minimalizacji ryzyka błędów manualnych, a także w celu zwiększenia efektywności pracy z bazami danych. Dzięki phpMyAdmin, użytkownicy mogą również łatwo monitorować wydajność bazy danych i optymalizować zapytania, co jest kluczowe dla utrzymania wysokiej jakości aplikacji webowych.

Pytanie 2

W skrypcie JavaScript operatory: ||, && zaliczane są do kategorii operatorów

A. przypisania
B. bitowych
C. logicznymi
D. arytmetycznych
Odpowiedź 'logicznym' jest poprawna, ponieważ w języku JavaScript operatory || (logiczne OR) i && (logiczne AND) są klasyfikowane jako operatory logiczne. Te operatory służą do wykonywania operacji na wartościach logicznych (prawda/fałsz). Użycie operatora && powoduje, że wyrażenie zwraca prawdę tylko wtedy, gdy oba operandy są prawdziwe. Z kolei operator || zwraca prawdę, jeśli przynajmniej jeden operand jest prawdziwy. Przykładem ich zastosowania może być warunkowe wykonywanie kodu, np. w instrukcjach if, gdzie możemy sprawdzić, czy spełnione są określone warunki. Standardowe praktyki programistyczne zalecają używanie tych operatorów do efektywnego zarządzania logiką programów, co zwiększa ich czytelność i umożliwia łatwiejszą konserwację. Ważne jest także zrozumienie, że operatory te wykonują krótką ocenę (short-circuit evaluation), co oznacza, że ​​nie obliczają drugiego operandu, jeśli pierwszy już decyduje o wyniku. Dzięki tym właściwościom, operatory logiczne są kluczowym elementem wszelkich aplikacji programistycznych, które potrzebują podejmować decyzje w oparciu o różne warunki.

Pytanie 3

Funkcja pg_connect w języku PHP służy do nawiązania połączenia z bazą danych

A. PostgreSQL
B. mySQL
C. MS ACCESS
D. MS SQL
Polecenie pg_connect w języku PHP jest dedykowane do nawiązywania połączeń z bazami danych PostgreSQL, które są relacyjnymi bazami danych znanymi z dużej wydajności, elastyczności oraz wsparcia dla zaawansowanych funkcji, takich jak transakcje, procedury składowane czy różnorodne typy danych. Użycie pg_connect pozwala programistom na łatwe integrowanie aplikacji PHP z PostgreSQL, co jest kluczowe w przypadku aplikacji wymagających solidnego zarządzania danymi. Przykładowo, aby nawiązać połączenie z bazą danych, można użyć kodu: $conn = pg_connect("host=localhost dbname=mydb user=myuser password=mypassword");. Taki sposób połączenia umożliwia nie tylko dostęp do danych, ale też wykonanie zapytań SQL i zarządzanie wynikami. Dobrą praktyką jest zawsze zamykanie połączeń oraz obsługa potencjalnych błędów, co przyczynia się do stabilności aplikacji. Zgodnie z wytycznymi dotyczącymi bezpieczeństwa, szczególnie w kontekście aplikacji webowych, ważne jest również stosowanie technik zabezpieczeń, takich jak przygotowane zapytania, aby zapobiec atakom typu SQL injection.

Pytanie 4

Instrukcję for można zastąpić inną instrukcją

A. continue
B. case
C. switch
D. while
Instrukcja `while` jest poprawnym zamiennikiem dla instrukcji `for` w kontekście iteracji, ponieważ obie służą do powtarzania bloków kodu, dopóki spełniony jest określony warunek. Główna różnica polega na sposobie deklaracji warunków iteracji. W instrukcji `for` często używamy jej do iteracji po znanym zakresie, np. od 0 do n, co jest typowe w wielu zastosowaniach, takich jak przetwarzanie elementów tablicy. Natomiast `while` idealnie nadaje się do sytuacji, gdzie liczba iteracji jest nieznana na początku i zależy od dynamicznie ocenianych warunków. Przykładem może być przetwarzanie danych, gdzie pętla `while` kontynuuje działanie, aż do momentu, gdy nie napotka na wartość końcową, co jest szczególnie przydatne w algorytmach przetwarzania strumieni danych. Ponadto, od strony wydajnościowej, wybór między `for` a `while` powinien być uzależniony od contextu, w jakim są używane. Dobrą praktyką jest dopasowanie rodzaju pętli do specyfiki problemu, co zwiększa czytelność i efektywność kodu.

Pytanie 5

Jaką właściwość CSS należy zastosować, aby ustawić wewnętrzne marginesy dla danego elementu?

A. hight
B. margin
C. width
D. padding
Właściwość CSS, którą należy zastosować do definiowania marginesów wewnętrznych elementu, to padding. Padding określa przestrzeń wewnętrzną między zawartością elementu a jego granicami. Przy pomocy paddingu możemy dostosować, jak dużo przestrzeni chcemy mieć wokół tekstu, obrazów czy innych elementów wewnątrz danego kontenera. Na przykład, zastosowanie padding: 20px; w CSS sprawi, że wewnętrzny margines będzie wynosił 20 pikseli od wszystkich stron wokół zawartości. Na poziomie praktycznym, padding jest niezwykle użyteczny w projektowaniu responsywnych interfejsów użytkownika, ponieważ pozwala na lepsze dostosowanie elementów do różnych rozmiarów ekranów. Dobrą praktyką jest używanie paddingu w połączeniu z innymi właściwościami, takimi jak margin, aby uzyskać pełną kontrolę nad położeniem i rozkładem elementów na stronie. Warto także pamiętać, że w CSS możemy ustalać padding oddzielnie dla górnej, prawej, dolnej i lewej strony, co daje jeszcze większą elastyczność w projektowaniu.

Pytanie 6

Grafika, która ma być pokazana na stronie, powinna mieć transparentne tło. Podaj format pliku graficznego, w którym należy go zapisać.

A. BMP
B. JPEG
C. PNG
D. CDR
Format PNG (Portable Network Graphics) jest idealnym rozwiązaniem dla obrazów z przezroczystym tłem, ponieważ obsługuje kanał alpha, który umożliwia definiowanie przezroczystości poszczególnych pikseli. Dzięki temu, gdy obraz PNG jest umieszczany na różnym tle, zachowuje naturalny wygląd i nie wymaga dodatkowego dostosowywania, co jest szczególnie ważne w projektach graficznych, które wymagają elastyczności w prezentacji. Przykładowe zastosowania PNG obejmują ikony, logo oraz wszelkie grafiki, które muszą być nałożone na inne elementy wizualne bez widocznych krawędzi czy tła. W branży grafiki komputerowej oraz web designu, PNG stał się standardem dla materiałów wymagających wysokiej jakości obrazu z zachowaniem przezroczystości. Dobrą praktyką jest również stosowanie PNG w przypadku grafik, które zawierają tekst, ponieważ format ten nie wprowadza strat jakości, co może mieć miejsce w przypadku innych formatów kompresji. Warto również zaznaczyć, że PNG nie traci jakości przy wielokrotnym zapisywaniu, co czyni go preferowanym wyborem tam, gdzie jakość jest kluczowa.

Pytanie 7

Ile razy zostanie wykonana pętla w zamieszczonym skrypcie PHP?

$a = $x = 0;
do{
    $a++;
    $x = $x + $a;
}while($x != 21);
A. 6
B. 5
C. 0
D. 7
Pętla do-while w PHP działa tak, że jej ciało jest zawsze wykonywane przynajmniej raz, a warunek sprawdzany jest na końcu. W przedstawionym skrypcie zmienne $a i $x są inicjalizowane wartością 0. Wewnątrz pętli zmienna $a jest inkrementowana o 1 w każdej iteracji, a $x zwiększane jest o wartość $a. Pętla powtarza się, dopóki zmienna $x nie osiągnie wartości 21. Aby zrozumieć, ile razy pętla się wykona, należy prześledzić zmiany wartości zmiennych. W pierwszej iteracji $a staje się 1 i $x wynosi 1. W kolejnych iteracjach $a przyjmuje wartości 2 3 4 5 6 a $x odpowiednio 3 6 10 15 21. Gdy $x osiąga 21 pętla kończy działanie. Oznacza to że pętla wykonuje się dokładnie 6 razy aż $x osiągnie wartość 21 co zgodnie z treścią pytania jest poprawną odpowiedzią. Takie podejście pozwala na efektywne kontrolowanie liczby iteracji przy dynamicznie zmieniających się warunkach a zasady działania pętli do-while są kluczowe w sytuacjach gdy wymagane jest przynajmniej jedno wykonanie bloku kodu co odróżnia ją od pętli while.

Pytanie 8

W programowaniu zmienna typu integer jest wykorzystywana do przechowywania

A. znaku
B. liczby rzeczywistej
C. liczby całkowitej
D. wartości logicznej
Zmienna typu integer w programowaniu to taki typ, który służy do przechowywania liczb całkowitych. Oznacza to, że nie ma tam żadnych przecinków ani części dziesiętnych, tylko całe liczby. W wielu językach, jak C, C++, czy Python, typ integer jest naprawdę podstawowym narzędziem. Warto zaznaczyć, że te liczby mogą mieć różny zakres w zależności od języka i platformy, ale najczęściej w systemach 32-bitowych zmieszczą się w granicach od -2,147,483,648 do 2,147,483,647. Co więcej, operacje na zmiennych typu integer są zazwyczaj szybsze niż na float czy double, co w praktyce oznacza, że lepiej nadają się do obliczeń, zwłaszcza tych prostych. Na przykład, możemy stworzyć program, który zlicza wszystkie liczby całkowite w jakiejś liście. Warto też wiedzieć, że w standardzie ISO C99 mówimy, że typ int powinien mieć przynajmniej 16 bitów, co pokazuje, jak ważny jest ten typ w programowaniu. Dlatego znajomość zmiennych typu integer jest naprawdę kluczowa dla każdego programisty, który chce pisać szybkie i efektywne aplikacje.

Pytanie 9

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

A. Kompilator
B. Środowisko programistyczne
C. Edytor kodu źródłowego
D. Debugger
Kompilator to program komputerowy, który przekształca kod źródłowy, napisany w konkretnym języku programowania, na język maszynowy, czyli zrozumiały dla procesora komputera. Proces ten polega na analizie kodu źródłowego, optymalizacji go oraz generowaniu odpowiedniego kodu maszynowego, który może być bezpośrednio wykonany przez komputer. Kompilatory są kluczowymi narzędziami w tworzeniu oprogramowania, ponieważ umożliwiają programistom pisanie kodu w bardziej zrozumiałych i wysokopoziomowych językach, takich jak C++, Java czy Python, które zostają następnie przekształcone w wydajny kod maszynowy. Przykłady popularnych kompilatorów to GCC dla języka C/C++, javac dla Javy oraz Clang, który jest nowoczesnym kompilatorem dla C, C++ i Objective-C. Warto również wspomnieć o standardach, takich jak ANSI C, które definiują zasady pisania kodu w języku C, a kompilatory implementują te zasady, aby zapewnić zgodność i przenośność kodu między różnymi systemami operacyjnymi i platformami sprzętowymi. Kompilatory mogą również oferować dodatkowe funkcje, takie jak analiza statyczna kodu czy generowanie dokumentacji, co czyni je nieocenionym narzędziem w każdym nowoczesnym środowisku programistycznym.

Pytanie 10

W edytorze grafiki wektorowej stworzono przedstawiony kształt, który powstał z dwóch figur: trójkąta i koła. W celu stworzenia tego kształtu, po narysowaniu figur i odpowiednim ich ustawieniu, należy skorzystać z funkcji

Ilustracja do pytania
A. różnicy.
B. sumy.
C. wykluczenia.
D. rozdzielenia.
Wybór odpowiedzi 'Wykluczenia', 'Różnicy' lub 'Rozdzielenia' jest błędny w tym kontekście. Funkcje te są używane w innych celach w edytorach grafiki wektorowej. 'Różnica' jest używana do odejmowania jednej figury od innej, co nie jest potrzebne do tworzenia kształtu pokazanego na zdjęciu. 'Rozdzielenie' służy do rozdzielania złożonych kształtów na prostsze elementy, co także nie jest potrzebne w tym przypadku. 'Wykluczenia' używa się do tworzenia kształtów z wykluczeniem wspólnych obszarów. Często błędem jest mylenie tych funkcji i niewłaściwe ich stosowanie, co prowadzi do niespodziewanych wyników. Zasada jest taka, że każda z tych funkcji ma swoje specyficzne zastosowanie, i ważne jest zrozumienie tego, zanim zaczniemy pracować z edytorem grafiki wektorowej. W tym przypadku, aby uzyskać pokazany kształt, powinniśmy skorzystać z funkcji 'Sumy'.

Pytanie 11

W C++ stworzono zmienną: char zm1;. Jak można przypisać do niej wartość, zgodnie ze składnią tego języka?

A. zm1[2] = 32
B. zm1 = 'w'
C. zm1 == 0x35
D. zm1 = "wiadro"
Odpowiedź 'zm1 = 'w';' jest prawidłowa, ponieważ w języku C++ zmienna typu char służy do przechowywania pojedynczego znaku. Przypisując wartość 'w', używamy pojedynczych apostrofów, co jest zgodne z syntaktyką C++. Przykładowo, możemy wykorzystać tę zmienną w programie do przechowywania litery, która następnie będzie mogła być użyta w różnych operacjach, takich jak wyświetlenie na ekranie czy do porównań. W dobrych praktykach programowania ważne jest, aby zmienne były odpowiednio zdefiniowane i przypisywane zgodnie z ich typami. Użycie char jest zalecane w sytuacjach, gdy potrzebujemy efektywnego przechowywania znaków, co jest kluczowe w optymalizacji pamięci. Innym przykładem może być tworzenie prostych gier tekstowych, w których każdy znak ma swoje znaczenie i wpływa na logikę gry. Oprócz tego, warto wspomnieć, że w C++ istnieją różne typy danych do przechowywania tekstów, jak string, ale dla pojedynczych znaków char jest najodpowiedniejszym typem.

Pytanie 12

Który typ danych jest przeznaczony do zapisywania daty urodzenia uczniów w bazie danych szkoły?

A. TIME
B. ENUM
C. BLOB
D. DATE
Poprawnie wskazany został typ DATE, który w relacyjnych bazach danych (np. MySQL, PostgreSQL, SQL Server) jest standardowym typem do przechowywania samych dat, bez informacji o godzinie. To dokładnie to, czego potrzebujemy przy dacie urodzenia ucznia: interesuje nas dzień, miesiąc i rok, a nie konkretna godzina czy sekunda. Typ DATE przechowuje wartość w ustalonym formacie (najczęściej 'YYYY-MM-DD'), dzięki czemu baza może poprawnie sortować rekordy, filtrować je w zapytaniach SQL (np. WHERE data_urodzenia BETWEEN '2008-01-01' AND '2010-12-31') oraz wykonywać operacje na datach, jak obliczanie wieku czy czasu, jaki minął od urodzenia. Z mojego doświadczenia używanie typu DATE jest też dużo wygodniejsze przy raportach i statystykach, np. liczenie ilu uczniów urodziło się w danym roku szkolnym, w danym miesiącu itp. Dodatkowo jest to zgodne z dobrymi praktykami projektowania baz danych: dla dat używamy typów datowych, a nie tekstu czy typów binarnych. Dzięki temu mechanizmy bazy potrafią walidować poprawność danych (np. nie pozwolą zapisać 31.02) oraz optymalnie korzystać z indeksów na kolumnach typu DATE. W profesjonalnych systemach szkolnych czy kadrowych przy danych takich jak data urodzenia, data zatrudnienia, data wystawienia świadectwa zawsze używa się właśnie typów pokrewnych DATE (DATE, DATETIME, czasem TIMESTAMP, ale do urodzin raczej zwykły DATE). To też ułatwia współpracę z aplikacjami webowymi w PHP czy JavaScript, bo większość frameworków ma gotowe mapowanie typu DATE na odpowiednie klasy lub struktury daty w kodzie. Ogólnie: prosty, czytelny i zgodny ze standardem wybór, dokładnie taki, jaki powinien się pojawić w dobrze zaprojektowanej bazie danych szkoły.

Pytanie 13

Jaką wartość wyświetli standardowe wyjście dla podanego w ramce fragmentu kodu w języku C++?

Ilustracja do pytania
A. 3
B. 2
C. 32
D. 0
W analizowanym fragmencie programu funkcja obliczenia modyfikuje swój argument x poprzez operację x %= 3 co oznacza że oblicza resztę z dzielenia x przez 3. W przypadku x równego 32 reszta z dzielenia przez 3 wynosi 2. Następnie instrukcja x++ zwiększa wartość x o 1 co daje wynik końcowy równy 3. Wiedza o operatorach arytmetycznych takich jak % oraz o inkrementacji ++ jest kluczowa przy programowaniu w C++. Operator % jest powszechnie używany do określania parzystości liczb lub cyklicznych wzorców w algorytmach. Zrozumienie jak te operacje wpływają na przepływ danych w programie pozwala unikać błędów logicznych i poprawiać wydajność kodu. Inkrementacja jest również istotna w wielu strukturach sterujących takich jak pętle co czyni ją niezbędnym elementem w rozwiązywaniu problemów algorytmicznych. Tego typu operacje są fundamentem w standardach programowania ponieważ pozwalają na precyzyjne kontrolowanie wartości zmiennych w trakcie wykonywania programów. Warto ćwiczyć te koncepcje aby w pełni wykorzystać potencjał języka C++ szczególnie w kontekście optymalizacji i wydajności aplikacji.

Pytanie 14

W języku CSS atrybut font-size przyjmuje, zgodnie z nazwami, wartości

A. jedynie small, smaller, large, larger
B. wyłącznie small, medium, large
C. z zestawu xx-small, x-small, medium, large, x-large, xx-large
D. zaledwie big oraz small
Właściwość font-size w CSS pozwala na określenie rozmiaru czcionki za pomocą różnych wartości, w tym predefiniowanych słów kluczowych, które umożliwiają łatwe dostosowanie wielkości tekstu w dokumentach HTML. Oprócz typowych wartości takich jak small, medium i large, CSS oferuje również bardziej szczegółowe opcje, takie jak xx-small, x-small, x-large oraz xx-large. Dzięki temu projektanci mogą lepiej dopasować rozmiar tekstu do kontekstu wizualnego strony. Użycie tych wartości pozwala na uniknięcie problemów z uniwersalnością, gdyż są one zrozumiałe i zgodne z różnymi rozdzielczościami ekranów. Na przykład, podczas projektowania responsywnej witryny, zastosowanie wartości xx-large dla nagłówków oraz x-small dla przypisów skutecznie poprawia czytelność i estetykę. Zgodnie z najlepszymi praktykami, warto również rozważyć użycie jednostek względnych, takich jak em czy rem, co pozwala na jeszcze większą elastyczność w dostosowywaniu rozmiarów tekstu do preferencji użytkownika oraz rozmiaru ekranu.

Pytanie 15

Jakie są różnice między poleceniami DROP TABLE a TRUNCATE TABLE?

A. Oba polecenia usuwają tylko zawartość tabeli, lecz tylko DROP TABLE może być cofnięte
B. Obydwa polecenia usuwają tabelę wraz z jej zawartością, jednak tylko TRUNCATE TABLE może być cofnięte
C. DROP TABLE kasuje tabelę, natomiast TRUNCATE TABLE zmienia dane w niej, które spełniają określony warunek
D. DROP TABLE kasuje tabelę, a TRUNCATE TABLE usuwa wszystkie dane, pozostawiając tabelę pustą
Odpowiedź jest prawidłowa, ponieważ polecenie DROP TABLE w SQL służy do całkowitego usunięcia tabeli z bazy danych, co oznacza, że zarówno struktura tabeli, jak i jej dane zostaną trwale usunięte. Natomiast TRUNCATE TABLE jest używane do usuwania wszystkich wierszy z tabeli, ale sama tabela pozostaje w bazie danych. Po użyciu TRUNCATE TABLE struktura tabeli jest nienaruszona, co umożliwia jej dalsze wykorzystanie. Przykładowo, jeżeli mamy tabelę 'klienci' z danymi klientów, użycie DROP TABLE spowoduje utratę zarówno samej tabeli, jak i wszystkich danych. W przypadku TRUNCATE TABLE, tabela 'klienci' będzie nadal istniała, ale nie będzie zawierała żadnych rekordów. W praktycznych zastosowaniach, TRUNCATE TABLE jest bardziej efektywne pod względem wydajności, szczególnie przy dużych zbiorach danych, ponieważ działa szybciej niż DELETE bez warunku, i nie zapisuje informacji o usuniętych wierszach w dzienniku transakcji. Zgodnie z dobrymi praktykami, używaj DROP TABLE, gdy jesteś pewny, że tabela nie jest już potrzebna, a TRUNCATE TABLE, gdy chcesz szybko opróżnić tabelę, pozostawiając jej strukturę.

Pytanie 16

Funkcję session_start() w PHP należy zastosować przy realizacji

A. ładowania danych z zewnętrznych plików
B. przetwarzania formularza
C. jakiejkolwiek strony internetowej, która obsługuje cookies
D. wielostronicowej strony, która wymaga dostępu do danych podczas przechodzenia pomiędzy stronami
Funkcja session_start() w języku PHP jest kluczowym elementem przy tworzeniu wielostronicowej witryny, która wymaga przechowywania i dostępu do danych pomiędzy różnymi stronami. Ta funkcja inicjalizuje sesję, co pozwala na przechowywanie danych użytkownika w zmiennych sesyjnych, które są dostępne na wszystkich stronach witryny. Przykładem zastosowania może być koszyk zakupowy w sklepie internetowym – użytkownik dodaje przedmioty do koszyka na jednej stronie, a na innej stronie (np. stronie podsumowania zamówienia) może z łatwością zobaczyć swoje wybory. Z perspektywy dobrych praktyk, użycie sesji zwiększa bezpieczeństwo danych, ponieważ nie są one przechowywane w cookies ani jako parametry URL, co zmniejsza ryzyko ich ujawnienia. Ponadto, sesje ułatwiają zarządzanie autoryzacją, ponieważ można łatwo sprawdzić, czy użytkownik jest zalogowany na dowolnej stronie witryny, co jest niezbędne w przypadku aplikacji wymagających logowania. Dlatego właściwe zastosowanie session_start() jest kluczowe dla interaktywności i użytkowalności rozbudowanych aplikacji webowych.

Pytanie 17

Jakie zadanie wykonuje funkcja COUNT w języku SQL?

A. zliczanie rekordów uzyskanych z kwerendy
B. obliczenie wartości bezwzględnej w polu liczbowym
C. liczenie znaków w polu tekstowym
D. wyliczenie średniej wartości w danej kolumnie
Funkcja COUNT w języku SQL jest jedną z najbardziej fundamentalnych funkcji agregujących, która służy do zliczania liczby rekordów w zestawie danych. Użycie tej funkcji jest kluczowe w kontekście analizy danych, ponieważ pozwala na szybkie uzyskanie informacji o ilości danych, które spełniają określone kryteria. Przykład użycia COUNT może wyglądać następująco: SELECT COUNT(*) FROM klienci WHERE kraj = 'Polska'; Taki zapytanie zwróci liczbę wszystkich klientów z Polski. Funkcja COUNT jest również używana w połączeniu z klauzulą GROUP BY, co umożliwia zliczanie rekordów w podgrupach. Na przykład, SELECT kraj, COUNT(*) FROM klienci GROUP BY kraj; zliczy wszystkich klientów w każdym kraju. Warto podkreślić, że COUNT różni się od innych funkcji agregujących, takich jak AVG czy SUM, które obliczają wartości na podstawie danych, a nie zliczają ich. Funkcja COUNT jest zgodna z normami SQL-92 i jest wspierana przez wszystkie popularne systemy zarządzania bazami danych, co czyni ją uniwersalnym narzędziem w pracy z danymi.

Pytanie 18

Jaką wartość zwróci zapytanie z ramki wykonane na pokazanej tabeli? ```SELECT COUNT(DISTINCT wykonawca) FROM muzyka;```

Ilustracja do pytania
A. 0
B. 3
C. 4
D. 1
Przy analizie zapytania SQL SELECT COUNTDISTINCT wykonawca) FROM muzyka; kluczowe jest zrozumienie funkcji COUNTDISTINCT. Ta funkcja zlicza unikalne wartości w określonej kolumnie co oznacza że nie uwzględnia powtórzeń. W analizowanym przypadku jesteśmy zainteresowani unikalnymi wykonawcami. Tabela zawiera czterech wykonawców ale Czesław Niemen pojawia się dwukrotnie co prowadzi do trzech unikalnych wpisów: Czesław Niemen Stan Borys i Mikołaj Czechowski. Częstym błędem jest nieuwzględnianie powtórzeń co prowadzi do błędnego założenia że liczba unikalnych wpisów jest równa ogólnej liczbie rekordów. Innym powszechnym nieporozumieniem jest różnica między funkcją COUNT a COUNTDISTINCT. Funkcja COUNT zlicza wszystkie wystąpienia w kolumnie niezależnie od powtórzeń co w tym przypadku dałoby wynik 4. Zrozumienie tych subtelności jest kluczowe dla poprawnego analizowania danych i tworzenia precyzyjnych raportów. Poprawne użycie COUNTDISTINCT odzwierciedla również dobrą praktykę w optymalizacji zapytań SQL szczególnie w kontekście dużych zbiorów danych gdzie wydajność jest kluczowa.

Pytanie 19

W PHP w konstrukcji switch konieczne jest użycie

A. instrukcji default
B. konstrukcji switch(wyrażenie)
C. instrukcji break po każdym przypadku case
D. przynajmniej dwóch instrukcji case
Poprawna odpowiedź to konstrukcja switch(wyrażenie), ponieważ jest to podstawowy element składniowy w języku PHP. Instrukcja switch jest używana do porównywania wartości wyrażenia z różnymi wartościami case. W przypadku znalezienia dopasowania, wykonywana jest odpowiednia sekcja kodu. Ważne jest, aby zrozumieć, że samo utworzenie konstrukcji switch bez podania wyrażenia nie ma sensu, ponieważ nie istnieje wartość, którą można porównać. Przykład zastosowania konstrukcji switch może wyglądać następująco: switch($day) { case 'Monday': echo 'Poniedziałek'; break; case 'Tuesday': echo 'Wtorek'; break; default: echo 'Inny dzień'; }. Użycie instrukcji default jest opcjonalne, a także nie jest konieczne posiadanie przynajmniej dwóch case, aby konstrukcja była poprawna. Zastosowanie switch jest często bardziej czytelne i zorganizowane niż wiele zagnieżdżonych instrukcji if-else, co jest zgodne z najlepszymi praktykami programistycznymi, poprawiającymi zarówno zrozumiałość, jak i konserwację kodu.

Pytanie 20

Wykonanie następującego polecenia PHP umożliwia:

$zapytanie = mysqli_query($db, "UPDATE ...");
A. dodanie nowych danych do bazy
B. pobranie danych z bazy
C. zmianę danych w bazie
D. zmianę struktury bazy
Polecenie PHP mysqli_query z użyciem instrukcji SQL UPDATE służy do modyfikacji danych w bazie danych. Funkcja mysqli_query umożliwia wykonywanie zapytań SQL na połączeniu z bazą danych reprezentowanym przez zmienną $db. Instrukcja UPDATE jest stosowana do aktualizacji istniejących rekordów w tabeli w bazie danych. Przykładowo, jeśli chcesz zaktualizować pole nazwa w tabeli użytkownicy, możesz użyć polecenia UPDATE users SET name='NowaNazwa' WHERE id=1. To podejście umożliwia dynamiczne zarządzanie danymi, co jest kluczowe w aplikacjach internetowych wymagających bieżącej aktualizacji informacji. W praktyce należy pamiętać o dobrych praktykach, takich jak walidacja danych wejściowych i zabezpieczenie przed atakami SQL injection, np. poprzez stosowanie przygotowanych zapytań. Aktualizowanie danych w bazie to jedna z podstawowych operacji CRUD (Create Read Update Delete), które są fundamentem zarządzania danymi w większości aplikacji obsługujących bazy danych. Poprawne użycie tej funkcji wymaga zrozumienia struktury SQL i znajomości specyfiki używanego systemu zarządzania bazą danych.

Pytanie 21

Który z języków skryptowych nie wykonuje operacji po stronie serwera?

A. PHP
B. CSS
C. Perl
D. ASP
ASP, PHP i Perl to języki skryptowe, które są używane po stronie serwera, co oznacza, że ich kod jest wykonywany na serwerze przed dostarczeniem strony do użytkownika. ASP (Active Server Pages) to technologia opracowana przez Microsoft, która umożliwia tworzenie dynamicznych stron internetowych poprzez integrację z bazami danych oraz obsługę skryptów. PHP (Hypertext Preprocessor) jest jednym z najpopularniejszych języków skryptowych, który również działa po stronie serwera, umożliwiając tworzenie stron internetowych, które mogą generować HTML w oparciu o dane z różnych źródeł, takich jak bazy danych MySQL. Perl, pierwotnie stworzony do przetwarzania tekstu, stał się również wszechstronnym językiem skryptowym do aplikacji webowych, obsługując różnorodne zadania serwerowe. Te języki są integralną częścią nowoczesnego rozwoju aplikacji webowych i pozwalają na obsługę logiki biznesowej, interakcji z użytkownikami oraz komunikacji z bazami danych, co jest niezbędne w tworzeniu dynamicznych i interaktywnych aplikacji internetowych.

Pytanie 22

Po zrealizowaniu przedstawionego fragmentu kodu w języku C/C++ do zmiennej o nazwie zmienna2 przypisany zostanie ```int zmienna1 = 158; int *zmienna2 = &zmienna1;```

A. przypisana ta sama wartość, która jest przechowywana w zmienna1
B. przypisana liczba w kodzie binarnym odpowiadająca wartości, która jest przechowywana w zmienna1
C. przypisany adres zmiennej o nazwie zmienna1
D. przypisana zamieniona na łańcuch wartość, która jest przechowywana w zmienna1
W odpowiedzi 1 stwierdzono, że zmiennej zmienna2 zostanie przypisany adres zmiennej zmienna1. To stwierdzenie jest poprawne, ponieważ w kodzie C/C++ operator '&' jest używany do uzyskania adresu zmiennej. W prezentowanym fragmencie kodu zmienna2 jest wskaźnikiem, który przechowuje adres zmiennej zmienna1, co oznacza, że zmienna2 wskazuje na lokalizację w pamięci, w której przechowywana jest wartość zmiennej zmienna1. Takie podejście jest kluczowe w programowaniu niskopoziomowym, gdzie manipulacja adresami pamięci jest często wykorzystywana do efektywnego zarządzania zasobami. Przykład praktyczny to dynamiczna alokacja pamięci, gdzie programista może przydzielać i zwalniać pamięć w trakcie działania programu, co jest możliwe dzięki wskaźnikom. Zrozumienie wskaźników i adresów jest fundamentalne w C/C++, a ich właściwe użycie przyczynia się do optymalizacji kodu oraz umożliwia tworzenie bardziej złożonych struktur danych, takich jak listy, stosy czy kolejki.

Pytanie 23

W HTML znacznik <i> wywołuje taki sam efekt wizualny jak znacznik

A. <em>
B. <strong>
C. <u>
D. <pre>
Znacznik <em> (emphasis) w języku HTML jest używany do podkreślenia znaczenia słów lub fraz w kontekście tekstu, co jest zgodne z semantyką sieci. Użycie tego znacznika nie tylko zmienia styl prezentacji tekstu na kursywę, ale także wskazuje, że dany fragment tekstu jest istotny dla zrozumienia całości. Znacznik <i> (italic) również stosuje kursywę, ale nie ma znaczenia semantycznego, co oznacza, że nie informuje przeglądarek ani technologii wspomagających o istotności tego tekstu. W praktyce, stosując <em> w miejscach, gdzie chcemy zaakcentować ważne elementy, pomagamy w poprawie dostępności strony oraz w jej SEO, ponieważ wyszukiwarki mogą lepiej zrozumieć strukturę i kontekst treści. Warto pamiętać, że według standardów W3C, stosowanie znaczników semantycznych, takich jak <em>, jest zalecane dla poprawy struktury dokumentu HTML oraz dla lepszej interakcji z użytkownikami wykorzystującymi technologie asystujące. Przykład: <p>W tej książce <em>odkryjesz</em> nowe możliwości.</p>

Pytanie 24

Utworzono bazę danych zawierającą tabelę podzespoły, która składa się z pól: model, producent, typ, cena. Aby uzyskać listę wszystkich modeli pamięci RAM od firmy Kingston uporządkowaną według ceny, zaczynając od najniższej, należy wykorzystać zapytanie:

A. SELECT model FROM podzespoly WHERE typ="RAM" OR producent="Kingston" ORDER BY cena DESC
B. SELECT model FROM podzespoly WHERE typ="RAM" AND producent="Kingston" ORDER BY cena DESC
C. SELECT model FROM producent WHERE typ="RAM" OR producent="Kingston" ORDER BY podzespoly ASC
D. SELECT model FROM podzespoly WHERE typ="RAM" AND producent="Kingston" ORDER BY cena ASC
Wybór tej odpowiedzi jest prawidłowy, ponieważ kwerenda wykorzystuje poprawną składnię SQL do wyboru modeli pamięci RAM od producenta Kingston. Klauzula WHERE filtruje rekordy, aby uwzględnić tylko te, które mają typ 'RAM' oraz producenta 'Kingston', co jest kluczowe dla uzyskania właściwych wyników. Użycie operatora AND w tym kontekście zapewnia, że obie te cechy muszą być spełnione, co jest zgodne z zamiarem wyświetlenia wszystkich modeli pamięci RAM tego producenta. Dodatkowo, klauzula ORDER BY cena ASC sortuje wyniki w kolejności rosnącej według ceny, co jest wymagane do poprawnego przedstawienia danych od najtańszej do najdroższej pamięci. Takie podejście jest zgodne z dobrymi praktykami SQL, gdzie precyzyjne filtrowanie danych i porządkowanie wyników są kluczowe dla efektywności i dokładności zapytań. W praktyce, takie kwerendy mogą być używane w aplikacjach do zarządzania produktami czy bazach danych e-commerce, aby pomóc użytkownikom w szybkim odnajdywaniu pożądanych produktów w oparciu o konkretne kryteria.

Pytanie 25

Jaki jest domyślny port dla serwera HTTP?

A. 443
B. 8080
C. 21
D. 80
Port 8080 często jest używany jako alternatywne rozwiązanie dla HTTP, zwłaszcza w środowiskach deweloperskich lub tam, gdzie port 80 jest już zajęty. Mimo że jest to popularny wybór, nie jest to domyślny port przypisany do HTTP. Port 443 to standardowy port dla HTTPS, czyli szyfrowanego protokołu HTTP. HTTPS zapewnia bezpieczną komunikację poprzez szyfrowanie danych przesyłanych między klientem a serwerem, co jest kluczowe dla ochrony prywatności i integralności danych w Internecie. W przypadku portu 21, jest on przypisany do protokołu FTP (File Transfer Protocol), który służy do transferu plików między klientem a serwerem. FTP jest zupełnie innym protokołem niż HTTP i służy do innych celów. Błędne skojarzenie portu 21 z HTTP może wynikać z podstawowej znajomości protokołów internetowych, gdzie czasem mylnie przypisuje się porty znane z innych zastosowań. Ważne jest, aby dokładnie rozumieć, które porty są przypisane do jakich protokołów, aby uniknąć problemów w konfiguracji sieciowej i błędów w projektowaniu aplikacji internetowych. Zrozumienie tych różnic jest kluczowe dla każdego, kto pracuje w branży IT.

Pytanie 26

Który typ danych obsługiwany przez PHP jest przeznaczony do obsługi zmiennych typu logicznego?

A. Boolean
B. Float
C. Integer
D. String
Odpowiedź "Boolean" jest prawidłowa, ponieważ jest to typ danych w języku PHP, który jest używany do przechowywania zmiennych logicznych. Zmienne tego typu mogą mieć jedynie dwie wartości: true (prawda) lub false (fałsz). Jest to niezwykle istotne w programowaniu, ponieważ umożliwia podejmowanie decyzji na podstawie warunków. Przykładowo, w konstrukcjach warunkowych, takich jak if, można sprawdzić, czy zmienna logiczna jest prawdziwa, co pozwala na wykonanie określonej akcji. Warto również zauważyć, że w PHP można łatwo konwertować inne typy danych na typ boolean za pomocą operatorów, takich jak ! (negacja) oraz porównań, co jest zgodne z zasadami dobrych praktyk programistycznych. Używanie typów logicznych jest kluczowe w kontekście programowania obiektowego oraz podczas pracy z strukturami danych. Przykład: $isAvailable = true; if ($isAvailable) { echo 'Produkt jest dostępny.'; }.

Pytanie 27

Jaka funkcja w PHP pozwala na wyświetlenie ciągu n znaków @?

function znaki($znak,$i++){
for($i=0;$i<$n;$i++)
print($znak);
}
znaki(@,$n);
A
function znaki($i){
for($i=0;$i<$n;$i++)
print("@");
}
znaki($i);
B
function znaki($znak,$i++){
for($i=0;$i<$n;$i++)
print($znak);
}
znaki($n);
C
function znaki($znak,$n){
for($i=0;$i<$n;$i++)
print($znak);
}
znaki("@",$n);
D
A. C
B. D
C. B
D. A
Błędne odpowiedzi w tym przypadku wynikają z niepoprawnego przekazania parametrów do funkcji lub niewłaściwego sposobu ich wykorzystania co skutkuje nieosiągnięciem zamierzonego celu czyli wyświetlenia ciągu znaków @. W jednym przypadku funkcja nie przyjmuje wystarczającej liczby parametrów co uniemożliwia dynamiczne określenie liczby powtórzeń znaku. Zamiast tego powinno się zapewnić że funkcja przyjmuje zarówno znak jak i liczbę powtórzeń jako parametry. Innym częstym błędem jest brak przekazania właściwego argumentu do funkcji co skutkuje jej niepoprawnym działaniem i potencjalnym błędem wykonania. Ponadto korzystanie z niepoprawnie nazwanych zmiennych lub zmiennych które nie są jasno zdefiniowane w kontekście wywołania funkcji prowadzi do błędów logicznych. Kluczowym jest zrozumienie w jaki sposób funkcje w PHP przyjmują i przetwarzają argumenty oraz jak pętle takie jak for pozwalają na iteracyjne przetwarzanie danych. Poprawne zrozumienie i zastosowanie tych mechanizmów jest fundamentem efektywnego programowania w PHP co przekłada się na tworzenie kodu który jest nie tylko poprawny ale także łatwy do utrzymania i skalowalny. Zrozumienie tych podstawowych zasad pozwala na uniknięcie typowych błędów w programowaniu i prowadzi do tworzenia bardziej niezawodnych aplikacji. Prawidłowe podejście do tworzenia funkcji i ich wywoływania jest jednym z kluczowych elementów w rozwijaniu umiejętności programistycznych w PHP i innych językach programowania. Dlatego też ważne jest aby zawsze dokładnie analizować wymagania funkcji i poprawnie konstruować ich implementację oraz wywołanie aby zapewnić ich poprawne i efektywne działanie w kontekście całego systemu.

Pytanie 28

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. sumy.
B. grupowania.
C. wykluczenia.
D. części wspólnej.
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno. Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji. Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 29

Jaką rozdzielczość określa jednostka ppi (ang. pixels per inch)?

A. Obrazów generowanych przez drukarki i plotery
B. Obrazów bitmapowych.
C. Skanujących urządzeń.
D. Cyfrowych przyrządów dokonujących pomiarów.
Rozdzielczość wyrażana w jednostkach ppi (pixels per inch) odnosi się do ilości pikseli na cal w obrazach tworzonych przez drukarki i plotery. Wyższa wartość ppi oznacza większą gęstość pikseli, co przekłada się na wyższą jakość druku oraz więcej szczegółów w finalnym obrazie. W praktyce, standardowe wartości ppi dla wysokiej jakości druku to 300 ppi lub więcej, co jest preferowane w przypadku fotografii oraz materiałów reklamowych. Wartości te są zgodne z wytycznymi branżowymi, które sugerują, że dla druku offsetowego zaleca się rozdzielczość minimum 300 ppi, aby zachować szczegóły i ostrość obrazu. Użycie odpowiednich wartości ppi jest kluczowe w procesie prepress, gdzie przygotowuje się materiały do druku. Nieodpowiednia rozdzielczość może prowadzić do rozmycia, pikselizacji i ogólnej utraty jakości w finalnym produkcie, co negatywnie wpływa na wrażenia wizualne odbiorców oraz wizerunek marki.

Pytanie 30

Aplikacja o nazwie FileZilla umożliwia

A. publikację witryny internetowej na zdalnym serwerze
B. sprawdzanie poprawności plików HTML oraz CSS
C. wniesienie bazy danych na stronę CMS Joomla!
D. przeprowadzenie testów aplikacji
FileZilla to popularny program typu FTP (File Transfer Protocol), który umożliwia użytkownikom przesyłanie plików między komputerem a serwerem internetowym. Jego głównym celem jest publikacja stron internetowych na odległych serwerach, co jest kluczowe dla procesu tworzenia i utrzymania stron w sieci. Program obsługuje różne protokoły, takie jak FTP, FTPS oraz SFTP, co zapewnia elastyczność i bezpieczeństwo podczas transferu danych. W praktyce, aby opublikować stronę, użytkownik może przeciągnąć pliki z lokalnego folderu do odpowiedniego katalogu na serwerze, co jest intuicyjne i efektywne. FileZilla wspiera również funkcje takie jak synchronizacja folderów, co pozwala na łatwe aktualizowanie zawartości strony. Zgodnie z branżowymi standardami, korzystanie z odpowiednich narzędzi do przesyłania plików, takich jak FileZilla, jest niezbędne dla każdego dewelopera webowego, aby zapewnić bezpieczeństwo i zgodność z najlepszymi praktykami w zakresie publikacji stron internetowych.

Pytanie 31

Jakiego znacznika używamy do definiowania list w HTML?

A. <td>
B. <tr>
C. <ul>
D. <th>
<ul> to znacznik w języku HTML, który definiuje nienumerowaną listę, co czyni go kluczowym elementem do strukturyzacji zawartości w dokumentach. Użycie <ul> pozwala na grupowanie powiązanych elementów, co zwiększa czytelność i dostępność treści. Zgodnie z zasadami semantycznego HTML, stosowanie list poprawia organizację informacji i ułatwia ich przetwarzanie przez maszyny, w tym wyszukiwarki internetowe. Przykład zastosowania: w sekcji strony internetowej przedstawiającej cechy produktu możemy użyć <ul> do wypisania jego zalet. Dobrym zwyczajem jest także dodawanie odpowiednich znaczników <li> dla poszczególnych elementów listy. Przykład: <ul><li>Zaleta 1</li><li>Zaleta 2</li></ul>. Dzięki temu tworzony jest bardziej przejrzysty i strukturalny układ treści, co przekłada się na lepsze doświadczenia użytkownika oraz spełnia standardy W3C dotyczące semantyki HTML.

Pytanie 32

Wskaż zapytanie, w którym dane są uporządkowane.

A. SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;
B. SELECT AVG(ocena) FROM uczniowie WHERE klasa = 2;
C. SELECT nazwisko FROM firma WHERE pensja > 2000 LIMIT 10;
D. SELECT DISTINCT produkt, cena FROM artykuly;
Odpowiedź wskazująca na zapytanie "SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;" jest prawidłowa, ponieważ zawiera klauzulę ORDER BY, która służy do sortowania rekordów w wynikach zapytania. W tym przypadku dane są sortowane według kolumny 'wiek', co pozwala na uzyskanie uporządkowanej listy mieszkańców, którzy mają więcej niż 18 lat. Sortowanie danych jest kluczowym aspektem w zarządzaniu bazami danych, umożliwiającym łatwiejsze wyszukiwanie oraz analizę informacji. Przykładem zastosowania może być generowanie raportów, gdzie istotne jest uporządkowanie danych, na przykład według wieku, aby zobaczyć, jak rozkłada się wiek mieszkańców w danej grupie. Dodatkowo, stosowanie sortowania zgodnie z przyjętymi standardami SQL zwiększa czytelność oraz efektywność zapytań, a także ułatwia rozwiązywanie problemów związanych z przetwarzaniem danych.

Pytanie 33

Przy założeniu, że nie istnieją inne definicje, jakie skutki będzie miało poniższe formatowanie CSS?

<style> td {padding: 30px; } </style>

<td style="padding: 10px;">Anna</td>
<td>Ewa</td>
A. margines wewnętrzny komórki z napisem Anna wyniesie 10 px, a z napisem Ewa – 30 px
B. marginesy wewnętrzne wszystkich komórek wyniosą 10 px
C. marginesy wewnętrzne wszystkich komórek wyniosą 30 px
D. margines wewnętrzny komórki z napisem Anna wyniesie 30 px, a z napisem Ewa – 10 px
Analizując podane odpowiedzi, konieczne jest zrozumienie, jak działa specyficzność w CSS. Częstym błędem jest zakładanie, że reguły zdefiniowane w sekcji style zawsze przeważają nad innymi. Jednak style inline, czyli te bezpośrednio przypisane do elementu HTML, mają wyższy priorytet. Dlatego komórka z napisem Anna, mimo że wszystkie komórki td mają globalnie zdefiniowany padding 30px, będzie mieć padding 10px, ponieważ zapis style="padding: 10px;" bezpośrednio przypisany do niej nadpisuje regułę globalną. Myślenie, że marginesy wszystkich komórek będą równe 30px, jest błędem wynikającym z niezrozumienia priorytetów CSS. Podobnie, założenie, że wszystkie komórki mają padding 10px, ignoruje fakt, że tylko dla jednej komórki użyto stylu inline. Zrozumienie tych mechanizmów jest kluczowe dla efektywnego stylowania stron internetowych. Zasadą dobrych praktyk jest stosowanie zewnętrznych arkuszy stylów, co nie tylko poprawia czytelność kodu, ale także pozwala na lepsze zarządzanie stylem całej witryny. Użycie stylów inline powinno być ograniczone do wyjątkowych przypadków, gdzie konieczne jest szybkie nadpisanie stylu, co jednak może prowadzić do mniej optymalnego kodu w dłuższej perspektywie.

Pytanie 34

Fragment kodu napisany w języku JavaScript, który realizuje sumowanie dwóch liczb, wygląda następująco (zobacz ramka): Aby operacja dodawania odbywała się po naciśnięciu przycisku zatytułowanego "dodaj", należy w miejsce wykropkowane wprowadzić

Ilustracja do pytania
A. <button onclick="return dodaj()">dodaj</button>
B. <button onclick="return obliczj()">dodaj</button>
C. <button onselect="return dodaj()">dodaj</button>
D. <button onselect="return dodaj()">oblicz</button>
Odpowiedź jest prawidłowa, ponieważ w języku JavaScript zdarzenie onclick jest standardowym sposobem uruchamiania funkcji w odpowiedzi na kliknięcie przycisku. W tym przypadku funkcja dodaj() zostanie wywołana, gdy użytkownik kliknie przycisk z napisem "dodaj". Jest to zgodne z powszechnymi praktykami w tworzeniu interfejsów użytkownika dla aplikacji webowych, gdzie zdarzenia są przypisywane do elementów HTML za pomocą atrybutów takich jak onclick czy onsubmit. Takie podejście pozwala na bezpośrednią interakcję użytkownika z elementami strony, co jest kluczowe dla dynamicznych aplikacji internetowych. Przy tworzeniu stron internetowych ważne jest, aby zdarzenia były jednoznacznie przypisane do odpowiednich funkcji, co ułatwia zarządzanie logiką aplikacji. Dodatkowo takie rozwiązanie zwiększa czytelność kodu i ułatwia jego dalsze utrzymanie i rozwój. W przypadku bardziej skomplikowanych projektów można również rozważyć oddzielanie logiki JavaScript od struktury HTML, używając zewnętrznych plików skryptów i bibliotek, takich jak jQuery czy React, co sprzyja lepszej organizacji kodu.

Pytanie 35

Przedstawiony kod PHP nawiązuje połączenie z serwerem bazy danych. Jakiego typu operacje powinny się znaleźć w instrukcji warunkowej w miejscu trzech kropek?

$db = mysqli_connect("localhost", "root", "qwerty", "baza1");
if (!$db) {
...
}
A. Informacja o pomyślnym nawiązaniu połączenia z bazą
B. Przetwarzanie danych uzyskanych z bazy
C. Zamknięcie połączenia z bazą danych
D. Obsługa błędu przy nawiązywaniu połączenia
Zamknięcie bazy danych w kontekście nawiązywania połączenia z bazą danych nie ma sensu, ponieważ w momencie, gdy kod wykonuje sprawdzenie połączenia, to takie połączenie nie zostało jeszcze nawiązane. Próba zamknięcia niezainicjowanego połączenia nie tylko nie przyniesie żadnego efektu, ale także może prowadzić do mylnych wniosków dotyczących kodu. Ponadto, zachowanie takie może wprowadzać w błąd, sugerując, że operacje na bazie danych mogłyby być przeprowadzone w tym momencie, co jest nieprawdziwe. Obsługa danych pobranych z bazy również nie jest właściwym podejściem w momencie, gdy połączenie nie zostało jeszcze ustanowione - przed przetwarzaniem jakichkolwiek danych, najpierw musimy upewnić się, że połączenie jest aktywne. Natomiast komunikat o pomyślnym połączeniu z bazą nie powinien być używany w instrukcji warunkowej, gdyż działa on na zasadzie potwierdzenia, a nie na detekcji błędów. Ważne jest, aby zrozumieć, że każda z tych odpowiedzi nie odpowiada na istotę problemu - w przypadku problemów z połączeniem zwłaszcza w aplikacjach produkcyjnych, brak odpowiedniego komunikatu o błędzie może prowadzić do poważnych trudności w diagnozowaniu i naprawie problemów, co może wpływać na całkowitą funkcjonalność systemu oraz jego niezawodność.

Pytanie 36

Aby wykonać usunięcie tabeli, należy użyć kwerendy

A. TRUNCATE TABLE
B. DELETE
C. DROP TABLE
D. UNIQUE
Poprawna odpowiedź to DROP TABLE, ponieważ jest to standardowa komenda SQL używana do całkowitego usunięcia tabeli z bazy danych. Użycie tej komendy powoduje nie tylko usunięcie samej struktury tabeli, ale również wszystkich danych, które były w niej przechowywane. Przykładowo, jeśli mamy tabelę 'Użytkownicy' i chcemy ją usunąć, piszemy: DROP TABLE Użytkownicy; Należy jednak pamiętać, że po wykonaniu tej operacji nie można odzyskać ani tabeli, ani jej danych, dlatego ważne jest, aby przed takim krokiem wykonać odpowiednie kopie zapasowe lub upewnić się, że dane są już zbędne. W kontekście dobrych praktyk, przed usunięciem tabeli warto przeanalizować wpływ na inne obiekty bazy danych, takie jak klucze obce, które mogą być związane z usuwaną tabelą. Istotne jest również zrozumienie, że DROP TABLE nie można użyć, jeśli w tabeli istnieją aktywne ograniczenia lub jeśli jest ona częścią jakiejś transakcji. W takiej sytuacji, czynności te należy zrealizować w odpowiedniej kolejności, aby uniknąć błędów.

Pytanie 37

W zaprezentowanej klasie zdefiniowane zostały

class a {
    public $b;
    public $c;
    public function d() {}
}
A. dwa obiekty
B. dwie właściwości
C. jedna właściwość
D. dwie metody
Odpowiedzi wskazujące na dwa obiekty lub dwie metody są błędne z powodu niepoprawnej interpretacji struktury klasy. Obiekty są instancjami klas, a nie ich składnikami. W kodzie zadań nie ma definicji żadnych obiektów tylko konstrukcja klasy. Z kolei w kontekście programowania obiektowego metody to funkcje zdefiniowane wewnątrz klasy które mogą operować na danych obiektu i realizować jego funkcje. W przedstawionym kodzie znajduje się tylko jedna metoda o nazwie d. Właściwość jest składnikiem klasy i może być polem lub zmienną instancji która przechowuje dane specyficzne dla instancji klasy. Poprawna odpowiedź zawiera dwie właściwości $b i $c zdefiniowane w klasie jako public. Częstym błędem jest mylenie pojęć metod i właściwości co wynika z braku zrozumienia różnicy między nimi. Metody wykonują operacje na danych obiektu natomiast właściwości przechowują te dane. Zrozumienie tej różnicy jest fundamentem poprawnego stosowania paradygmatu obiektowego w programowaniu i pozwala na bardziej efektywne projektowanie kodu oraz zarządzanie stanem obiektów.

Pytanie 38

Który zbiór znaczników, określających projekt strony internetowej w sposób semantyczny, jest zgodny z normą HTML 5?

Ilustracja do pytania
A. Zbiór 4
B. Zbiór 1
C. Zbiór 2
D. Zbiór 3
Wykaz 4 jest zgodny ze standardem HTML 5, ponieważ poprawnie używa semantycznych znaczników do strukturyzacji zawartości strony. <header> jest używany do definiowania nagłówka dokumentu lub sekcji, co jest poprawne dla Bloku 1. Znacznik <main> w Bloku 2 wskazuje na główną treść strony, co jest zgodne z jego przeznaczeniem. <aside> w Bloku 3 jest trafnie używany do treści pobocznych, które są związane, ale niekonieczne dla głównego wątku treści, co odpowiada typowej strukturze witryny, gdzie treści poboczne są często wyświetlane obok głównej treści. Na koniec, <footer> w Bloku 4 jest poprawnie przypisany, gdyż zamyka i podsumowuje zawartość strony. HTML5 kładzie duży nacisk na semantykę, co pomaga w optymalizacji pod kątem SEO oraz ułatwia rozumienie struktury strony zarówno przez ludzi, jak i maszyny. Takie podejście poprawia dostępność, ułatwia stylizowanie za pomocą CSS oraz wspiera lepsze praktyki w zakresie zgodności z przyszłymi standardami.

Pytanie 39

W języku PHP symbol "//" oznacza

A. początek komentarza jednoliniowego
B. początek skryptu
C. operator alernatywy
D. operator dzielenia całkowitego
W PHP znak "//" oznacza początek komentarza jednoliniowego. Komentarze są niezwykle ważnym elementem kodu, ponieważ pozwalają programistom na dodawanie objaśnień i notatek, które nie są wykonywane przez interpreter. Dzięki temu kod staje się bardziej czytelny i łatwiejszy w utrzymaniu, zwłaszcza w projektach zespołowych czy przy dłuższych skryptach. Na przykład, można użyć komentarza, aby wyjaśnić, jak działa dana funkcjonalność lub dlaczego podjęto określoną decyzję projektową. Ponadto, stosowanie komentarzy zgodnie z dobrymi praktykami zwiększa jakość dokumentacji projektu oraz ułatwia przyszłym programistom (lub samemu autorowi) zrozumienie logiki kodu. Warto również zauważyć, że w PHP istnieją inne sposoby komentowania, takie jak "#" dla komentarzy jednoliniowych oraz "/* ... */" dla komentarzy wieloliniowych. Użycie komentarzy w kodzie źródłowym jest istotnym aspektem programowania, promującym najlepsze praktyki związane z czytelnością i zarządzaniem projektami.

Pytanie 40

Podczas przygotowywania grafiki do umieszczenia na stronie internetowej konieczne jest wycięcie tylko pewnego fragmentu. Jak nazywa się ta czynność?

A. kadrowanie.
B. zmiana rozmiaru.
C. odwracanie obrazu.
D. łączanie warstw.
Kadrowanie to taka technika, która pomaga nam lepiej uchwycić to, co najważniejsze w obrazie. Wycinając niektóre fragmenty grafiki, skupiamy uwagę na tym, co naprawdę się liczy. Dobrze jest to mieć na uwadze, zwłaszcza przy zdjęciach portretowych, gdzie chcemy, żeby wzrok przyciągała twarz modela, a nie jakieś niepotrzebne tło. Kiedy kadrujemy, warto pamiętać o takich zasadach jak zasada trzecich, bo to pomaga zrobić fajną kompozycję. Można to robić w wielu programach graficznych, jak na przykład Adobe Photoshop czy GIMP. Tak w ogóle, dobrze jest dbać o proporcje i rozdzielczość, żeby obraz nie stracił na jakości. Gadżetem kadrowania można się też posługiwać w projektowaniu stron www, bo odpowiednie wybory graficzne poprawiają estetykę i funkcjonalność strony.