![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mimo iż jestem w połowie pisania w/w modułu to przyłapałem się na tworzeniu kontrolero-widoku więc postanowiłem to trochę rozrysować. Zwracam się do was z pytanie czy jest to dobrze rozplanowane oraz czy zależności między klasami są poprawne. Przyjąłem że rozrysuję zachowanie klasy dla wyświetlania listy wpisów bloga (IMG:http://img296.imageshack.us/img296/4784/schematrz2.jpg) Klasa Blog pełni funkcję kontrolera głównego. Rozpoznaje akcje i wykonuje odpowiednie czynności. Po rozpoznaniu akcji wysyłane jest żądanie do SubKontrolera w klasie BlogEntries który to pobiera dane za pomocą metody x, pakuje je w obiekt klasy BlogEntry po czym używając SubKontrolera klasy BlogCategories pobiera kategorie, które są już zwracane jako tablica obiektów BlogCategory na koniec łączy wszystko z szablonem przy użyciu metody y i zwraca klasie Blog gotową listę wpisów. 1) Wiem że rysunek jest kiepski i wiem że nie ma on nic wspólnego z UML'em 2) Trochę to zagmatwane, jednak wydaje mi się że patrząc na rysunek można tok mojego rozumowania pojąć. Proszę o opinie i konstruktywną krytykę. Pozdrawiam. edit> Myślałem jeszcze nad wywoływanie pobierania kategorii przez widok bo w końcu nie jest powiedziane że zawsze widok będzie wyświetlał listę kategorii, ale mam wrażenie że jest to kolejny przypadek robienia kontrolero-widoku o którym wspomniałem na początku. edit> Dodałem tag do tytułu edit> Poprawiłem trochę treść bo się lekko zamotałem pisząc opis czynności Ten post edytował orglee 8.04.2008, 14:10:37 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Zdrzemnąłem się godzinkę i po przeczytaniu twojego posta doszedłem do wniosku,
że chcę zrobić kwadratowe koło po to żeby zachować zasadę obiektowości. Wywołanie metod przed drzemką: Blog: BlogEntries::zrobWidok() BlogEntries: this::pobierzWpisy() BlogEntries: this::zapakujWpisyDoKlasy BlogEntry BlogEntries: BlogCategories::pobierzKategorie() x razy dla każdego wpisu BlogCategories: this::zapakujWpisyDoKlasy BlogCategory BlogEntries: this::stworzWidok() BlogEntries: zwróć całość do blog Wywołanie metod po drzemce: Blog: BlogEntries::pobierzWpisy() - Zwróć je jako tablicę obiektów Blog: BlogCategories::pobierzKategorie() - Zwróć je jako tablicę obiektów Blog: this::stworzWidok() Dobrze jest sobie pospać od czasu do czasu... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 15:47 |