E-materiały do kształcenia zawodowego

Wzorce projektowe

INF.04 Projektowanie, programowanie i testowanie aplikacji – Technik programista 351406

bg‑green

Słownik pojęć dla e‑materiału

1
Instrukcja korzystania ze słownika

Słownik pojęć do e‑zasobu zawiera hasła oraz ich definicje. Hasła zostały ułożone w kolejności alfabetycznej. Wybrane pojęcia zawierają również odsyłacze (linki) do elementów składowych e‑zasobu, w których zostały użyte.

Poprawne korzystanie ze słownika pojęć pozwoli ci opanować podstawowy zasób słownictwa branżowego oraz ułatwi przyswojenie wiedzy zawartej w e‑materiale.

1
abstrakcja
abstrakcja

koncepcja wykorzystywana w programowaniu mająca na celu uogólnienie i uproszczenie pewnego aspektu; abstrakcja zawiera w sobie ogólny opis jakiejś struktury (klasyklasaklasy lub obiektuobiektobiektu) zawierający w sobie najważniejsze informacje dotyczące tej struktury, takie jak podstawowe metodymetodametody czy atrybuty, z kolei bardziej szczegółowe i skomplikowane elementy opisujące daną strukturę znajdują się w implementacjiimplementacja (programowanie obiektowe)implementacji; wykorzystanie abstrakcji i implementacji można porównać do budowy pilota: abstrakcją będą tu widoczne dla użytkownika proste w odczycie i użyciu przyciski, implementacją z kolei będzie wnętrze pilota, czyli płytka oraz okablowanie, które sprawiają, że używanie przycisków przez użytkownika działa; zastosowanie abstrakcji daje dwie podstawowe zalety: pozwala klientowi korzystać z prostych metod, które po odwołaniu do implementacji wykonają pożądaną operację i pozwala stworzyć kilka implementacji dla jednej abstrakcji, np. w sytuacji, gdy chcemy uruchomić przeglądarkę internetową na różnych systemach operacyjnych, gdzie ikonka przeglądarki będzie abstrakcją, często taką samą dla każdego systemu operacyjnego, z kolei implementacji będzie tyle, na ilu systemach operacyjnych dana przeglądarka może zostać użyta

biblioteka
biblioteka

plik zawierający w sobie programy, podprogramy, funkcjefunkcjafunkcje, dane, klasyklasaklasy, obiektyobiektobiekty i inne informacje, które mogą zostać wykorzystane z poziomu kodu źródłowego; biblioteki pozwalają na ponowne użycie raz napisanego kodu i udostępnianie go innym użytkownikom, można taką bibliotekę porównać do skrzynki z narzędziami, gdzie narządziami są stworzone wcześniej przez kogoś linijki kodu opisujące m.in. różne funkcje, które potem mogą wykorzystywać inni programiści

builder
builder

kreacyjny wzorzec projektowy, którego celem jest rozdzielenie sposobu tworzenia obiektów od ich reprezentacji; proces tworzenia obiektu podzielony jest na kilka mniejszych etapów a każdy z tych etapów może być implementowany na wiele sposobów.

ciąg zaburzający
ciąg zaburzający

tzw. sól, dane losowe, które dodawane są do hasła podczas obliczania funkcji skrótu; pomaga chronić hasła przed atakami słownikowymi

design pattern
design pattern

wzorzec projektowy; abstrakcyjne rozwiązanie, które ma za zadanie pokazać powiązania oraz zależności pomiędzy klasami i obiektami

domena
domena

podstawowy składnik tożsamości internetowej; element adresu internetowego, który kieruje wyszukujących na żądaną stronę

framework
framework

nazywany też platformą programistyczną, jest programem, który daje możliwość tworzenia innych aplikacji na podstawie pewnych zdefiniowanych szablonów, zawiera w sobie niezbędne bibliotekibibliotekabiblioteki i komponenty pozwalające tworzyć aplikacje zgodnie z określonym wzorcem architektonicznym zaimplementowanym we frameworku; framework może dawać możliwość tworzenia aplikacji z użyciem więcej niż jednego wzorca architektonicznego

funkcja
funkcja

część robocza kodu, odpowiada za wykonywanie różnych operacji; nazywa się ją czasami podprogramem; przyjmuje ona pewne argumenty, wykonuje operacje i czasem zwraca jakąś wartość oczekiwaną przez programistę

hash
hash

funkcja skrótu, funkcja mieszająca; jest nieodwracalna; zmienia dane na wartość znakową o stałym rozmiarze

implementacja
implementacja

wersja programu, języka programowania lub systemu operacyjnego przystosowana do pracy na określonym typie komputera

implementacja (programowanie obiektowe)
implementacja (programowanie obiektowe)

koncepcja stosowana w programowaniu wraz z abstrakcjąabstrakcjaabstrakcją, zawiera w sobie szczegółowy kod odpowiadający za działanie funkcjonalności, do której dostęp klientowi zapewnia abstrakcja

interfejs
interfejs

zasady łączenia ze sobą i współpracy dwóch różnych urządzeń lub programów; też: urządzenie lub program realizujące te zasady

interfejs (programowanie obiektowe)
interfejs (programowanie obiektowe)

klasaklasaklasa, która zawiera w sobie jedynie metodymetodametody i często jest wykorzystywana przy tworzeniu interacji wewnątrz kodu – często wykorzystuje się takie klasy przy tworzeniu abstrakcjiabstrakcjaabstrakcji

interfejs użytkownika
interfejs użytkownika

program umożliwiający współpracę użytkownika z oprogramowaniem komputera

klasa
klasa

struktura wykorzystywana w programowaniu obiektowym do tworzenia obiektówobiektobiektów; definiuje ona, jakie operacje (metodymetodametody) mogą być na nich wykonywane i jakie mają właściwości (np. jaki mogą przyjmować stan); obiekt wytworzony za pomocą danej klasy nazywa się instancją tej klasy

logika
logika

zbiór operacji działających na otrzymanych danych wejściowych i generujących na ich podstawie dane wyjściowe i wykonujących na ich podstawie określone operacje zdefiniowane przez programistę; logika opisuje, w jaki sposób informacje pochodzące np. od użytkownika mają zostać opracowane i jakim operacjom mają zostać poddane, aby móc wygenerować odpowiedź oczekiwaną przez użytkownika

metoda
metoda

funkcjafunkcjafunkcja lub operacja, jaka możę zostać wykonana na danym obiekcieobiektobiekcie; metody definiuje się w klasachklasaklasach

obiekt
obiekt

podstawowa struktura w programowaniu obiektowym, która posiada swoje właściwości (atrybuty) oraz metody, czyli funkcje, które może ona wykonać; obiekty w programowaniu obiektowym wykorzystywane są do organizowania kodu, dzięki czemu jego rozbudowanie jest ograniczone i wzrasta jego czytelność, co ma ogromne znaczenie przy dużych aplikacjach

Software House
Software House

przedsiębiorstwo zajmujące się tworzeniem oprogramowania

szyfrowanie
szyfrowanie

forma kryptografii polegająca na zakodowaniu danych w taki sposób, aby stały się nieczytelne

wzorce behawioralne
wzorce behawioralne

inaczej wzorce czynnościowe; skupiają się na opisie algorytmów, podziale odpowiedzialności pomiędzy obiekty oraz charakterystyce interakcji pomiędzy nimi