C++ Builder 5. Vademecum profesjonalisty. Tom I.pdf

(10624 KB) Pobierz
Szablon dla tlumaczy
3946527.001.png
Wprowadzenie do
C++Buildera
Rozdział ten stanowi wprowadzenie do C++Buildera, jednego z najczęściej używanych narzędzi
do tworzenia aplikacji internetowych, bazodanowych typu desktop i klient-serwer, programowania
rozproszonego itp. C++Builder łączy w sobie charakterystyczne cechy środowiska typu RAD
(ang. Rapid Applications Development – błyskawiczne tworzenie aplikacji) z funkcjonalnością
ANSI C++. Jest narzędziem na wskroś uniwersalnym, przydatnym zarówno dla amatorów
programowania, jak i profesjonalnych zespołów projektowych.
Podstawowe informacje na temat zalet C++Buildera i korzyści wynikających z jego
zastosowania znajdziesz na stronie http://www.borland.com/bcppbuilder/ w
punktach „Features & Benefits” i „New C++Builder Users”.
Zaawansowani programiści mogą rozdział ten pominąć; pozostali znajdą w nim informacje o
podstawowych elementach C++Buildera, a także porównanie jego istotnych cech z innymi
środowiskami projektowymi i wskazówki dotyczące przenoszenia na jego grunt aplikacji z tychże
środowisk.
Zainteresowani Czytelnicy znajdą tu również wprowadzenie do Kyliksa – jednego z
najciekawszych produktów ostatnich lat, będącego w istocie adaptacją Delphi i C++Buildera na
gruncie Linuksa. Kylix pozwala tworzyć zaawansowane aplikacje w środowisku tego
zdobywającego coraz większą popularność systemu z równą łatwością, jak w środowisku
Windows. Większość zagadnień dotyczących C++Buildera, omawianych w tej książce, odnosi się
także do Kyliksa.
Podstawowe elementy C++Buildera
W podrozdziale tym przedstawimy podstawowe elementy C++Buildera i zilustrujemy ich
zastosowanie na przykładzie prostej aplikacji.
Pierwsze spojrzenie
Jeżeli już zainstalowałeś C++Buildera na swoim komputerze i chciałbyś szybko wykonać za jego
pomocą coś pożytecznego – nie ma na co czekać; już za chwilę staną się dla Ciebie jasne takie
pojęcia, jak: projekt, komponenty VCL, inspektor obiektów i ich rola w środowisku IDE.
Pierwotnie programiści posługiwali się narzędziami dla DOS-a, uruchamianymi z wiersza poleceń.
Kiedy MS Windows zdominowały rynek systemów operacyjnych, w naturalny sposób również i
rynek kompilatorów zwrócił się w stronę tego środowiska; jednym z najbardziej znanych
kompilatorów C dla Windows był kompilator C++ w wersji 3.1. Nie uprościło to bynajmniej
samego procesu programowania, a wręcz przeciwnie: na programiście spoczywała
odpowiedzialność za całokształt komunikacji z systemem operacyjnym – obsługa komunikatów,
utrzymywanie odpowiedniego wyglądu okienek itp. Nawet prosty program powodujący tylko
wyświetlanie pustego okienka miał rozmiar kilkustronicowy.
Sytuacja zmieniła się nieco (na korzyść programistów) po opracowaniu przez Borland narzędzia o
nazwie ObjectWindows Library (OWL). OWL, zgodne ze standardami kompilatora wersji 3.1,
przejmowało na siebie większość nużących szczegółów systemowych, pozwalając programiście
skupić się na istocie rozwiązywanego problemu. Zostało ono rozbudowane wraz z
wprowadzeniem na rynek nowego kompilatora C++ w wersji 5.0.
Prawdziwym przełomem okazało się pojawienie Delphi, narzędzia z kategorii RAD, będącego de
facto czymś na kształt „wizualnego Pascala” – jeżeli trzymać się analogii do Visual Basica czy też
Visual C. Niedługo później Borland opracował analogiczne narzędzie oparte na C++, nadając mu
nazwę C++Builder. Korzysta ono z tych samych bibliotek co Delphi, ponadto posiada niemal
identyczny interfejs użytkownika. 1 W porównaniu z innym popularnym kompilatorem – Visual
C++ – charakteryzuje się większą łatwością tworzenia aplikacji i większą przenośnością tych
ostatnich pomiędzy różnymi platformami.
Niewątpliwie dobre opanowanie języka programowania (również C++) wymaga kilku lat praktyki.
Narzędzia kategorii RAD – np. C++Builder – mogą jednakże uczynić tę naukę bardziej efektywną,
ponadto umożliwiają tworzenie nietrywialnych aplikacji już na wczesnym etapie tej drogi, a to za
sprawą obiektowych komponentów VCL, skrywających w sobie wiele skomplikowanych
możliwości i uwalniających użytkownika od żmudnego programowania.
Przystąpmy więc do konkretów; pominiemy przy tym wiele szczegółów dotyczących instalacji i
obsługi C++Buildera, które znaleźć można w dokumentacji, a których wyczerpujący opis
wymagałby odrębnej książki. Skoncentrujemy się za to na metodologii tworzenia konkretnej
aplikacji.
Po prawidłowym zainstalowaniu C++Buildera i jego uruchomieniu ukaże się zintegrowane
środowisko projektowe (IDE – Integrated Development Environment ) przedstawione na rysunku
1.1. Składa się ono z trzech zasadniczych okien, za pośrednictwem których możliwe jest
1 Oczywiście w ramach odpowiadających sobie wersji C++ i Delphi; porównanie drogi rozwojowej Delphi i
C++Buildera (określane niekiedy mianem „żabiego skoku”) znajduje się w rozdziale 21. książki Delphi 4 dla
każdego (Helion, Gliwice 1999) – przyp. tłum.
manipulowanie kontrolkami i komponentami, ustawianie ich właściwości oraz wpisywanie kodu
programu.
Pasek
narzędziowy
Menu główne
Paleta
komponentów
Inspektor
obiektów
Formularz
Edytor kodu
Rysunek 1.1. Środowisko zintegrowane C++Buildera 5
Biblioteka VCL, formularze i komponenty
Biblioteka komponentów (ang. VCL – Visual Component Library ) stanowi magazyn
komponentów wykorzystywanych do tworzenia aplikacji. Poszczególne komponenty biblioteki
odpowiadają poszczególnym komponentom gotowego programu – menu, przyciskom, listom
3946527.002.png
wyboru, obrazkom itp. Komponenty te skrywają w sobie znaczną część kodu, przez co
programista zwolniony jest w dużej części z kodowania podstawowych funkcji programu.
Poszczególne aspekty zachowania się komponentów mogą być regulowane za pomocą ich
właściwości (ang. properties ) dostępnych za pośrednictwem inspektora obiektów (patrz rys.
1.1), bądź bezpośrednio w kodzie programu. Oprócz wykorzystywania gotowych komponentów
zaawansowany programista ma możliwość tworzenia nowych komponentów, stosownie do swych
potrzeb.
Formularze
Poszczególne formularze aplikacji odpowiadają poszczególnym oknom działającego programu;
gdy rozpoczynasz tworzenie nowej aplikacji, wyświetlony zostaje automatycznie pusty formularz,
zwany f o r m u l a r z e m głównym – w działającym programie stanie się on jego oknem głównym.
Umieszczając na formularzu komponenty VCL oraz ustalając ich położenie i rozmiary, budujemy
żądany interfejs użytkownika. Oprócz komponentów w i z u a l n y c h istnieją również tzw.
komponenty n i e w i d o c z n e – na etapie projektowania są one reprezentowane przez odpowiednie
ikony, natomiast w działającym programie nie są bezpośrednio widoczne w interfejsie
użytkownika, jakkolwiek spełniają zadania nie mniej ważne od komponentów wizualnych.
Przykładami komponentów niewidocznych są zegary (ang. timers ), służące do odmierzania
ustalonych odcinków czasu.
Paski narzędziowe
Paski przycisków (ang. speedbars ) umożliwiają szybki dostęp do najczęściej wykorzystywanych
opcji menu, jak: Run (uruchomienie aplikacji), Step Through (praca krokowa), View Form
(oglądanie formularza) itp. Użytkownik ma możliwość przystosowywania zawartości pasków
narzędziowych do swoich potrzeb.
Konfigurowanie pasków narzędziowych
Jedną z niezaprzeczalnych zalet środowiska IDE jest jego konfigurowalność. Zawartość
dowolnego paska narzędziowego może być łatwo zmieniana poprzez dodawanie i usuwanie
przycisków – wyjątkiem w tym względzie jest paleta komponentów, nie zawierająca przycisków,
lecz (zgodnie z nazwą) komponenty VCL.
C++Builder zawiera następujące paski narzędziowe:
Standard ;
View ;
Debug ;
Custom ;
Component Palette (paleta komponentów) .
Aby zmienić zawartość dowolnego paska narzędziowego, wykonaj kolejno następujące czynności:
1. Kliknij prawym przyciskiem myszy gdziekolwiek w wolnym obszarze paska (poza
przyciskami).
Zgłoś jeśli naruszono regulamin