Kylix Vademecum profesjonalisty.pdf

(1071 KB) Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Kylix. Vademecum
SPIS TRECI
profesjonalisty
Autorzy: Charles Calvert, Marjorie Calvert,
John Kaster, Bob Swart
T³umaczenie: Jakub Mirek (rozdz. 1 – 10, 12 – 21),
Andrzej Gra¿yñski (rozdz. 11)
ISBN: 83-7197-701-8
Tytu³ orygina³ u: Kylix Developer
Format: B5, stron: 808
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Stworzenie przez firmê Borland Kyliksa, linuksowego odpowiednika popularnego Delphi,
to jeden z kamieni milowych w rozwoju tego systemu operacyjnego. Programici
pisz¹cy aplikacje dzia³aj¹ce w systemie Linux otrzymali zintegrowane rodowisko typu
RAD, oparte na sprawdzonym jêzyku ObjectPascal, umo¿liwiaj¹ce „programowanie
wizualne”. Ich praca sta³a siê odt¹d szybsza i bardziej efektywna.
Ksi¹¿ka „Kylix. Vademecum profesjonalisty” to kompletny przewodnik po Kyliksie
zawieraj¹cy zarówno informacje o rodowisku programistycznym, jak te¿ pe³ny opis
jêzyka ObjectPascal i bibliotek CLX. Nie zabrak³o równie¿ prezentacji systemu Linux
i jego specyficznych w³aciwoci, która mo¿e przydaæ siê osobom znaj¹cym ju¿ Delphi
i rozpoczynaj¹cym pracê w nowym systemie operacyjnym.
Ksi¹¿ka podzielona jest na piêæ czêci:
1. Prezentacja Delphi i Linuksa — podstawy rodowiska RAD, opis ObjectPascala,
programowanie obiektowe, rodowisko X-Window
2. Opis biblioteki CLX — architektura CLX, palety, tworzenie komponentów,
programowanie grafiki w Kyliksie
3. Programowanie systemowe w Linuksie — aplikacje konsolowe, procesy i w¹tki
4. Programowanie bazodanowe w Kyliksie — DataCLX, sterowniki dbExpress,
tworzenie przyk³adowej aplikacji
5. Tworzenie aplikacji WWW — serwer Apache, komponenty WebBroker
Niezale¿nie od tego, czy znasz ju¿ Delphi i chcesz przenieæ swoje umiejêtnoci do
rodowiska Linux, czy te¿ przeciwnie, znasz dobrze Linuksa i pragniesz szybko tworzyæ
zaawansowane aplikacje, znalaz³e w³anie w³aciwy podrêcznik.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
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
400256225.001.png 400256225.002.png 400256225.003.png
 
IDE Kyliksa ...........................................................................................................................33
Plan ataku ........................................................................................................................34
Pierwsze spojrzenie na IDE.............................................................................................35
Menu ......................................................................................................................................36
Klawisze skrótów w menu...............................................................................................36
Menu podr czne ..............................................................................................................37
Dodawanie nowych narz dzi do menu............................................................................37
Paski narz dzi..................................................................................................................38
Programowanie wizualne.......................................................................................................39
Paleta komponentów........................................................................................................42
O pakietach......................................................................................................................43
U*ywanie Projektanta formularzy...................................................................................44
Rozmieszczanie komponentów .......................................................................................45
Inspektor Obiektów .........................................................................................................46
Dostrajanie Inspektora obiektów.....................................................................................47
Edytowanie pliku xfm .....................................................................................................48
Ograniczenia i zakotwiczenia..........................................................................................50
Porz0dek tabulatora .........................................................................................................52
Inspektor Obiektów i zdarzenia.......................................................................................52
1ródło modułu Kyliksa..........................................................................................................53
Interfejs modułu Kyliksa .................................................................................................55
Implementacja modułu w Kyliksie..................................................................................57
Teatr tajemnic: Gdzie podziała si metoda FormCreate?................................................59
Pliki 9ródłowe Pascala...........................................................................................................59
Pliki projektu Delphi .......................................................................................................60
Moduły.............................................................................................................................60
Punkty wej:cia programów w Pascalu ............................................................................61
Klauzula uses i bł dne koła odwoła< ..............................................................................62
Kompilacja w Kyliksie ..........................................................................................................64
Praca z pojemnikami (Containers).........................................................................................65
Program PanelDesign ......................................................................................................67
 
6
Kylix. Vademecum profesjonalisty
!!"#$
Zdefiniowanie poj @: instrukcja i wyra*enie.........................................................................77
Wyra*enia........................................................................................................................78
Instrukcje .........................................................................................................................78
Instrukcja warunku: if............................................................................................................80
Instrukcja wyboru: case .........................................................................................................82
P tle for..................................................................................................................................84
Instrukcja while......................................................................................................................86
Instrukcja repeat.....................................................................................................................89
Ostatnie uwagi na temat p tli i rozgał zie<.....................................................................91
Słów kilka o operatorach .......................................................................................................91
Operator podstawienia.....................................................................................................91
Operator dzielenia............................................................................................................91
Operatory boolowskie i logiczne.....................................................................................92
Operatory relacji..............................................................................................................93
Pobranie adresu zmiennej................................................................................................94
Operatory w arytmetyce ła<cuchów i wska9ników.........................................................94
Ostatnie uwagi na temat operatorów ...............................................................................95
Rekurencja .............................................................................................................................95
Silnia................................................................................................................................96
Ci0gi Fibonacciego..........................................................................................................98
Rekursywne rysowanie....................................................................................................99
#%
Zawarto:@ tego rozdziału.....................................................................................................101
Typy całkowitoliczbowe i zmiennoprzecinkowe ................................................................102
Typy porz0dkowe ..........................................................................................................103
Procedury obsługuj0ce liczby porz0dkowe ...................................................................105
Typy wyliczeniowe........................................................................................................107
Typy zmiennoprzecinkowe............................................................................................108
Ła<cuchy znakowe w Pascalu .............................................................................................114
Ła<cuchy typu ShortString............................................................................................116
Ła<cuchy typu AnsiString.............................................................................................117
Ła<cuchy typu PChar ....................................................................................................120
Ła<cuchy typu WideString............................................................................................121
Rzutowanie typów ...............................................................................................................122
Operatory as, if i parametr Sender.................................................................................122
Tablice .................................................................................................................................124
Stałe tablicowe...............................................................................................................125
Tablice dynamiczne i tablice obiektów .........................................................................126
Sprawdzaj swoje tablice — wł0cz Range Checking .....................................................130
Rekordy................................................................................................................................131
Rekordy i instrukcja with ..............................................................................................132
Rekordy wariantowe......................................................................................................132
Wska9niki ............................................................................................................................136
Praca ze wska9nikami do obiektów...............................................................................138
Wska9niki, konstruktory i destruktory ..........................................................................141
Metody wirtualne i dyrektywa override ........................................................................142
Czego nie znajdziesz w Object Pascalu...............................................................................143
& '#"($" &
Model obiektu w Kyliksie....................................................................................................145
Gdzie zadeklarowa@ obiekt............................................................................................146
Zakres widzialno:ci w klasie.........................................................................................147
Zakres widzialno:ci w klasach wzajemnie si do siebie odwołuj0cych........................148
Spis treci
7
Deklarowanie metod......................................................................................................149
Model dziedziczenia w Object Pascalu: virtual i override ............................................150
U*ycie w deklaracji dyrektywy dynamic zamiast virtual..............................................151
Wywoływanie przodka przedefiniowanej metody: inherited........................................154
Dyrektywa abstract........................................................................................................155
Dyrektywa overload ......................................................................................................156
Tworzenie i zwalnianie instancji klasy..........................................................................157
Metody klasowe.............................................................................................................157
Interfejsy ..............................................................................................................................158
Typ interface..................................................................................................................160
Interfejs nie jest klas0!...................................................................................................161
Nie mo*na bezpo:rednio implementowa@ interfejsu.....................................................161
U*ycie klasy do zaimplementowania interfejsu............................................................162
Wywoływanie metod interfejsu.....................................................................................165
Niszczenie interfejsów...................................................................................................167
Wiele interfejsów w jednym obiekcie ...........................................................................169
Klauzula wyboru metody...............................................................................................172
Deklaracja IInterface .....................................................................................................173
Interfejsy w teorii...........................................................................................................177
Dlaczego warto u*ywa@ interfejsów..............................................................................178
Piel gnacja i uaktualnianie interfejsu............................................................................180
Typ wariantowy ...................................................................................................................181
RTTI i typy zmiennoprzecinkowe .......................................................................................188
Ramki...................................................................................................................................194
Tworzenie ramek...........................................................................................................195
Wielokrotne u*ycie ramek.............................................................................................197
Kompilacja z linii polece< ...................................................................................................198
)"' %
Edytor kodu 9ródłowego i inne narz dzia ...........................................................................201
Kilka słów o edytorze i debuggerze.....................................................................................201
Wpływanie na wizualne narz dzia z poziomu edytora .................................................202
Mened*er projektu ...............................................................................................................205
Eksplorator kodu............................................................................................................207
Dostosowywanie wygl0du eksploratora kodu...............................................................210
Generowanie kodu: kompletowanie klas w edytorze i eksploratorze ...........................211
Przegl0darka.........................................................................................................................216
Lista To-Do..........................................................................................................................218
Okna narz dziowe .........................................................................................................220
Zapami tanie pulpitu i pulpitu :ledzenia.......................................................................222
„Magiczne” narz dzia: Code Insight ...................................................................................222
„Cud” kompletowania kodu ..........................................................................................223
„Cud” wgl0du — Parameter Insight..............................................................................224
Code Insight: przegl0danie swojego kodu.....................................................................225
Stosowanie szablonów kodu zwi ksza szybko:@ pisania programów...........................226
U*ywanie debuggera............................................................................................................228
Krokowe przechodzenie kodu .......................................................................................229
Kod, z którym debugger sobie nie poradzi: optymalizacje ...........................................231
Kod, przez który nie mo*na przej:@: Konsolidator .......................................................232
Podgl0danie kodu w oknie Watch List..........................................................................233
Badanie zmiennej ..........................................................................................................234
Praca z punktami wstrzymania......................................................................................235
U*ywanie wyj0tków do ulepszenia swojego kodu ..............................................................237
Deklarowanie własnych klas wyj0tków ........................................................................238
Klauzula finally i ponowne zgłaszanie wyj0tku............................................................239
8
Kylix. Vademecum profesjonalisty
U*ywanie okna CPU .....................................................................................................240
System pomocy Kyliksa................................................................................................242
Elf Debug Server .................................................................................................................243
Usługi w module DebugHelp ........................................................................................254
Dane wyj:ciowe z modułu DebugHelp .........................................................................255
Wysyłanie informacji do pliku ......................................................................................256
Wysyłanie informacji do serwera HTTP.......................................................................257
Odbieranie informacji HTTP na serwerze.....................................................................258
Pole listy typu owner draw............................................................................................259
* +#,# *
Prodowisko systemu Linux w skrócie .................................................................................262
Prodowisko graficzne w Linuksie........................................................................................262
Anatomia :rodowiska graficznego ................................................................................264
Struktura systemu X Window..............................................................................................265
Historia systemu X Window..........................................................................................265
Nazwa systemu X Window ...........................................................................................265
Czym jest system X Window?.......................................................................................265
Sie@ i model X klienta/serwera......................................................................................266
W0ski kanał pomi dzy X serwerem a X klientem ........................................................266
Podł0czanie si do zdalnego serwera.............................................................................267
Programowanie pod X w Kyliksie.......................................................................................268
Program typu Hello World w X ....................................................................................270
Tworzenie głównego okna za pomoc0 XCreateWindow ..............................................277
Kaskadowy porz0dek okien...........................................................................................283
Tworzenie kontekstu grafiki..........................................................................................283
P tla zdarze<..................................................................................................................284
Podsumowanie dotycz0ce pisania programów w X ......................................................286
Mened*ery okien..................................................................................................................287
Po co stworzono mened*ery okien................................................................................287
Pot ga mened*erów okien.............................................................................................287
Nazewnictwo mened*erów okien..................................................................................288
Biblioteki obiektów graficznych..........................................................................................288
Kontrolki, komponenty i widgety..................................................................................288
Kilka słów o :rodowiskach graficznych ..............................................................................289
Prodowisko KDE...........................................................................................................289
Prodowisko GNOME ....................................................................................................289
#-,. /
Qt i CLX ..............................................................................................................................294
FreeCLX........................................................................................................................297
Qt i zdarzenia.......................................................................................................................298
Komunikaty w CLX ......................................................................................................299
Sygnały i odbiorniki w Qt .............................................................................................301
Obiekt aplikacji Qt i p tla zdarze< ................................................................................303
Wywoływanie „surowego” kodu Qt w Object Pascalu.................................................304
Program Slider w CLX ........................................................................................................306
CLX, Qt i obiekt haka..........................................................................................................307
Metoda EventFilter........................................................................................................311
Praca ze stylami ...................................................................................................................317
Praca z zasobami..................................................................................................................320
Zasoby ła<cuchów znakowych......................................................................................321
Zgłoś jeśli naruszono regulamin