Paradygmaty programowania

przez Karol Bocian | 27 maja, 2020

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:

Źródła

Obrazy

Materiały

Kategoria: Projekt Budowa czystej architektury

O Karol Bocian

Programowanie i świat agentów programowalnych, który poznał na Wydziale Matematyki i Nauk Informacyjnych, wciągnął go w przemysł IT. W trakcie swojej praktyki zawodowej Karol zrozumiał, że nie ważne co się robi i kim się jest, ale wiedza z zarządzania przydaje się wszędzie. Rozpoczął studia na kierunku Zarządzanie i Inżyniera Produkcji. W przypadku Karola zarządzanie to nie tylko teoria czy praca, ale prawie każdy element jego życia, to jego pasja.