delphi dla .net. vademecum profesjonalisty pełna wersja.mobi

(11026 KB) Pobierz
6
Delphi dla .NET. Vademecum profesjonalisty
Paleta narzędzi i fragmenty kodu................................................................................... 61
Inspektor obiektów ........................................................................................................ 62
Edytor kodu ................................................................................................................... 63
Mened er projektu ......................................................................................................... 65
Widok modelu ............................................................................................................... 66
Eksplorator danych ........................................................................................................ 67
Repozytorium obiektów................................................................................................. 67
Eksplorator kodu............................................................................................................ 68
Lista zadań do wykonania.............................................................................................. 68
4Q\F\KC
2TQITCO[ OQFW [ K RT\GUVT\GPKG PC\Y
Struktury oparte na modułach zarządzanych........................................................................ 71
Przestrzenie nazw .......................................................................................................... 71
Struktura modułu ........................................................................................................... 73
Składnia klauzuli uses.................................................................................................... 75
Cykliczne odwołania do modułów................................................................................. 76
Przestrzenie nazw................................................................................................................. 77
Deklaracja przestrzeni nazw .......................................................................................... 77
Stosowanie przestrzeni nazw ......................................................................................... 79
Klauzula namespaces..................................................................................................... 79
Identyfikowanie ogólnych przestrzeni nazw.................................................................. 79
Aliasy modułów............................................................................................................. 80
4Q\F\KC
,ú\[M &GNRJK
Wszystko o technologii .NET .............................................................................................. 81
Komentarze .......................................................................................................................... 82
Procedury i funkcje .............................................................................................................. 82
Nawiasy w wywołaniach ............................................................................................... 83
Przecią anie ................................................................................................................... 83
Domyślne wartości parametrów..................................................................................... 83
Zmienne ............................................................................................................................... 85
Stałe ..................................................................................................................................... 86
Operatory ............................................................................................................................. 88
Operatory przypisania.................................................................................................... 88
Operatory porównania ................................................................................................... 89
Operatory logiczne......................................................................................................... 89
Operatory arytmetyczne................................................................................................. 90
Operatory bitowe ........................................................................................................... 91
Procedury zwiększania i zmniejszania........................................................................... 92
Operatory typu „zrób i przypisz” ................................................................................... 92
Typy języka Delphi.............................................................................................................. 93
Obiekty, wszędzie tylko obiekty!................................................................................... 93
Zestawienie typów ......................................................................................................... 94
Znaki.............................................................................................................................. 95
Typy wariantowe ........................................................................................................... 95
Typy definiowane przez u ytkownika ................................................................................. 99
Tablice ......................................................................................................................... 100
Tablice dynamiczne ..................................................................................................... 101
Rekordy ....................................................................................................................... 103
Zbiory .......................................................................................................................... 104
„Niebezpieczny” kod ................................................................................................... 106
Wskaźniki .................................................................................................................... 107
Klasy i obiekty............................................................................................................. 110
Aliasy typów................................................................................................................ 111
Rzutowanie i konwersja typów .......................................................................................... 112
Zasoby łańcuchowe............................................................................................................ 113
Spis treści
7
Testowanie warunków ....................................................................................................... 113
Instrukcja if.................................................................................................................. 114
Stosowanie instrukcji case ........................................................................................... 114
Pętle ................................................................................................................................... 115
Pętla for ....................................................................................................................... 115
Pętla while ................................................................................................................... 116
Pętla repeat-until.......................................................................................................... 117
Instrukcja Break........................................................................................................... 117
Instrukcja Continue...................................................................................................... 117
Procedury i funkcje ............................................................................................................ 118
Przekazywanie parametrów ......................................................................................... 119
Zakres ................................................................................................................................ 122
Moduły i przestrzenie nazw ............................................................................................... 123
Klauzula uses............................................................................................................... 124
Cykliczne odwołania do modułów............................................................................... 125
Pakiety i podzespoły .......................................................................................................... 125
Programowanie obiektowe................................................................................................. 126
Stosowanie obiektów Delphi.............................................................................................. 127
Deklaracja i tworzenie egzemplarza ............................................................................ 128
Destrukcja.................................................................................................................... 129
Przodek wszystkich obiektów...................................................................................... 129
Pola.............................................................................................................................. 129
Metody......................................................................................................................... 130
Typy metod.................................................................................................................. 131
Referencje do klas........................................................................................................ 134
Właściwości................................................................................................................. 135
Zdarzenia ..................................................................................................................... 136
Specyfikatory widoczności .......................................................................................... 138
Klasy zaprzyjaźnione................................................................................................... 140
Klasy pomocnicze........................................................................................................ 140
Typy zagnie d one ...................................................................................................... 141
Przecią anie operatorów .............................................................................................. 142
Atrybuty....................................................................................................................... 142
Interfejsy...................................................................................................................... 143
Ujednolicony mechanizm obsługi wyjątków ..................................................................... 147
Klasy wyjątków ........................................................................................................... 150
Przepływ sterowania działaniem.................................................................................. 151
Ponowne generowanie wyjątków................................................................................. 153
%\ú è +++
4Q\F\KC
2TCEC \ DKDNKQVGMæ MNCU RNCVHQTO[ 0'6 (TCOGYQTM
2QF\GURQ [ 0'6 DKDNKQVGMK K RCMKGV[
Podstawowe podzespoły .................................................................................................... 157
Przeglądanie zawartości podzespołów i występujących między nimi zale ności .............. 158
Mechanizm GAC ............................................................................................................... 159
Konstruowanie podzespołów ............................................................................................. 160
Dlaczego stosujemy podzespoły .NET?....................................................................... 161
Stosowanie pakietów do budowy podzespołów........................................................... 161
Stosowanie bibliotek do budowania podzespołów....................................................... 166
Stosowanie podzespołów w języku Delphi ........................................................................ 170
Stosowanie podzespołów z języka Delphi w programach C# ............................................ 171
Instalacja pakietów w środowisku Delphi.......................................................................... 171
Podzespoły ze ścisłą kontrolą nazw ................................................................................... 172
Dynamicznie wczytywane podzespoły .............................................................................. 173
8
Delphi dla .NET. Vademecum profesjonalisty
4Q\F\KC
2TQITCOQYCPKG RT\[ W [EKW )&+ 4[UQYCPKG Y 0'6
Pojęcia podstawowe........................................................................................................... 175
Przestrzenie nazw GDI+ .............................................................................................. 175
Klasa Graphics............................................................................................................. 176
Układ współrzędnych w systemie Windows................................................................ 176
Rysowanie prostych ........................................................................................................... 178
Klasy Pen i Brush ........................................................................................................ 178
Rysowanie prostych..................................................................................................... 179
Końcówki linii ............................................................................................................. 181
Łączenie linii — klasa GraphicsPath ........................................................................... 183
Rysowanie krzywych ......................................................................................................... 185
Krzywa sklejana typu cardinal..................................................................................... 185
Krzywa sklejana Beziera.............................................................................................. 185
Rysowanie figur ................................................................................................................. 189
Rysowanie prostokątów............................................................................................... 189
Rysowanie elips ........................................................................................................... 190
Rysowanie wielokątów ................................................................................................ 191
Rysowanie wycinków elips.......................................................................................... 191
Więcej o „pędzlu” LinearGradientBrush ..................................................................... 193
Klasy GraphicsPath i Region ............................................................................................. 193
Rysowanie za pomocą klasy GraphicsPath.................................................................. 194
Rysowanie za pomocą klasy Region............................................................................ 195
Obszary przycinające................................................................................................... 197
Praca z obrazami ................................................................................................................ 199
Klasy Image ................................................................................................................. 200
Wczytywanie i tworzenie bitmap................................................................................. 200
Zmiana rozdzielczości obrazu...................................................................................... 201
Rysowanie obrazów..................................................................................................... 202
Interpolacja .................................................................................................................. 203
Rysowanie efektu zwierciadła (lustra) ......................................................................... 204
Stosowanie metod przekształcania obrazów ................................................................ 206
Tworzenie miniatur...................................................................................................... 210
Przegląd układów współrzędnych...................................................................................... 211
Przykład animacji............................................................................................................... 213
4Q\F\KC
/QPQ 9KGNQRNCVHQTOQYG TQFQYKUMQ 0'6
Cechy środowiska Mono.................................................................................................... 221
Historia Mono .................................................................................................................... 222
Po co stworzono Mono?..................................................................................................... 223
Mapa drogowa Mono......................................................................................................... 224
Cele Mono 1.0 ............................................................................................................. 224
Cele Mono 1.2 ............................................................................................................. 225
Cele Mono 1.4 ............................................................................................................. 225
Instalacja i ustawienia ........................................................................................................ 226
Instalacja środowiska uruchomieniowego Mono — program Red Carpet................... 226
Tworzenie naszego pierwszego programu Mono............................................................... 229
Uruchamianie w środowisku Mono (w systemie Linux)
podzespołów wygenerowanych w Delphi....................................................................... 230
Wieloplatformowa technologia ASP.NET ......................................................................... 234
Wdra anie rozwiązań ASP.NET w środowisku Mono ................................................ 236
Konfiguracja XSP........................................................................................................ 236
Parametry środowiska uruchomieniowego XSP .......................................................... 236
Kilka uwag i mo liwych kierunków rozwoju rozszerzeń zaprezentowanego przykładu...238
Mono i technologia ADO.NET .......................................................................................... 239
Mono i serwer Apache ....................................................................................................... 243
Mono i przestrzeń nazw System.Windows.Forms ............................................................. 245
Spis treści
9
4Q\F\KC
<CT\æF\CPKG RCOKúEKæ K QF OKGECPKG
Sposób działania mechanizmu odzyskiwania pamięci ....................................................... 247
Pokoleniowy algorytm odzyskiwania pamięci............................................................. 249
Wywoływanie mechanizmu odzyskiwania pamięci..................................................... 252
Konstruktory ...................................................................................................................... 252
Finalizacja.......................................................................................................................... 253
Metoda bezpośredniego zwalniania zasobów — interfejs IDisposable.............................. 255
Przykład implementacji interfejsu IDisposable............................................................ 255
Automatyczne implementowanie interfejsu IDisposable............................................. 257
Problemy z wydajnością w aspekcie finalizacji ................................................................. 258
4Q\F\KC -QNGMELG
Interfejsy przestrzeni nazw System.Collections................................................................. 261
Interfejs IEnumerable .................................................................................................. 262
Interfejs ICollection ..................................................................................................... 263
Interfejs IList ............................................................................................................... 263
Interfejs IDictionary..................................................................................................... 263
Interfejs IEnumeration ................................................................................................. 264
Klasy przestrzeni nazw System.Collections....................................................................... 264
Kolekcja typu Stack ..................................................................................................... 265
Klasa Queue................................................................................................................. 268
Klasa ArrayList............................................................................................................ 271
Klasa HashTable.......................................................................................................... 275
Tworzenie kolekcji ze ścisłą kontrolą typów ..................................................................... 278
Dziedziczenie po klasie bazowej CollectionBase ........................................................ 278
Stosowanie kolekcji ze ścisłą kontrolą typów.............................................................. 282
Tworzenie słowników ze ścisłą kontrolą typów................................................................. 283
Dziedziczenie po klasie bazowej DictionaryBase........................................................ 283
Stosowanie kolekcji ze ścisłą kontrolą typów.............................................................. 286
4Q\F\KC 2TCEC \ MNCUCOK 5VTKPI K 5VTKPI$WKNFGT
Typ System.String.............................................................................................................. 287
Niezmienność łańcuchów w środowisku .NET............................................................ 288
Operacje na łańcuchach ............................................................................................... 290
Porównywanie łańcuchów ........................................................................................... 291
Klasa StringBuilder............................................................................................................ 295
Metody klasy StringBuilder......................................................................................... 296
Stosowanie obiektów klasy StringBuilder ................................................................... 296
Formatowanie łańcuchów .................................................................................................. 297
Specyfikatory formatu........................................................................................................ 298
Specyfikatory formatów liczbowych ........................................................................... 299
Specyfikatory formatów daty i czasu........................................................................... 301
Specyfikatory formatów typów wyliczeniowych......................................................... 304
4Q\F\KC 1RGTCELG PC RNKMCEJ K UVTWOKGPKCEJ
Klasy przestrzeni nazw System.IO..................................................................................... 307
Praca z systemem katalogów ............................................................................................. 309
Tworzenie i usuwanie katalogów................................................................................. 309
Przenoszenie i kopiowanie katalogów ......................................................................... 310
Analizowanie informacji o katalogach......................................................................... 313
Praca z plikami................................................................................................................... 314
Tworzenie i usuwanie plików ...................................................................................... 314
Przenoszenie i kopiowanie plików............................................................................... 315
Analizowanie informacji o plikach .............................................................................. 315
Zgłoś jeśli naruszono regulamin