Zine.net online

Witaj na Zine.net online Zaloguj się | Rejestracja | Pomoc
w Szukaj

arkadiusz.wasniewski

Dobre praktyki w projektowaniu aplikacji mobilnych

W ostatnią sobotę (21.04.2007) na VI spotkaniu Warszawskiej Grupy .NET miałem przyjemność wystąpić z prezentacją dotyczącą wzorców projektowych, które warto zastosować programując urządzenia mobilne. Sam plik zawierający slajdy to oczywiście za mało, więc poniżej kilka dodatkowych opisów.

Service Locator, slajdy 18 i 19

Klasa ObjectLocator oparta o wzorzec ServiceLocator została we, ze względu na chęć umieszczenia wszystkiego na slajdzie, właściwościach pozbawiona możliwości nadawania nowych wartości. Rzeczywista klasa powinna taką możliwość udostępniać - chociażby w celu umożliwienia napisania klas testujących. Oczywiście można pozostawić właściwości jako tylko do odczytu i dodać dodatkowy konstruktor (np. internal) umożliwiający przypisanie odpowiednich wartości początkowych.

Przykładowa implementacja interfejsu prezentera, slajd 35

W czasie dyskusji podczas prezentacji padła sugestia, iż klasa prezentera, w tym wypadku MainMenuPresenter, powinna być zarejestrowana w systemie, podobnie jak widoki ze slajdu 32, poprzez interfejsy. Chodzi o sytuację, kiedy jeden użytkownik aplikacji chce mieć w menu głównym powiedzmy sześć poleceń menu, a inny tylko pięć. Wtedy faktycznie, tego typu działanie byłoby bardziej wskazane. Pomysł ten jednak nie rozwiązuje przypadku, kiedy w aplikacji mamy np. formularz wyświetlający listę produktów w kilku miejscach (przypadkach użycia) programu i jeden z użytkowników zapragnie, aby w konkretnej sytuacji była np. inna kolejność kolumn etc. W tego typu sytuacjach lepiej pozostać przy sposobie zaproponowanym na slajdzie, wprowadzając natomiast klasy potomne dla danych przypadków użycia, czyli klas odpowiadających za logikę przejść pomiędzy ekranami.

Pliki:

Opublikowane 23 kwietnia 2007 14:03 przez arkadiusz.wasniewski

Komentarze:

 

mgrzeg said:

Bylem, widzialem, miod i wino pilem :) . Prezentacja bardzo ciekawa i swietnie poprowadzona: 10/10 :)

kwietnia 23, 2007 21:11
 

arkadiusz.wasniewski said:

Jedną z cech dobrego oprogramowania są luźne powiązania pomiędzy klasami. Droga do tego celu ciężka i

sierpnia 24, 2008 11:49
Komentarze anonimowe wyłączone
W oparciu o Community Server (Personal Edition), Telligent Systems