CRUD
CRUD (Create, Read, Update, Delete)
Intuicja: Wyobraź sobie, że prowadzisz listę kontaktów w telefonie. Musisz móc dodać kogoś nowego, przejrzeć listę, zmienić czyjś numer i usunąć kontakt, gdy przestanie być potrzebny. To właśnie jest CRUD w czystej postaci.
Czym jest CRUD?
CRUD to akronim opisujący cztery elementarne operacje, które można wykonać na trwałych danych (czyli takich, które nie znikają po wyłączeniu aplikacji). Prawie każda aplikacja, z której korzystasz – od Facebooka po system bankowy – to w dużej mierze ładnie opakowany interfejs do operacji CRUD.
Mapowanie CRUD na technologie
Zrozumienie CRUD jest kluczowe, ponieważ te same koncepcje pojawiają się w bazach danych (SQL) oraz w komunikacji między systemami (HTTP/REST).
| Operacja | Opis | SQL (Bazy danych) | HTTP (REST API) |
|---|---|---|---|
| Create | Tworzenie nowego wpisu. | INSERT |
POST |
| Read | Pobieranie lub odczyt danych. | SELECT |
GET |
| Update | Modyfikacja istniejącego wpisu. | UPDATE |
PUT / PATCH |
| Delete | Usuwanie danych. | DELETE |
DELETE |
CRUD w praktyce: Przykład “Systemu Zamówień”
Z perspektywy użytkownika, CRUD objawia się poprzez konkretne akcje w interfejsie:
- Create: Klikasz przycisk „Złóż nowe zamówienie” i wypełniasz formularz. Dane trafiają do bazy.
- Read: Wchodzisz w zakładkę „Moje zamówienia”, aby sprawdzić status przesyłki. System pobiera dane z bazy.
- Update: Zauważasz błąd w adresie i klikasz „Edytuj adres dostawy”. System aktualizuje rekord w bazie.
- Delete: Decydujesz się wycofać zamówienie i klikasz „Anuluj”. System usuwa wpis (lub zaznacza go jako nieaktywny).
Rola Analityka w projektowaniu CRUD
Dla analityka biznesowego i systemowego, CRUD to coś więcej niż techniczne polecenia. To podstawa definiowania uprawnień i logiki biznesowej:
- Matryca Uprawnień (CRUD Matrix): Kto może tworzyć wpisy, a kto tylko je czytać? (Np. Klient widzi tylko swoje zamówienia, ale Administrator widzi wszystkie).
- Soft Delete vs Hard Delete: Czy dane mają znikać z bazy na zawsze (Hard), czy tylko być oznaczane jako usunięte (Soft), aby zachować historię dla celów audytowych?
- Walidacja: Jakie warunki muszą być spełnione, aby operacja Create była możliwa? (Np. nie można dodać użytkownika bez poprawnego adresu e-mail).
Czy wszystko jest CRUD-em?
Choć większość aplikacji opiera się na tym modelu, istnieją podejścia, które od niego odchodzą:
- Event Sourcing: Zamiast nadpisywać dane (Update), zapisujemy każdą zmianę jako osobne zdarzenie. Dzięki temu możemy “przewinąć” historię systemu do dowolnego momentu.
- Append-only: Systemy, w których można tylko dodawać i czytać dane (np. Logi systemowe lub Blockchain), gdzie Update i Delete są zabronione z definicji.
Podsumowanie
CRUD to alfabet programowania i analizy. Bez względu na to, czy projektujesz prosty arkusz w Excelu, czy skomplikowany system ERP, zawsze będziesz wracać do pytania: jak stworzyć, odczytać, zaktualizować i usunąć te dane? Opanowanie tego schematu pozwala na szybkie zrozumienie struktury niemal każdego systemu informatycznego.
Powiązane pojęcia:
Kliknij w pojęcie, aby przejść do jego definicji w słowniku
Inne pojęcia ze słownika
Modelowanie Danych (ERD – Entity Relationship Diagram)
Wizualna reprezentacja struktury bazy danych, pokazująca relacje między encjami (obiektami), ich atrybuty oraz liczebność powiązań.
Czytaj więcej →Wymaganie funkcjonalne
Opis konkretnej czynności lub zachowania, które system musi być w stanie wykonać w odpowiedzi na działania użytkownika lub inne bodźce wejściowe.
Czytaj więcej →Przypadek użycia (Use Case)
Opis interakcji między zewnętrznym aktorem (użytkownikiem lub innym systemem) a systemem informatycznym, prowadzącej do osiągnięcia konkretnego celu.
Czytaj więcej →
Latarnia Analizy