Ostatnio w społeczności Ruby on Rails mówi się o dekoratorach i prezenterach.
Jaka jest zasadnicza różnica między nimi? Jeśli tak, jakie są wskazówki, które podpowiadają mi, którego użyć zamiast drugiego? A może użyć tych dwóch w połączeniu?
Ostatnio w społeczności Ruby on Rails mówi się o dekoratorach i prezenterach.
Jaka jest zasadnicza różnica między nimi? Jeśli tak, jakie są wskazówki, które podpowiadają mi, którego użyć zamiast drugiego? A może użyć tych dwóch w połączeniu?
Odpowiedzi:
Dekorator to raczej „dodajmy jakąś funkcjonalność do tej jednostki”. Prezenter to raczej „zbudujmy pomost między modelem / zapleczem a widokiem”. Wzór prezentera ma kilka interpretacji.
Dekoratory mają charakter ogólny / ogólnego przeznaczenia. Prezenterzy mają węższy zakres obowiązków / zastosowań. Dekoratory są używane w różnych domenach, prezenterzy są prawie zawsze związani z funkcjami podobnymi do wyświetlania.
Proponuję to sprawdzić - Wystawa kontra prezenter .
Dekorator to wzorzec projektowy, który służy do rozszerzania funkcjonalności określonego obiektu poprzez zawijanie go bez wpływu na inne wystąpienia tego obiektu. Ogólnie wzorzec dekoratora jest przykładem zasady otwórz / zamknij (klasa jest zamknięta dla modyfikacji, ale dostępna dla rozszerzeń).
Wzory eksponatu i prezentera są rodzajem wzoru dekoratora.