Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałWładysława Żurański Został zmieniony 10 lat temu
1
Wnioski z pewnego projektu
2
Projekt Multigrids:
3
Struktura: MultigridFrame/MultigridApplet –WektorZerowyPanel ControlPanel GraphPanel WektorPoczatkowy ->IteracjePanel –IteracjePanel ControlPanel GraphPanel Numeryka ->WektorPoczatkowy
4
Działanie: MultigridFrame/Applet –tworzy WektorZerowyPanel –tworzy IteracjePanel –WektorZerowyPanel.iteracjePanel -> IteracjePanel WektorZerowyPanel: –Zmiana na ControlPanelu zmienia WektorPoczatkowy przekazuje WektorPoczatkowy do GraphPanel przekazuje WektorPoczatkowy do iteracjePanel
5
Działanie: IteracjePanel –Zmiana na ControlPanelu lub –zmiana WektoraPoczatkowego: tworzy nową Numerykę przekazuje do niej parametry startuje iteracje przekazuje wynik do GraphPanelu GraphPanel reaguje na zmianę danych wejściowych.
6
Lepsze jest wrogiem dobrego: Jest dobrze, bo: –struktura jest poprawnie zmodularyzowana – 2 duże moduły realizujące wzorzec MVC (Model – obiekt numeryczny, View – graphPanel, Controller – panel z suwakami) Minimalna komunikacja między modułami Łatwość modyfikacji klasy głównej (application/applet)
7
Jest dobrze, bo: –używamy wielokrotnie komponentu GraphPanel – ew. modyfikacje będziemy wprowadzać w jednym miejscu –mamy poprawnie zdefiniowaną klasę Numeryka i dziedziczące po niej realizacje (Richardson/Jacobi) wybierane z GUI –GUI ma jednorodną formę dzięki użyciu wzorca "ulepszonego suwaka"
8
Może być lepiej: –"ulepszony suwak" możemy zrealizować jako osobną klasę – trochę uniwersalności i łatwe stosowanie –wybór klas numerycznych można zrealizować z użyciem wzorca Factory –W przyszłości będzie można doładowywać nowe klasy dynamicznie
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.