Prelection about alternative for MVC, presented at PHPersPL meetup in Gdańsk, 26.10.2015.
ADR is a concept to provide clean and SOLID delivery pattern, designed for HTTP applications and proposed by Paul M. Jones. First implementation of ADR you can find in Radar Framework (written in PHP), fulfilling the assumptions of PSR-7 by FIG.
6. MVC
Przyjmuje dane wejsciowe i
reaguje na akcje
użytkownika zarządzając
aktualizację modelu lub
widoku
Opisuje sposób
reprezentacji danych w
ramach GUI
7. MVC
Przyjmuje dane wejsciowe i
reaguje na akcje
użytkownika zarządzając
aktualizację modelu lub
widoku
Opisuje sposób
reprezentacji danych w
ramach GUI
Reprezentuje problem lub
logikę aplikacji
9. MVC
• Composite pattern
• Observer pattern
• Strategy pattern
Gang of Four
• Factory method pattern
• Decorator pattern
10. MVC
• Composite pattern
• Observer pattern
• Strategy pattern
Gang of Four
• Factory method pattern
• Decorator pattern
patrz też: Frank Buschmann, Kevlin Henney, Douglas C. Schmidt: Pattern-oriented software architecture: On patterns and pattern languages
Volume 5. Wiley, 2007, s. 178-179. ISBN 978-0471486480. (ang.)
28. Podsumowując
MVC i ADR to wzorce dla GUI, nie architektura aplikacji
ADR to alternatywa dostosowana do HTTP (i PHP w szczególnosci)
29. Podsumowując
MVC i ADR to wzorce dla GUI, nie architektura aplikacji
ADR to alternatywa dostosowana do HTTP (i PHP w szczególnosci)
Uwzględniająca PSR-7
30. Podsumowując
MVC i ADR to wzorce dla GUI, nie architektura aplikacji,
ADR to alternatywa dostosowana do HTTP (i PHP w szczególnosci),
Uwzględniająca PSR-7,
ale nie zbawiająca swiat.
Model View Presenter - prezentr posiada pewną wiedzę o GUI i mapuje akcje na zmiany widoku lub modelu
Presentation Abstract Controller - hierarchiczne drzew agentów "Control" z przypisanymi im czesciami Present i Abstraction
Herarchical MVC - PAC oparty o MVC
Passive View - zerwane powiązania modelu z widokiem
MV ViewModel - czesc przezentacji ma swój model; zawiera logikę związaną z reprezentacją danych.