V knize od GoF „Design Patterns: Elements of Reusable
Object-Oriented Software“ se pod pojmem MVC má na mysli „The MVC
triad of classes is used to build user interfaces in Smalltalk-80“. Dnes
by se řeklo, že MVC je framework pro tvorbu GUI ve Smalltalku. A autoři
se snaží hledat vzory použité v tomto frameworku.
Fowler v knize „Patterns of Enterprise Application
Architecture“ již považuje MVC za vzor: „Model View Controller
(MVC) is one of the most quoted (and most misquoted) patterns around“. Ale
popisuje ho ne jako vzor, ale jako princip, který zdůrazňuje
„separating the presentation from the model and separating the controller
from the view“. A dále uvádí, že pro první oddělení se obvykle
používá vzor Observer. Druhé oddělení se používá výjimečně (a např.
ani ve frameworku MVC pro Smalltalk odděleno nebylo) a pokud se implementuje,
tak se používá vzor Strategy.
Knihu Head First Design Pattern nemám po ruce, ale pokud si pamatuji, tak
MVC je v této knize označeno jako „vzor vzorů“ a ne jako
klasický návrhový vzor.
Z výchovného hlediska je chyba označit MVC za vzor. Mnohem
vhodnější je MVC věnovat maximálně 5 minut a většinu času věnovat
vzorům jako je Observer či Strategy. A kontrolovat, zda tyto vzory
naprogramují správně. Pokud někdo prohlásí, že používá/programuje vzor
MVC, tak nejlépe ho vytahat za uši.
V knize od GoF „Design Patterns: Elements of Reusable Object-Oriented Software“ se pod pojmem MVC má na mysli „The MVC triad of classes is used to build user interfaces in Smalltalk-80“. Dnes by se řeklo, že MVC je framework pro tvorbu GUI ve Smalltalku. A autoři se snaží hledat vzory použité v tomto frameworku.
Fowler v knize „Patterns of Enterprise Application Architecture“ již považuje MVC za vzor: „Model View Controller (MVC) is one of the most quoted (and most misquoted) patterns around“. Ale popisuje ho ne jako vzor, ale jako princip, který zdůrazňuje „separating the presentation from the model and separating the controller from the view“. A dále uvádí, že pro první oddělení se obvykle používá vzor Observer. Druhé oddělení se používá výjimečně (a např. ani ve frameworku MVC pro Smalltalk odděleno nebylo) a pokud se implementuje, tak se používá vzor Strategy.
Knihu Head First Design Pattern nemám po ruce, ale pokud si pamatuji, tak MVC je v této knize označeno jako „vzor vzorů“ a ne jako klasický návrhový vzor.
Z výchovného hlediska je chyba označit MVC za vzor. Mnohem vhodnější je MVC věnovat maximálně 5 minut a většinu času věnovat vzorům jako je Observer či Strategy. A kontrolovat, zda tyto vzory naprogramují správně. Pokud někdo prohlásí, že používá/programuje vzor MVC, tak nejlépe ho vytahat za uši.