
Spis treści
Paradygmaty programowania
Paradygmat to zbiór pojęć i teorii, które tworzą daną dyscyplinę. W programowaniu są trzy paradygmaty: programowanie strukturalne, programowanie obiektowe i programowanie funkcyjne. Żaden z nich nie mówi, jak należy programować. Wręcz odwrotnie, każdy z nich ogranicza wolność w programowaniu. Wygląda to następująco (źródło: Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów — Robert C. Martin, ss. 46-47):
- Programowanie strukturalne wymusza dyscyplinę bezpośredniego przekazywania sterowania (unikanie stosowanie instrukcji skoku: goto).
- Programowanie obiektowe wymusza dyscyplinę pośredniego przekazywania sterowania (narzucenie dyscypliny stosowania wskaźników do funkcji).
- Programowanie funkcyjne wymusza dyscyplinę podczas przypisywania wartości (przypisywanie wartości jest bardzo ograniczone).
Programowanie obiektowe pozwala stworzyć projekt opierającego się na koncepcji wtyczek. Możliwe jest to dzięki polimorfizmowi. Koncepcja wtyczek pozwala stworzyć system, w którym moduły wysokopoziomowe są niezależne od modułów niskopoziomowych (wtyczek).
Programowanie funkcyjne likwiduje problem związany z aktualizowaniem przez wiele wątków jednej zmiennej, ponieważ nie ma tam przypisania wartości. Rzeczywistość może być reprezentowana jako seria transakcji zmieniających stan, np. na koncie mamy 0 zł, wpłaciliśmy 1000 zł, wypłaciliśmy 200 zł. Stan konta = 0 + 1000 – 200 – 800 zł. Baza danych, która ma tylko operację Insert i Read, nie ma problemów ze współbieżnością aktualizacji.
Mamy tylko 3 paradygmaty oprogramowania, które powstały bardzo dawno temu. Można wysnuć wniosek, że oprogramowanie nie rozwija się tak gwałtownie, jak nam się wydaje. Jego podstawy są takie same od dziesięcioleci.
Wszystkie posty związane z mini projektem: Budowa czystej architektury:
- Początek mini projektu: Budowa czystej architektury
- Architektura
- Paradygmaty programowania
- Zasady SOLID w kontekście architektury
- Spójność komponentów
- Łączenie komponentów
- Struktura oprogramowania
- Zasady i poziomy
- Czysta architektura
- Budowanie Czystej architektury
- Podsumowanie projektu: Budowanie czystej architektury
- Moje notatki z nauki szybkiego czytania
Źródła
Obrazy
Materiały
- Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów — Robert C. Martin.
- https://pl.wikipedia.org/wiki/Paradygmat
- https://mfiles.pl/pl/index.php/Programowanie_strukturalne