C_Builder_5_Vademecum_profesjonalisty_Tom_I_cbui5v.pdf

(654 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
C++ Builder. Vademecum
profesjonalisty. Tom I
Autor: Jarrod Hollingworth, Dan Butterfield, Bob
Swart, Jamie Allsop
T³umaczenie: zbiorowe
ISBN: 83-7197-447-7
Tytu³ orygina³u:
C++ Builder 5 Developer's Guide
Format: B5, stron: 1040
oprawa twarda
Zawiera CD-ROM
To d³ugo oczekiwana ksi¹¿ka (poprzednie jej wydanie opisywa³o wersjê 3.)! Jest
obszernym przewodnikiem, opisuj¹cym mo¿liwoœci C++Buildera 5. Znajdziesz w niej
opis takich mechanizmów, jak: InternetExpress, ADOExpress, Interbase Express,
TeamSource, CodeGuard i wielu innych. Ksi¹¿ka opisuje tak¿e metody
wykorzystywania zaawansowanych w³aœciwoœci COM+, MIDAS-a i specyfikacji
CORBA.
Je¿eli u¿ywasz C++Buildera 5 w wersji Standard, Professional lub Enterprise, dziêki tej
ksi¹¿ce mo¿esz osi¹gn¹æ mistrzostwo w programowaniu. Od zaawansowanych
programistów dowiesz siê, jak efektywnie tworzyæ aplikacje typu desktop, aplikacje
internetowe i rozproszone systemy bazodanowe.
Naucz siê efektywnych technik œledzenia programów przy u¿yciu CodeGuarda,
umo¿liwiaj¹cego wykrywanie przyczyn wielu b³êdów, miêdzy innymi wycieków
pamiêci i gubienia zasobów.
DoprowadŸ do mistrzostwa swoje techniki tworzenia wielowarstwowych
aplikacji za pomoc¹ MIDAS-a.
Odkryj zaawansowane mo¿liwoœci, tkwi¹ce w najnowszych rozwi¹zaniach
multimedialnych, wykorzystuj¹cych: OpenGL, DirectX i formaty AVI, MPEG
i MP3.
Naucz siê tworzyæ w³asne komponenty za pomoc¹ specjalistycznych edytorów
komponentów i edytorów w³aœciwoœci.
Poznaj techniki programowania rozproszonego i tworzenia skalowalnych
aplikacji na bazie technologii: COM, COM+, CORBA i DCOM.
Zobacz, w jaki sposób mo¿esz zwiêkszyæ efektywnoœæ swoich aplikacji dziêki
optymalizacjom projektów, algorytmów i zarz¹dzania pamiêci¹.
Wykorzystaj powszechnie stosowane techniki pakietowania, dystrybucji
i ochrony swych aplikacji.
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
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
O Autorach .................................................................................................................19
Wprowadzenie ............................................................................................................29
Przedmowa do wydania polskiego ............................................................................35
Rozdział 1. Wprowadzenie do C++Buildera............................................................39
Podstawowe elementy C++Buildera..................................................................................... 39
Pierwsze spojrzenie ......................................................................................................... 40
Pierwsze programy.......................................................................................................... 45
Kilka pytań ...................................................................................................................... 52
Co nowego w wersji 5. C++Buildera?.................................................................................. 53
Programowanie internetowe............................................................................................ 54
Aplikacje rozproszone..................................................................................................... 54
Projektowanie zespołowe................................................................................................ 55
Lokalizacja aplikacji ....................................................................................................... 55
Śledzenie ......................................................................................................................... 55
Programowanie bazodanowe .......................................................................................... 56
Produktywność programisty............................................................................................ 56
Zgodność i unowocześnianie aplikacji ................................................................................. 57
Unowocześnianie wersji C++Buildera............................................................................ 57
Obsługa istniejących projektów ...................................................................................... 57
Tworzenie projektów zgodnych z poprzednimi wersjami C++Buildera ........................ 58
Inne problemy ze zgodnością.......................................................................................... 58
Migracja ze środowiska Delphi ............................................................................................ 59
Komentarze ..................................................................................................................... 59
Zmienne........................................................................................................................... 59
Stałe ................................................................................................................................. 60
Operatory......................................................................................................................... 61
Przepływ sterowania w programie .................................................................................. 64
Funkcje i procedury......................................................................................................... 66
Klasy................................................................................................................................ 67
Dyrektywy preprocesora ................................................................................................. 69
Typy plików .................................................................................................................... 70
Mocne i słabe strony C++Buildera ....................................................................................... 71
Wizualna rzeczywistość — naprawdę błyskawiczne tworzenie aplikacji...................... 71
Dotrzymywanie kroku — zgodność ze standardami ...................................................... 73
%
$WKNFGT 8CFGOGEWO RTQHGULQPCNKUV[ 6QO +
Osobiste preferencje........................................................................................................ 74
Zalety i wady C++Buildera — konkluzje ....................................................................... 74
Przygotowania do Kyliksa .................................................................................................... 75
Podobieństwa pomiędzy Kyliksem a C++Builderem ..................................................... 75
Ró nice pomiędzy Kyliksem a C++Builderem .............................................................. 76
Podsumowanie ...................................................................................................................... 77
Rozdział 2. Programowanie w C++Builderze..........................................................79
Style kodowania a czytelność programu .............................................................................. 79
Proste i zwięzłe kodowanie............................................................................................. 79
Akapitowanie kodu ......................................................................................................... 81
Sugestywne nazewnictwo elementów programu ............................................................ 86
Właściwe konstruowanie kodu ....................................................................................... 92
U ywanie komentarzy..................................................................................................... 93
Zalecane praktyki programistyczne ................................................................................ 97
Obsługa wyjątków......................................................................................................... 109
Zarządzanie pamięcią operacyjną przy u yciu operatorów new i delete...................... 114
Rzutowanie typów w stylu C++.................................................................................... 117
U ywanie preprocesora ................................................................................................. 119
Wykorzystanie standardowej biblioteki C++................................................................ 121
Podsumowanie .................................................................................................................... 122
Rozdział 3. Interfejs u ytkownika ..........................................................................123
Podstawowe zasady konstrukcji interfejsu u ytkownika ................................................... 123
Przykładowe projekty wykorzystywane w tym rozdziale .................................................. 126
Kalkulator — wprowadzenie do projektu ..................................................................... 127
Zwiększanie u yteczności aplikacji drogą sprzę enia zwrotnego...................................... 128
Wykorzystanie komponentów TProgressbar i TCGauge.............................................. 128
Wygląd kursora ............................................................................................................. 129
Wykorzystanie paska statusu TStatusBar ..................................................................... 131
Podpowiedzi kontekstowe............................................................................................. 139
Kontrola migracji skupienia pomiędzy elementami interfejsu ..................................... 156
Dbałość o wygląd interfejsu ............................................................................................... 164
Symbole na przyciskach................................................................................................ 165
Grupowanie przycisków................................................................................................ 166
Słowo na temat migotania............................................................................................. 167
Wzbogacanie tekstu symbolami.................................................................................... 167
Kolorystyka interfejsu ................................................................................................... 171
U ycie nieprostokątnych okien ..................................................................................... 171
Konfigurowalność interfejsu............................................................................................... 173
Dokowanie .................................................................................................................... 173
Zmiana rozmiarów kontrolek........................................................................................ 177
Wykorzystanie paska kontrolnego TControlBar........................................................... 186
Kontrolowanie widoczności obiektów interfejsu.......................................................... 196
Indywidualizacja ustawień ............................................................................................ 200
5RKU VTGEK
Zró nicowane konfiguracje graficzne ................................................................................ 208
Ró nice w rozdzielczości ekranu .................................................................................. 208
Ró nice w wielkościach czcionek................................................................................. 209
Ró nice w liczbie kolorów............................................................................................ 209
Techniki łagodzące zło oność konstrukcji interfejsu ......................................................... 210
Scentralizowane sterowanie akcjami obiektu ............................................................... 210
Współdzielenie funkcji zdarzeniowych ........................................................................ 212
Podsumowanie .................................................................................................................... 214
Rozdział 4. Kompilacja i techniki optymalizacyjne ..............................................215
Od C++ do modułu wykonywalnego.................................................................................. 215
Przyspieszanie kompilacji................................................................................................... 217
Prekompilowane nagłówki............................................................................................ 218
Inne metody przyspieszania kompilacji ........................................................................ 219
Rozszerzenia kompilatora i konsolidatora w wersji 5. C++Buildera ................................. 221
Kompilacja „w tle”........................................................................................................ 222
Pozostałe nowości kompilatora..................................................................................... 222
Nowe funkcje konsolidatora ......................................................................................... 223
Podstawowe zasady optymalizacji...................................................................................... 224
Optymalizacja szybkości wykonania aplikacji ................................................................... 226
Przykład optymalizacji — konstruktor krzy ówek....................................................... 228
Opcje projektu wpływające na szybkość generowanego kodu..................................... 231
Wykrywanie „wąskich gardeł” aplikacji....................................................................... 233
Optymalizacja zało eń projektowych i algorytmów..................................................... 237
Wysokopoziomowe techniki optymalizowania generowanego kodu........................... 245
Techniki optymalizacji danych ..................................................................................... 258
Programowanie na poziomie asemblera ....................................................................... 261
Optymalizacja uwarunkowań zewnętrznych ................................................................ 266
Optymalizacja szybkości — wnioski końcowe ............................................................ 266
Optymalizacja innych aspektów aplikacji .......................................................................... 267
Optymalizacja rozmiaru modułu wynikowego ............................................................. 267
Optymalizacja innych czynników ................................................................................. 268
Podsumowanie .................................................................................................................... 269
Rozdział 5. Uruchamianie, śledzenie przebiegu i testowanie aplikacji................271
Projektowe uwarunkowania śledzenia aplikacji ................................................................. 273
Programistyczne uwarunkowania śledzenia aplikacji ........................................................ 275
Podstawowe techniki usuwania błędów aplikacji............................................................... 275
Wyprowadzanie informacji testowych.......................................................................... 277
Wykorzystanie asercji ................................................................................................... 281
Globalna obsługa wyjątków.......................................................................................... 283
Specyficzne uwarunkowania semantyczne ................................................................... 284
Zintegrowany debugger C++Buildera ................................................................................ 285
Zaawansowane wykorzystanie punktów przerwań....................................................... 286
Nowości C++Buildera 5 związane z punktami przerwań............................................. 289
%
$WKNFGT 8CFGOGEWO RTQHGULQPCNKUV[ 6QO +
Okna zintegrowanego debuggera.................................................................................. 289
Podgląd i modyfikacja wyra eń testowych................................................................... 293
Inspektor śledzenia........................................................................................................ 294
CodeGuard .......................................................................................................................... 296
Włączanie do aplikacji i konfigurowanie CodeGuarda ................................................ 296
Wykorzystanie CodeGuarda ......................................................................................... 298
Zaawansowane techniki śledzenia ...................................................................................... 305
Znajdowanie przyczyny ogólnego błędu ochrony ........................................................ 305
Podłączanie się do uruchomionego procesu ................................................................. 306
Debugger systemowy .................................................................................................... 307
Śledzenie zdalne............................................................................................................ 308
Śledzenie bibliotek DLL ............................................................................................... 309
Inne narzędzia śledzenia ............................................................................................... 310
Testowanie aplikacji ........................................................................................................... 311
Etapy i techniki testowania ........................................................................................... 312
Podsumowanie .................................................................................................................... 313
Rozdział 6. Komponenty biblioteki VCL ...............................................................315
Wprowadzenie do biblioteki VCL ...................................................................................... 316
Klasa TObject — początek przygody ........................................................................... 316
Tworzenie aplikacji przy u yciu istniejących obiektów ............................................... 318
Jak u ywać biblioteki VCL ........................................................................................... 320
Rozszerzenia języka C++ w systemie C++Builder 5.................................................... 322
Zapis i odczyt danych ze strumieni..................................................................................... 329
Zapis i odczyt ze strumienia obiektów zło onych ........................................................ 330
Zapis i odczyt ze strumienia właściwości niepublikowanych ...................................... 331
Udoskonalenia standardowych elementów sterujących ..................................................... 335
Biblioteka dynamiczna COMCTL32 ............................................................................ 335
Rozszerzenia standardowych elementów sterujących
wprowadzone w systemie C++Builder ......................................................................... 337
Rozszerzenia obiektów klasy THeader ......................................................................... 339
Obsługa niestandardowych funkcji rysowania w klasie TToolBar .............................. 340
Udoskonalenia standardowych elementów sterujących — podsumowanie ................. 340
Inne rozszerzenia biblioteki VCL ....................................................................................... 341
Nowe mo liwości menu i tekstów podpowiedzi........................................................... 341
Dostęp do rejestru systemowego................................................................................... 341
Nowa dokumentacja biblioteki VCL ............................................................................ 342
Nowy komponent — TApplicationEvents.................................................................... 342
Rozszerzenia klasy TIcon ............................................................................................. 343
Inne rozszerzenia biblioteki VCL ................................................................................. 343
Poprawianie biblioteki VCL, czyli trochę więcej ni klasa TStringList ............................ 343
Klasa TStringList .......................................................................................................... 343
Jak przechowywać obiekty nie nale ące do biblioteki VCL?....................................... 344
Łączenie łańcuchów z obiektami tego samego typu..................................................... 345
Zgłoś jeśli naruszono regulamin