Autor: Damian Tylczyński
Aktualne serwisy internetowe coraz częściej przypominają rozbudowane aplikacje, tworzone w dużych zespołach programistów z myślą o długofalowym rozwoju. Opowiem jak okiełznać pokaźne bazy kodu i umożliwić elastyczną rozbudowę aplikacji dzięki architekturom typu plug-in.
4. „smaller parts (modules) that can be
independently created and then used in different
systems to drive multiple functionalities”
- Wikipedia, Modular design
5. Plug-in
Niezmienna postać,
Stabilne API zmienna funkcjonalność
na żądanie
System
architektury
plug-in Miejsce na dalszy rozwój
Usługi systemu
6. „LINUX is a monolithic style system. This is a
giant step back into the 1970s. That is like taking
an existing, working C program and rewriting it in
BASIC. To me, writing a monolithic system in
1991 is a truly poor idea„
- Andy Tanenbaum
18. Zależności
Udostępnianie „narzędzi”
Pliki multimedialne
Instalacja
Plug-in to nie tylko „jakaś”
funkcja do wywołania
Reagowanie
Aktualizacja
Nadpisywanie
19. Abstrakcja System
M C V
bazy danych szablonów
Obsługa
Wywołanie Odpowiedź
żądania
akcji HTTP
HTTP
Zarządzanie
Jądro plug-in Plug-iny
20. Plug-in musi mieć możliwość komunikacji
z innymi częściami systemu
(i z innymi pluginami)