Przy odpowiednich założeniach każdy kod poza naszym jest źle napisany
Ale do rzeczy - narzucają się dwa logiczne rodzaje implementacji:
- scentralizowany (moduł jest integralną częścią serwisu)
- zdecentralizowany (moduł jest oddzielnym skryptem)
Ja wybrałem tą drugą opcję, bo tak mi wygodniej, założenia na jakich się oparłem:
- każdy moduł ma własny PA
- każdy moduł ma własny kod i bazę (nawet jeśli oznacza to dublowanie, coś za coś)
- każdy moduł ma własny system szablonów, style, skrypty, grafikę i tak dalej
- każdy moduł "wypluwa" gotową zmienną lub tablice zmiennych, których można użyć gdzie nam się podoba
- każdy moduł można prosto dodawać w PA systemu po uprzednim wrzuceniu plików i instalacji
- implementacja jest prosta: np. w kategorii 1/1.3/1.3.7 mamy zainstalowane moduły "pogoda" i "kursy walut" (po dodaniu modułu w PA pojawia się on oczywiście na liście dostępnych modułów), w bazie jest informacja, które pliki należy zaincludować oraz pod jaką nazwą zmienne z tych modułów będą dla nas dostępne i możemy ich użyć w szablonie, z którego ta kategoria korzysta.
Ale to wszystko i tak o kant d..., jeśli nie ma się wizji, jak to ma działać