Modułowość jest osiągana w różnym stopniu przez różne podejścia do modularyzacji. Modułowość oparta na kodzie pozwala programistom na ponowne wykorzystanie i naprawę części aplikacji, ale narzędzia programistyczne są wymagane do wykonywania tych funkcji konserwacyjnych (np. aplikacja może wymagać ponownej kompilacji). Modułowość oparta na obiektach zapewnia aplikacji jako zbiór oddzielnych plików wykonywalnych, które mogą być niezależnie utrzymywane i zastępowane bez ponownego wdrażania całej aplikacji (np. pliki "dll" firmy Microsoft ; Pliki "obiektów współdzielonych" Sun/UNIX). Niektóre funkcje przesyłania wiadomości obiektowych pozwalają aplikacjom obiektowym na dystrybucję na wiele komputerów (np Microsoft COM+). Architektury zorientowane na usługi wykorzystują określone standardy/protokoły komunikacji do komunikacji między modułami.
Istnieje również alternatywne podejście – modularny monolit, które oznacza system monolityczny zaprojektowany w sposób modułowy. Posiada on prostszą infrastrukturę w porównaniu do np. architektury mikroserwisowej, a jednocześnie w takim systemie występują autonomiczne moduły biznesowe. Ponadto, takie podejście umożliwia łatwą migrację do architektury rozproszonej.
Przypisy
Kategoria:Architektura oprogramowania