Visual_Basic_Wzorce_projektowe_vbwzor.pdf

(215 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
Visual Basic.
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
Wzorce projektowe
Autorzy: James W. Cooper
T³umaczenie: Jaromir Senczyk
Tytu³ orygina³u:
Visual Basic. Design Patterns. VB 6.0
and VB.NET
ISBN: 83-7197-710-7
Liczba stron: 440
Ta ksi¹¿ka jest praktycznym podrêcznikiem tworzenia programów w jêzyku Visual Basic
(w wersji 6 oraz .NET) wykorzystuj¹cych wzorce projektowe. Mo¿e s³u¿yæ tak¿e jako
krótkie wprowadzenie do programowania w nowej wersji .NET jêzyka Visual Basic.
Wzorce projektowe omówiono w niej w szeregu krótkich rozdzia³ów, z których ka¿dy
przedstawia jeden wzorzec i ilustruje jego wykorzystanie za pomoc¹ jednego lub wiêcej
kompletnych i dzia³aj¹cych programów z okienkowym interfejsem u¿ytkownika. Ka¿dy
rozdzia³ zawiera te¿ diagramy UML ilustruj¹ce powi¹zania pomiêdzy klasami
wystêpuj¹cymi w implementacji wzorca.
Dziêki niniejszej ksi¹¿ce czytelnik dowie siê, ¿e wzorce projektowe stanowi¹
powszechnie stosowany sposób organizacji obiektów w programach w celu ich
uproszczenia i u³atwienia póŸniejszych modyfikacji. Wzorce projektowe wprowadzaj¹
tak¿e zasób nowych pojêæ, dziêki któremu ³atwiej mo¿na opisaæ konstrukcje tworzonych
programów.
Programiœci w trakcie zapoznawania siê z tematyk¹ wzorców projektowych doznaj¹
zwykle momentu olœnienia odkrywaj¹c potêgê poznawanego wzorca. Moment ten
oznacza, ¿e w³aœnie uœwiadomili sobie, w jaki sposób mog¹ wykorzystaæ dany wzorzec
w swojej pracy.
TWÓJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOŒCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
Przedmowa......................................................................................................... 13
Część I
Rozdział 1.
Programowanie obiektowe w języku Visual Basic ..........15
Czym są wzorce projektowe? ......................................................... 17
Definicja wzorców projektowych ..................................................................................18
Proces uczenia się ..........................................................................................................20
Studiowanie wzorców projektowych .............................................................................21
Uwagi na temat podejścia obiektowego.........................................................................21
Wzorce projektowe w Visual Basicu .............................................................................22
Jak zorganizowana jest ta ksią ka? ................................................................................22
Rozdział 2.
Diagramy UML............................................................................... 23
Dziedziczenie .................................................................................................................24
Interfejsy ........................................................................................................................25
Kompozycja ...................................................................................................................26
Adnotacje .......................................................................................................................27
Diagramy UML — program WithClass.........................................................................27
Pliki projektów Visual Basica........................................................................................28
Rozdział 3.
Klasy i obiekty w Visual Basicu...................................................... 29
Prosty program konwersji temperatur............................................................................29
Tworzenie klasy Temperature........................................................................................30
Konwersja na stopnie Kelvina ................................................................................32
Przesunięcie decyzji do klasy Temperature ...................................................................32
Zastosowanie klas do konwersji wartości i formatu ......................................................34
Obsługa niedozwolonych wartości .........................................................................36
Klasa String Tokenizer...................................................................................................36
Klasy i obiekty ...............................................................................................................38
Zawieranie klas .......................................................................................................40
Inicjalizacja klasy...........................................................................................................40
Klasy i metody typu Property ........................................................................................41
Kolejny przykład interfejsu klasy — woltomierz ..........................................................43
Klasa vbFile ...................................................................................................................43
Styl programowania w Visual Basicu ............................................................................45
Podsumowanie ...............................................................................................................46
Rozdział 4.
Programowanie obiektowe............................................................. 47
Tworzenie obiektów w Visual Basicu ...........................................................................48
Tworzenie instancji obiektów ........................................................................................49
Program do pomiaru odległości .....................................................................................49
Metody wewnątrz obiektów...........................................................................................50
Zmienne .........................................................................................................................50
4
Visual Basic. Wzorce projektowe
Przekazywanie parametrów przez referencję i przez wartość........................................51
argon obiektowy ..........................................................................................................51
Rozdział 5.
Tworzenie kontrolek w Visual Basicu.............................................. 53
Podświetlone pole tekstowe ...........................................................................................53
Zmiana wymiarów kontrolki...................................................................................55
Testowanie kontrolki HiText .........................................................................................55
Właściwości i metody kontrolki ....................................................................................56
Kompilacja .....................................................................................................................57
Podsumowanie ...............................................................................................................57
Rozdział 6.
Dziedziczenie i interfejsy................................................................ 59
Interfejsy ........................................................................................................................59
Symulator inwestycji......................................................................................................60
Implementacja symulatora .............................................................................................61
Kiedy u yć interfejsu? ...................................................................................................62
Metody wspólne.............................................................................................................65
Interfejsy ukryte .............................................................................................................66
Podsumowanie ...............................................................................................................67
Rozdział 7.
Wprowadzenie do języka Visual Basic .NET .................................... 69
Ró nice w składni Visual Basic .NET ...........................................................................69
Ulepszona składnia funkcji .....................................................................................70
Deklaracje zmiennych i ich zakresy...............................................................................71
Obiekty w Visual Basic .NET.................................................................................72
Opcje kompilatora..........................................................................................................73
Zmienne numeryczne w Visual Basic .NET ...........................................................74
Właściwości w języku Visual Basic wersja 6 i VB.NET ..............................................74
Skrócona notacja operacji przypisania ............................................................................75
Języki prekompilowane i zarządzanie pamięcią ............................................................76
Klasy w Visual Basic .NET ...........................................................................................76
Tworzenie aplikacji w środowisku Visual Basic .NET .................................................78
Najprostszy program okienkowy w Visual Basic .NET ................................................79
Zastosowanie dziedziczenia ...........................................................................................81
Konstruktory ..................................................................................................................82
Programowanie grafiki w Visual Basic .NET................................................................84
Podpowiedzi i kursory ...................................................................................................85
Przecią anie metod ........................................................................................................85
Dziedziczenie w języku Visual Basic .NET......................................................................86
Przestrzenie nazw...........................................................................................................87
Klasa Square............................................................................................................88
Dostęp do składowych klasy..........................................................................................89
Zastępowanie metod w klasach pochodnych .................................................................89
Przecią anie i przesłanianie ...........................................................................................90
Zastępowanie kontrolek .................................................................................................92
Interfejsy ........................................................................................................................93
Podsumowanie ...............................................................................................................94
Rozdział 8.
Tablice, pliki oraz wyjątki w Visual Basic .NET ............................... 95
Tablice............................................................................................................................95
Kolekcje .........................................................................................................................97
Klasa ArrayList .......................................................................................................97
Tablice z kodowaniem mieszającym ......................................................................98
Klasa SortedList ......................................................................................................98
Wyjątki...........................................................................................................................98
Obsługa wielu wyjątków................................................................................................99
Spis treści
5
Wywoływanie wyjątków..............................................................................................100
Operacje na plikach......................................................................................................100
Klasa File ..............................................................................................................101
Odczyt danych z pliku tekstowego .......................................................................102
Zapis danych w pliku tekstowym..........................................................................102
Wyjątki a operacje na plikach ......................................................................................102
Sprawdzanie osiągnięcia końca pliku ..........................................................................103
Klasa FileInfo...............................................................................................................103
Klasa vbFile .................................................................................................................104
Część II
Rozdział 9.
Wzorce konstrukcyjne ................................................107
Wzorzec Simple Factory............................................................... 109
Sposób działania wzorca Simple Factory ....................................................................109
Przykładowy program ..................................................................................................110
Klasy pochodne............................................................................................................110
Klasa Simple Factory ...................................................................................................111
U ycie fabryki.......................................................................................................112
Implementacja fabryki w Visual Basic .NET ..............................................................113
Fabryki w obliczeniach matematycznych ....................................................................114
Zagadnienia do przemyślenia.......................................................................................115
Rozdział 10. Wzorzec Factory Method ............................................................. 117
Klasa Swimmer ............................................................................................................120
Klasa Events i jej klasy pochodne................................................................................120
Rozstawienie bezpośrednie ..........................................................................................122
Rozstawienie okalające .........................................................................................123
Program rozstawiający .................................................................................................124
Jeszcze jedno zastosowanie fabryki .............................................................................124
Program rozstawiający w Visual Basic .NET ..............................................................125
Kiedy nale y u ywać wzorca Factory Method? ..........................................................127
Zagadnienia do przemyślenia.......................................................................................128
Rozdział 11. Wzorzec Abstract Factory ............................................................ 129
Abstract Factory i projektowanie ogrodów .....................................................................129
Interfejs u ytkownika programu Gardener ..................................................................131
Abstract Factory w Visual Basic .NET ........................................................................133
PictureBox.............................................................................................................135
Obsługa zdarzeń wyboru.......................................................................................135
Rozbudowa programu o kolejne klasy.........................................................................137
Konsekwencje stosowania wzorca Abstract Factory ...................................................137
Zagadnienia do przemyślenia.......................................................................................137
Rozdział 12. Wzorzec Singleton ....................................................................... 139
Wzorzec Singleton i metody statyczne ........................................................................139
Obsługa błędów............................................................................................................141
Globalny punkt dostępu ...............................................................................................141
Kontrolka MSComm i wzorzec Singleton ...................................................................142
Porty dostępne w systemie ....................................................................................143
Wzorzec Singleton w Visual Basic .NET ....................................................................144
Zastosowanie konstruktora o dostępie prywatnym ...............................................145
Obsługa błędów.....................................................................................................145
Program SpoolDemo....................................................................................................146
Globalny punkt dostępu ...............................................................................................148
Inne konsekwencje wzorca Singleton ..........................................................................148
Zagadnienia do przemyślenia.......................................................................................148
6
Visual Basic. Wzorce projektowe
Rozdział 13. Wzorzec Builder........................................................................... 149
Program do śledzenia inwestycji..................................................................................150
Zastosowanie wzorca Builder ......................................................................................151
Budowniczy okna listy wyboru....................................................................................153
Budowniczy okna pól wyboru .....................................................................................154
Implementacja wzorca Builder w Visual Basic .NET .................................................155
Klasa StockFactory ...............................................................................................156
Klasa CheckChoice ...............................................................................................157
Klasa ListboxChoice .............................................................................................158
Kolekcje obiektów klasy Items ....................................................................................159
Ostateczna wersja programu .................................................................................160
Konsekwencje zastosowania wzorca Builder ..............................................................160
Zagadnienia do przemyślenia.......................................................................................162
Rozdział 14. Wzorzec Prototype ...................................................................... 163
Klonowanie obiektów w Visual Basicu wersja 6.........................................................164
Zastosowanie prototypu ...............................................................................................164
Zastosowanie wzorca Prototype...................................................................................167
Dodatkowe metody w klasach pochodnych..........................................................168
Ró ne klasy o wspólnym interfejsie .....................................................................169
Mened er prototypów ..................................................................................................171
Wzorzec Prototype w Visual Basic .NET ....................................................................172
Konsekwencje stosowania wzorca Prototype ..............................................................175
Zagadnienia do przemyślenia.......................................................................................176
Podsumowanie wzorców konstrukcyjnych ..................................................................176
Część III
Wzorce strukturalne ...................................................177
Przenoszenie danych pomiędzy listami .......................................................................179
Zastosowanie MSFlexGrid ..........................................................................................180
Wykorzystanie TreeView ............................................................................................183
Adapter obiektów ..................................................................................................183
Adaptery w Visual Basic .NET....................................................................................184
Adapter kontrolki TreeView w VisualBasic.NET .......................................................186
Zastosowanie DataGrid................................................................................................187
Adapter klas .................................................................................................................188
Adaptery podwójne ......................................................................................................189
Adaptery obiektów i adaptery klas w Visual Basic .NET............................................190
Adaptery dynamiczne ..................................................................................................190
Adaptery w języku Visual Basic ..................................................................................190
Zagadnienia do przemyślenia.......................................................................................190
Rozdział 15. Wzorzec Adapter ......................................................................... 179
Rozdział 16. Wzorzec Bridge ........................................................................... 191
Klasy visList ................................................................................................................194
Diagram klas ................................................................................................................194
Rozbudowa mostu........................................................................................................195
Kontrolki ActiveX jako mosty .....................................................................................196
Wzorzec Bridge w Visual Basic .NET.........................................................................198
Klasa ProductList ..................................................................................................198
Klasa ProductTable ...............................................................................................199
Wczytywanie danych ............................................................................................200
Zamiana stron mostu ....................................................................................................201
Konsekwencje stosowania wzorca Bridge.....................................................................202
Zagadnienia do przemyślenia.......................................................................................202
Zgłoś jeśli naruszono regulamin