Słownik pojęć: Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Kluczowe pojęcia z kwalifikacji INF.03 pogrupowane tematycznie — definicje, przykłady i wyjaśnienia przydatne na egzaminie CKE.
Backend & PHP(12)
PDO (PHP Data Objects) i Prepared Statements
Lekka, spójna warstwa abstrakcji dostępu do baz danych w PHP, zabezpieczająca aplikację przed atakami SQL Injection dzięki zapytaniom parametryzowanym.
Sesje ($_SESSION) i Ciasteczka ($_COOKIE) w PHP
Mechanizmy podtrzymywania stanu między kolejnymi bezstanowymi żądaniami HTTP (po stronie serwera - sesje, po stronie klienta - ciasteczka).
Metody przesyłania danych ($_GET vs $_POST)
Podstawowe metody protokołu HTTP używane do przekazywania danych z formularzy HTML do skryptów backendowych.
Bezpieczne haszowanie haseł (password_hash, password_verify)
Nowoczesne, jednokierunkowe algorytmy kryptograficzne wbudowane w PHP gwarantujące bezpieczne przechowywanie haseł użytkowników z automatyczną solą.
Sanitizacja i ochrona przed XSS (htmlspecialchars, strip_tags)
Funkcje PHP służące do neutralizacji znaków specjalnych HTML i usuwania znaczników w celu ochrony aplikacji przed atakami Cross-Site Scripting (XSS).
Obsługa wyjątków (try-catch-finally)
Struktura programistyczna służąca do bezpiecznego przechwytywania i reagowania na błędy wykonania aplikacji bez przerywania działania całego skryptu.
Rozszerzenie MySQLi w PHP (mysqli_connect, query, fetch)
Dedykowane rozszerzenie proceduralne i obiektowe w PHP służące do komunikacji z bazą danych MySQL.
Operacje na plikach w PHP (fopen, fread, fwrite, fclose)
Funkcje wejścia/wyjścia umożliwiające otwieranie, odczytywanie wierszy, zapisywanie i dopisywanie danych do plików na dysku serwera.
Dołączanie plików (include, require, include_once, require_once)
Instrukcje języka PHP służące do modularnego dołączania zawartości zewnętrznych plików źródłowych do bieżącego skryptu.
Funkcje tablicowe w PHP (count, in_array, sort, array_push)
Zestaw funkcji wbudowanych w PHP do sprawdzania rozmiaru, sortowania, wyszukiwania elementów i manipulowania strukturami tablic.
Funkcje tekstowe w PHP (strlen, strpos, explode, implode, trim)
Funkcje do mierzenia długości, wyszukiwania podciągów, zamiany fragmentów oraz konwersji między łańcuchami a tablicami.
Zmienne superglobalne w PHP ($_SERVER, $_FILES, $_REQUEST)
Wbudowane w PHP tablice asocjacyjne dostępne automatycznie w każdym zasięgu skryptu bez konieczności deklaracji global.
Bazy Danych(21)
Klucz główny (PRIMARY KEY)
Jedno lub więcej pól w tabeli, które jednoznacznie identyfikują każdy rekord. Wartości muszą być unikalne i nie mogą być równe NULL.
Klucz obcy (FOREIGN KEY)
Kolumna lub zestaw kolumn w tabeli odwołujący się do klucza głównego lub unikalnego w innej tabeli w celu utworzenia powiązania (relacji).
Instrukcja SELECT w SQL
Podstawowe polecenie języka DQL (Data Query Language) w SQL służące do pobierania i filtrowania danych z jednej lub wielu tabel.
Złączenia tabel (JOIN) w SQL
Operacja łącząca kolumny z dwóch lub więcej tabel na podstawie powiązanych między nimi kolumn (zazwyczaj relacji klucz obcy - klucz główny).
Kwerenda / Zapytanie SQL
Sformułowane w języku SQL żądanie skierowane do systemu bazy danych w celu wyszukania, dodania, modyfikacji lub usunięcia informacji.
Normalizacja baz danych (1NF, 2NF, 3NF)
Proces organizowania struktury relacyjnej bazy danych mający na celu wyeliminowanie redundancji (nadmiarowości) oraz anomalii modyfikacji danych.
Transakcje i własności ACID
Zestaw operacji na bazie danych traktowany jako jedna niepodzielna jednostka pracy spełniająca reguły Atomicity, Consistency, Isolation, Durability.
Indeks w bazie danych (INDEX)
Specjalna pomocnicza struktura danych (najczęściej B-drzewo) przyspieszająca wyszukiwanie i sortowanie wierszy w tabeli kosztem wolniejszego zapisu.
Grupowanie GROUP BY i klauzula HAVING
Mechanizm łączący wiersze o takich samych wartościach w grupy w celu wykonania na nich obliczeń agregujących, filtrowanych za pomocą HAVING.
Funkcje agregujące w SQL (COUNT, SUM, AVG, MIN, MAX)
Wbudowane funkcje SQL wykonujące obliczenia na zestawie wartości w kolumnie i zwracające pojedynczą wartość skalarną.
Zarządzanie uprawnieniami DCL (GRANT, REVOKE)
Polecenia języka DCL służące do nadawania (GRANT) i odbierania (REVOKE) uprawnień użytkownikom do obiektów bazy danych.
Polecenia DDL (CREATE, ALTER, DROP, TRUNCATE)
Zestaw instrukcji SQL służących do definiowania i modyfikowania struktury obiektów bazy danych (tabel, widoków, indeksów, baz).
Polecenia DML (INSERT, UPDATE, DELETE)
Instrukcje SQL odpowiedzialne za manipulację danymi wewnątrz istniejących tabel (dodawanie, edycję oraz usuwanie wierszy).
Integralność referencyjna i więzy spójności
Zasada w relacyjnych bazach danych zapewniająca, że relacje między tabelami pozostają spójne, a klucze obce zawsze wskazują na istniejące rekordy.
Silniki tabel MySQL (InnoDB vs MyISAM)
Mechanizmy pamięci masowej w MySQL odpowiedzialne za sposób przechowywania, blokowania, indeksowania i przetwarzania danych w tabelach.
Widoki w SQL (VIEW)
Wirtualna tabela tworzona na podstawie zapytania SELECT, która nie przechowuje fizycznie danych, lecz generuje je dynamicznie w chwili odwołania.
Operator LIKE i znaki wieloznaczne w SQL
Operator służący do wyszukiwania ciągów tekstowych pasujących do określonego wzorca z użyciem symboli wieloznacznych % i _.
Sortowanie ORDER BY i ograniczanie wyników LIMIT
Klauzule służące do sortowania rekordów rosnąco (ASC) lub malejąco (DESC) oraz ograniczania liczby zwracanych wierszy (stronicowanie).
Ograniczenia integralnościowe (Constraints)
Reguły nakładane na kolumny tabeli w celu wymuszenia poprawności, unikalności i kompletności wprowadzanych danych.
Funkcje tekstowe w SQL (CONCAT, SUBSTRING, LENGTH, UPPER, LOWER)
Funkcje służące do łączenia, przycinania, wycinania fragmentów i zmiany wielkości liter w ciągach znaków w zapytaniach SQL.
Funkcje daty i czasu w SQL (NOW, CURDATE, DATEDIFF, YEAR)
Funkcje umożliwiające pobieranie bieżącego czasu oraz wykonywanie operacji matematycznych i porównań na polach typu DATE i DATETIME.
Frontend & CSS(13)
CSS Flexbox
Jednowymiarowy model układu w CSS (Flexible Box Layout) służący do wyrównywania i dystrybucji przestrzeni między elementami w wierszu lub kolumnie.
CSS Grid Layout
Dwuwymiarowy system układu w CSS umożliwiający tworzenie złożonych siatek opartych na jednoczesnym podziale na wiersze i kolumny.
Selektory potomka, dziecka, rodzeństwa i atrybutów
Reguły CSS określające relacje między elementami HTML (potomek, bezpośrednie dziecko, sąsiadujące rodzeństwo, selektory atrybutów).
Pseudoklasy i Pseudoelementy CSS (:hover, ::before)
Słowa kluczowe dodawane do selektorów definiujące stan elementu (:hover, :focus) lub pozwalające stylować specyficzne wirtualne fragmenty (::before, ::after).
Semantyka HTML5 (header, nav, main, article, section, footer)
Wprowadzone w standardzie HTML5 znaczniki opisujące znaczenie i rolę zawartości strony dla przeglądarek, czytników ekranowych i robotów wyszukiwarek.
Media Queries i Responsive Web Design (RWD)
Technika CSS pozwalająca na dopasowanie wyglądu i układu strony do różnych rozdzielczości ekranów (smartfony, tablety, laptopy).
Jednostki wielkości w CSS (rem, em, px, %, vh, vw)
Miary rozmiarów w stylach CSS dzielące się na bezwzględne (px) oraz elastyczne i względne (rem, em, %, vw, vh).
Pozycjonowanie elementów i z-index
Właściwości CSS kontrolujące położenie elementu w dokumencie (static, relative, absolute, fixed, sticky) oraz kolejność nakładania warstw (z-index).
Model pudełkowy (Box Model i box-sizing: border-box)
Koncepcja opisująca strukturę każdego elementu HTML składającą się z zawartości (content), wewnętrznego marginesu (padding), ramki (border) i marginesu zewnętrznego (margin).
Formularze HTML5 i walidacja po stronie klienta
Zestaw elementów formularza (<input>, <select>, <textarea>) i wbudowanych atrybutów sprawdzających poprawność danych w przeglądarce przed wysłaniem.
Kaskadowość i Specyficzność stylów CSS (Waga selektorów)
Algorytm określający, która reguła CSS ma pierwszeństwo w przypadku konfliktu stylów nakładanych na ten sam element.
Tagi multimedialne HTML5 (audio, video, source, canvas)
Standardowe elementy HTML5 do natywnego odtwarzania dźwięku, filmów oraz dynamicznego rysowania grafiki rastrowej w przeglądarce.
Tabele w HTML (table, tr, th, td, colspan, rowspan)
Struktury do prezentowania danych tabelarycznych składające się z wierszy (tr), nagłówków (th), komórek (td) i atrybutów scalania (colspan/rowspan).
Frontend & JS(16)
Drzewo DOM (Document Object Model)
Wieloplatformowy i niezależny od języka interfejs programistyczny traktujący dokument HTML jako hierarchiczne drzewo obiektów (węzłów).
Funkcje strzałkowe i anonimowe w JS
Funkcja zdefiniowana bez nazwy identyfikatora, często przekazywana jako callback lub zapisywana zwięzłą składnią strzałkową () => {}.
AJAX i Fetch API w JavaScript
Technologia umożliwiająca asynchroniczną wymianę danych z serwerem w tle bez konieczności przeładowywania całej strony internetowej.
Propagacja zdarzeń (Event Bubbling i Capturing)
Mechanizm przepływu zdarzeń w hierarchii DOM: od korzenia w dół do elementu docelowego (Capturing), a następnie w górę (Bubbling).
Obsługa zdarzeń i addEventListener
Wzorzec rejestrowania funkcji zwrotnych (handlerów) wywoływanych w odpowiedzi na interakcję użytkownika ze stroną (kliknięcie, wpisanie tekstu, wysłanie formularza).
Asynchroniczność, Obiekt Promise i async/await
Nowoczesne mechanizmy JavaScript do obsługi operacji asynchronicznych (sieciowych, czasowych), eliminujące tzw. Callback Hell.
Pamięć przeglądarki (localStorage i sessionStorage)
Interfejs przeglądarki umożliwiający bezpieczne przechowywanie par klucz-wartość (stringów) po stronie klienta o pojemności ok. 5-10 MB.
Format JSON (JSON.parse i JSON.stringify)
Lekki, tekstowy format wymiany danych oraz wbudowane w JS metody do konwersji między obiektami a tekstem JSON.
Domknięcia (Closures) w JavaScript
Zdolność funkcji wewnętrznej do zapamiętywania i posiadania dostępu do zmiennych ze swojego leksykalnego zasięgu rodzica, nawet po zakończeniu jego działania.
Obiekty globalne window i document (BOM i DOM)
Główne obiekty środowiska przeglądarki reprezentujące okno przeglądarki (window) oraz załadowaną w nim strukturę strony HTML (document).
Typy danych i operatory porównania (== vs ===)
Zasady typowania w JavaScript oraz fundamentalna różnica między porównaniem luźnym z konwersją typu (==) a ścisłym (===).
Obiekt Math w JavaScript (floor, ceil, round, random)
Wbudowany obiekt statyczny zawierający właściwości matematyczne oraz metody do zaokrągleń, losowania i operacji arytmetycznych.
Metody tablicowe w JS (push, pop, map, filter, forEach, splice)
Funkcje wbudowane w prototyp tablic służące do mutowania zawartości, transformacji, filtrowania i iteracji po elementach.
Metody operacji na tekstach (String) w JS
Zestaw metod obiektu String w JavaScript służący do wyszukiwania, wycinania, dzielenia na tablice i formatowania tekstu.
Konwersja typów w JS (parseInt, parseFloat, isNaN)
Funkcje służące do rzutowania i wyodrębniania liczb całkowitych oraz zmiennoprzecinkowych z ciągów tekstowych.
Zasięg zmiennych i Hoisting (let, const vs var)
Mechanizmy określające widoczność zmiennych w blokach kodu oraz wynoszenie deklaracji zmiennych i funkcji na górę zakresu (Hoisting).
Grafika & Multimedia(7)
Grafika rastrowa vs Grafika wektorowa
Dwa fundamentalne rodzaje grafiki komputerowej: rastrowa (siatka pikseli o stałej rozdzielczości) oraz wektorowa (oparta na figurach i wzorach matematycznych).
Modele barw (RGB, CMYK, HSL)
Matematyczne modele reprezentacji kolorów: RGB (addytywny model światła dla ekranów) oraz CMYK (subtraktywny model pigmentów dla druku).
Formaty graficzne i kompresja (JPG, PNG, GIF, SVG, WebP)
Cechy popularnych formatów plików graficznych w kontekście kompresji stratnej (usuwanie detali) i bezstratnej (zachowanie pełnej jakości) oraz obsługi przezroczystości.
Obróbka w GIMP (Warstwy, Kanał alfa, Maska warstwy, Kadrowanie)
Podstawowe narzędzia i techniki cyfrowej obróbki grafiki rastrowej w darmowym programie GIMP wykorzystywane w zadaniach egzaminacyjnych.
Formaty i kodeki audio-wideo (MP3, WAV, MP4, WebM, H.264)
Metody cyfrowego kodowania i kompresji dźwięku oraz obrazu ruchomego w kontenerach multimedialnych na potrzeby publikacji w sieci.
Parametry dźwięku cyfrowego i Audacity
Wielkości fizyczne i cyfrowe opisujące jakość dźwięku (częstotliwość próbkowania w Hz, głębia bitowa) oraz narzędzie Audacity do montażu audio.
Głębia kolorów i rozdzielczość obrazu (DPI, PPI, True Color)
Parametry określające liczbę bitów przeznaczonych na opis koloru pojedynczego piksela oraz gęstość punktów na cal (DPI/PPI).
Programowanie(17)
Rekurencja w programowaniu
Technika programistyczna, w której funkcja wywołuje samą siebie w celu rozwiązania mniejszego podproblemu aż do osiągnięcia warunku bazowego (stopu).
Dziedziczenie (OOP)
Jeden z filarów programowania obiektowego (OOP), umożliwiający klasie potomnej przejęcie pól i metod z klasy bazowej oraz ich rozszerzenie.
Polimorfizm (Wielopostaciowość)
Mechanizm OOP pozwalający różnym klasom na implementację tej samej metody w odmienny sposób, zachowując wspólny interfejs.
Tablica asocjacyjna (Słownik / Mapa)
Struktura danych przechowująca elementy w postaci par klucz-wartość, gdzie indeksem (kluczem) jest ciąg znaków (string).
Enkapsulacja / Hermetyzacja i modyfikatory dostępu
Filar OOP polegający na ukrywaniu wewnętrznego stanu obiektu przed bezpośrednim dostępem z zewnątrz i udostępnianiu kontrolowanych metod (getterów/setterów).
Abstrakcja, Klasy abstrakcyjne i Interfejsy
Wzorce projektowe OOP służące do definiowania kontraktów i szablonów zachowań bez dostarczania pełnej implementacji.
Konstruktor i destruktor w programowaniu obiektowym
Specjalne metody klasy automatycznie wywoływane podczas tworzenia nowego obiektu (konstruktor) oraz podczas jego niszczenia i zwalniania pamięci (destruktor).
Złożoność obliczeniowa i Notacja Dużego O
Miara efektywności algorytmu opisująca, jak rośnie czas wykonania lub zużycie pamięci wraz ze wzrostem rozmiaru danych wejściowych (n).
Algorytmy sortowania (bąbelkowe, przez wybieranie, przez wstawianie)
Podstawowe algorytmy porządkowania elementów w tablicy rosnąco lub malejąco o typowej złożoności kwadratowej O(n²).
Struktury danych: Stos (LIFO) i Kolejka (FIFO)
Liniowe struktury danych różniące się regułą dostępu do elementów: Stos (ostatni wchodzi, pierwszy wychodzi) vs Kolejka (pierwszy wchodzi, pierwszy wychodzi).
Algorytm Euklidesa (NWD i NWW)
Klasyczny, wydajny algorytm wyznaczania największego wspólnego dzielnika (NWD) dwóch liczb całkowitych oparty na reszcie z dzielenia.
Sito Eratostenesa (Liczby pierwsze)
Wydajny algorytm wyznaczania wszystkich liczb pierwszych z przedziału od 2 do zadanej liczby n poprzez wykreślanie wielokrotności.
Wyszukiwanie liniowe vs Wyszukiwanie binarne
Dwa podstawowe algorytmy wyszukiwania elementów w kolekcji: liniowy O(n) dla dowolnych danych oraz binarne O(log n) dla tablic posortowanych.
Systemy zarządzania treścią CMS (WordPress, Joomla, Drupal)
Aplikacje internetowe umożliwiające łatwe tworzenie, edycję i publikację stron WWW bez konieczności zaawansowanej wiedzy programistycznej.
Licencje oprogramowania i Prawo Autorskie (GPL, MIT, Creative Commons)
Umowy prawne określające zasady korzystania, modyfikacji, rozpowszechniania i komercyjnego użycia programów komputerowych i utworów.
Kompilator vs Interpreter (Wykonywanie kodu)
Dwa podstawowe sposoby tłumaczenia kodu źródłowego: kompilator (całościowe tłumaczenie do kodu maszynowego przed uruchomieniem) vs interpreter (tłumaczenie linijka po linijce w locie).
System kontroli wersji Git (commit, push, pull, branch)
Rozproszony system kontroli wersji śledzący historię zmian w plikach projektu i ułatwiający zespołową pracę programistów.
Sieci i Bezpieczeństwo(8)
Atak SQL Injection (Wstrzykiwanie SQL)
Groźny atak polegający na wstrzyknięciu złośliwego kodu SQL do pól formularza lub parametrów URL w celu nieautoryzowanego odczytu lub modyfikacji bazy.
Atak XSS (Cross-Site Scripting)
Atak polegający na wstrzyknięciu złośliwego skryptu JavaScript do strony internetowej, który jest następnie wykonywany w przeglądarce ofiary.
Atak CSRF (Cross-Site Request Forgery)
Atak zmuszający zalogowaną ofiarę do wykonania niepożądanej akcji w aplikacji webowej (np. zmiany hasła lub przelewu) za pośrednictwem spreparowanego łącza.
Protokoły HTTP i HTTPS (TLS/SSL)
Protokoły warstwy aplikacji służące do przesyłania dokumentów hipertekstowych w modelu klient-serwer (HTTP na porcie 80, szyfrowany HTTPS na porcie 443).
Kody odpowiedzi HTTP (200, 301, 404, 500)
Trzycyfrowe kody zwracane przez serwer informujące klienta o statusie realizacji żądania HTTP.
Wyrażenia regularne (RegEx) w walidacji
Wzorce tekstowe służące do zaawansowanego dopasowywania, wyszukiwania i walidacji formatu danych (np. kod pocztowy, e-mail, PESEL, hasło).
Poziomy testowania oprogramowania (jednostkowe, integracyjne)
Metodyki weryfikacji jakości oprogramowania dzielące się na testy jednostkowe (unit), integracyjne, systemowe oraz techniki czarnoskrzynkowe i białoskrzynkowe.
Serwery WWW i środowiska lokalne (Apache, Nginx, XAMPP)
Oprogramowanie serwerowe obsługujące żądania HTTP oraz pakiety środowiska lokalnego (Apache + MariaDB + PHP + Perl).