LEKCJA 48: O PAKIETACH BORLAND C++ 4/4.5.
________________________________________________________________
Z tej lekcji dowiesz się, czy warto kupić nowszą wersję Borland
C++ 4/4.5 i jakie niespodzianki czekają Cię po zamianie
kompilatora na nowszy.
________________________________________________________________
Czy warto sprawić sobie BORLAND C++ 4/4.5 ?
Kilka słów o tym, co oferuje Borland w pakietach "Borland C++
4/4.5" i jakie niespodzianki czekają nowych użytkowników przy
instalacji i uruchamianiu.
Wymagania sprzętowe i instalacja
Aby instalacja i użytkowanie pakietu przebiegało poprawnie,
zaleca się następującą konfigurację sprzętu:
Wymagania sprzętowe Borland C++ 4.
________________________________________________________________
Parametr minimum zalecane (pełna konfig.)
________________________________________________________________
* procesor 80386/33 MHZ 486 DX (lub 386 + 387)
* miejsce na dysku 8 MB 80 MB (bez kompresji)
* pamięć RAM 4 MB 8 MB i więcej
* system DOS 4.01 DOS 6.0...6.22
* MS Windows 3.1 Windows NT
________________________________________________________________
Częściowa instalacja Borland C++ 4.
________________________________________________________________
Konfiguracja Dysk
________________________________________________________________
1. Kompilator BCC 16 bitowy (D+W) 9 MB
2. Kompilator BCC 32 bitowy (D+W) 13 MB
3. Środowisko IDE 16 bitowe 26 MB
4. Środowisko IDE 32 bitowe 30 MB
5. Tylko dla DOS (minimum) 8 MB
________________________________________________________________
* D+W - dla DOS i Windows
Można próbować zainstalować Borland C++ 4 na małym dysku, można
także ograniczyć się do 4 MB RAM, ale generowanie 32-bitowych
aplikacji będzie wtedy znacznie utrudnione a praca kompilatora
wolniejsza. W przypadku stosowania kompresorów (np. SUPERSTOR,
DOUBLE SPACE) należy pamiętać, że wtórna kompresja plików jest
mało skuteczna i dysk zgłaszany jako 80 MB może okazać się
"ciasny".
Borland C++ 4 można instalować z dyskietek, bądź z CD-ROM.
Ponieważ pakiet BC++ 4 jest "okienkowo - zorientowany", nawet
program instalacyjny wymaga obecności Windows. Uruchomienie
programu instalacyjnego następuje zatem z poziomu Menedżera
programów rozkazem File | Run... (w spolszczonej wersji Windows
- Plik | Uruchom...) lub z DOS-owskiego wiersza rozkazu:
C:\>WIN X:INSTALL
Opcji jest trochę więcej - o najciekawszych z nich - kilka słów
poniżej.
Warto zwrócić uwagę na tzw. "rozszerzenie dla Windows"
(extention to MS Windows) - Win32s. W programie INSTALL.EXE do
zainstalowania tego pakietu (pakiet jest oryginalnym produktem
Microsofta i wymaga 8 MB przestrzeni dyskowej) służy opcja
[Install Win32s]. Najważniejszy plik-driver instaluje się w
pliku SYSTEM.INI:
device=X:\WINDOWS\SYSTEM\WIN32S\W32S.386
Pozwala to na uruchamianie 32 - bitowych aplikacji pod Windows
3.1. Jeśli masz Windows NT - jest to zbędne - o ten "drobiazg"
zadbał już Microsoft.
W przypadku instalacji w sieci, gdzie Windows zainstalowane są
na serwerze należy pamiętać, że BC++ 4 w trakcie instalacji
modyfikuje nie tylko klasyczne parametry systemu:
FILES=40
BUFFERS=40
PATH=...;X:\BC4\BIN;
ale także pliki konfiguracyjne i inicjacyjne w katalogu WINDOWS:
WIN.INI, PROGMAN.INI, SYSTEM.INI,
oraz tworzy nowe własne pliki, które będzie próbował zapisać w
katalogach \WINDOWS i \WINDOWS\SYSTEM, np. BCW.INI, TDW.INI,
HELP.ICO, OWL.INI, BWCC.DLL, itp. (łącznie 18 nowych plików).
Brak prawa zapisu na dysk serwera może uniemożliwić poprawną
instalację i skonfigurowanie BC++ 4/4.5 w sieci.
Borland wraz z wersjami bibliotek dostarcza komplet kodów
źródłowych. Jeśli chcesz - możesz sam wygenerować sobie całą
bibliotekę, jeśli chcesz - możesz na własne oczy przekonać się
jak to wszystko działa i jak jest zbudowane. Oprócz
teoretycznych możliwości poznawczych daje to praktyczną
możliwość dostosowania bibliotek do nowej wersji kompilatora, co
w przypadku "czwórki" może okazać się dla wielu użytkowników
bardzo przydatne (o czy dokładniej za chwilę).
Oprócz klasycznego paska głównego menu zintegrowane środowisko
(IDE) zostało wyposażone w rozbudowaną listwę narzędziową.
W skład pakietu wchodzą między innymi:
* BCW - zintegrowane środowisko (IDE) dla środowiska Windows
* TDW - Turbo Debugger for Windows
* BCC - kompilator uruchamiany z DOS'owskiego wiersza rozkazu
* BCC32 - kompilator 32 - bitowy (odpowiednik BCC)
* BRCC - kompilator zasobów do kompilacji plików *.RC z zasobami
do postaci binarnej *.RES
* RLINK - konsolidator służący do dołączania plików z zasobami
przy tworzeniu plików wykonywalnych *.EXE
* TLINK - "zwykły" konsolidator
* MAKE - program narzędziowy do automatyzacji kompilacji i
konsolidacji, korzystający z tzw. plików instruktażowych
(emulujący NMAKE Microsofta)
* WINSIGHT - przeglądanie informacji o okienkach (dla Windows) i
komunikatach
* TDUMP - bezpośrednie przeglądanie informacji zawartych w
plikach *.EXE i *.OBJ
* TDSTRIP - narzędzie do usuwania tablicy symboli z plików
wykonywalnych
* IMPLIB - importer bibliotek z DLL
* TDMEM - wyświetlanie informacji o zajętości pamięci
* MAKESWAP - zarządzanie swapowaniem (tworzenie plików
tymczasowych EDPMI.SWP o zadanej wielkości)
i jeszcze parę narzędzi (np. tradycyjny bibliotekarz TLIB,
TOUCH, GREP, itp.), o których tu nie wspominam.
Czego robić nie należy?
Przede wszystkim nie należy traktować Borland C++ 4/4.5 jako
"upgrade" do wcześniejszych wersji (3, czy 3.1). W kompilatorze
dokonano sporych zmian (np. inaczej działa operator new). Nie
wolno zatem "nadpisać" zawartości poprzednich katalogów i plików
o tych samych nazwach. Szczególnie dotyczy to plików
konfiguracyjnych BCCONFIG.BCW i TDCONFIG.TDW. Jeśli stare wersje
tych plików nie zostaną przemianowane, bądź usunięte z pola
widzenia (PATH) - pojawią się konflikty przy uruchamianiu BC++.
Ze względu na wprowadzone zmiany pliki .OBJ tworzone przez
wcześniejsze kompilatory C będą w zasadzie przenośne, natomiast
pliki .OBJ i biblioteki utworzone przez wcześniejsze wersje
kompilatorów C++ (szczególnie Borland C++ 3.1) będą sprawiać
kłopoty (nie będą np. poprawnie wywoływane destruktory). Przy
konsolidacji "starych" plików można stosować opcję -K2
konsolidatora, co pozwoli zmniejszyć do minimum ryzyko
konfliktów.
Jeśli jest już Borland Pascal 7...
Jeśli masz już zainstalowany Borland Pascal 7 należy pamiętać,
że poprawna praca obu kompilatorów w jednym systemie wymaga
"uregulowania stosunków":
1. Każdy kompilator musi mieć własną kopię debuggera TDW. Aby
uniknąć konfliktu pascalowski debugger można przemianować np.:
TDW.EXE --> PASTDW.EXE
2. Należy usunąć stare pliki inicjujące TDW.INI. Można tu
posłużyć się narzędziem TDWINI.EXE.
3. Należy sprawdzić poprawność instalacji driverów w pliku
SYSTEM.INI:
DEVICE=X:\BC4\BIN\WINDPMI.386
DEVICE=X:\BC4\BIN\TDDEBUG.386 <-- tu możliwy konflikt z BP 7
Należy usunąć dublujące się instalacje pozostawiając tylko te z
BC++ 4 oraz usunąć pascalowskie TDDEBUG.386 (pas) i TDWIN.DLL by
uniemożliwić omyłkowe zainstalowanie.
Przy poprawnym skonfigurowaniu systemu pozostałe zasoby ( w tym
np. Resource Workshop 4) będą poprawnie współpracować z BP 7.
Stare zasoby C++
Zapewne większość użytkowników Borland C++ 4 "przesiądzie się" z
BC++ 3/3.1 lub Turbo C++. I tu także czychają pewne
niebezpieczeństwa. Stare projekty - tradycyjnie .PRJ w BC++ 4
zyskują nowe domyślne rozszerzenie .IDE. W okienku dialogowym
zarządzania projektem: Project | Open... przy pomocy opcji
[3.1 Project Files (*.prj)]
można dokonać automatycznej konwersji do formatu .IDE, przy czym
stara wersja pliku *.PRJ pozostanie bez zmian. Niektóre stare
kody źródłowe będą wymagać drobnych modyfikacji. Szczególnie
należy zwróćić uwagę na:
- nakładki (overlay support)
- zarządzanie pamięcią (new - delete)
- informacje diagnostyczne w plikach (debug info)
- zmianne pseudorejestrowe (dostępne teraz tylko w niektórych
trybach)
O bibliotece Turbo Vision.
Biblioteka Turbo Vision Library - TV.LIB współpracująca
poprawnie z BC++ 3.0/3.1 powinna zostać powtórnie skompilowana,
ponieważ BC++ 4 stosuje inny format:
- informacji diagnostycznych (debug info format)
- inną długość identyfikatorów (symbol length)
- inną bibliotekę Runtime Library
Kod żródłowy biblioteki znajduje się w katalogu:
\BIN\TVISION\SOURCE
Po (Uwaga!) wprowadzeniu kilku niewielkich zmian
- do plików żródłowych .CPP
- do pliku instruktażowego MAKEFILE
oraz po skompilowaniu przy pomocy BCC 4 w DWU WERSJACH: TVO.LIB
(z nakładką - Overlay) i TVNO.LIB (bez nakładki - No Overlay)
biblioteka TVL może być nadal z powodzeniem stosowana z Borland
C++ 4. Podobnie rekompilacji wymaga bibiloteka klas dołączona w
wersji żródłowej w katalogu X:\BC4\SOURCE\CLASSLIB.
O AUTOMATYZACJI - CASE.
Prócz znanego już od dość dawna (w komputerologii kilka lat to
cała epoka) tradycyjnego narzędzia Resource Worshop, w wersji
BC4 występują jeszcze inne narzędzia CASE kategorii "wizard"
(kreator aplikacji):
- ClassExpert
- ApplicationExpert
- DialogExpert
- TargetExpert
Nazwa TargetExpert pochodzi od ang. "Target platform" - docelowa
platforma pracy aplikacji (DOS, Win16, Win32).
Biblioteka OWL 2.0 została wzbogacona o dodatkowe klasy VBX
umożliwiające współpracę z Visual Basic i wykorzystanie
elementów utworzonych przy pomocy VB.
Wspomaganie tworzenie programu przy pomocy tych narzędzi
(AppExpert podobnie jak inne narzędzie typu Wizard jest
automatycznym generatorem aplikacji) wymaga od użytkownika
wyboru z listy "zagadnienia" a z okienek docelowych cech
programu. Przytoczę tu dla przykładu listę opcji z pojedynczego
okienka AppExperta z krótkim wyjaśnieniem:
________________________________________________________________
Topics: (okienko z listą: Zagadnienia)
Application (program docelowy)
-- Basic Opttions (wybór opcji podstawowych)
-- Advanced Options (opcje zaawansowane)
-- Code Gen Control (sposób generacji kodu)
-- Admin Options (opcje "administracyjne")
Main Window (główne okno programu)
-- Basic Options (podstawowe opcje)
-- SDI Client (interf. jednego dokumentu)
-- MDI Client (interf. wielu dokumentów)
MDI Child/View (okna potomne, widok/edycja)
-- Basic Options (opcje podstawowe)
Model: (Szkielet programu)
[X] Multiple document interface - interfejs MDI
[ ] Single document interface - interfejs SDI
Features: (cechy)
[.] SpeedBar (ma pasek narzędzi)
[.] Status line (ma wiersz statusowy)
[.] Drag/drop (obsługuje ciągnij/upuść)
[.] Printing (obsługuje drukarkę)
________________________________________________________________
Po wybraniu w okienku klawisza [Generate] (wygeneruj) AppExpert
generuje szkielet programu aplikacji o podanych własnościach.
Wygenerowane zostaje od sześciu do dziewięciu (zależnie od
ustawienia opcji i Twoich życzeń) plików projektu:
*.IDE - plik projektu (lub .PRJ)
*.APX - plik roboczy AppExpert'a (odpowiednik
.PRJ)
*.RC - plik zasobów
*.RH - plik nagłówkowy zasobów
*.H - plik nagłówkowy, źródłowy
*.CPP - moduł główny źródłowy
*.HPJ - plik pomocy
*.RTF - źródłowy pomocy kontekstowej
*.ICO - ikonka projektu
Przy pomocy rozkazu Generate makefile można również
automatycznie utworzyć plik instruktażowy MAKEFILE dla
generatora MAKE.EXE.
Uzyskany plik szkieletowy *.CPP należy tylko uzupełnić o obsługę
interesujących nas zdarzeń/komunikatów. Przyspiesza to znacznie
tworzenie typowych aplikacji.
Programiści wszystkich krajów...
BC++ 4 zawiera bibliotekę LOCALE.DLL umożliwiającą obsługę
angielsko- francusko- i niemiecko- języczną. Borland zapowiada,
że następne wersje będą coraz bogatsze. Doczekaliśmy się
spolszczenia Windows - może i Borland C++ po polsku już tuż tuż?
Póki co, najwygodniej podmienić czcionki.
________________________________________________________________
ZAKOŃCZENIE.
I to już niestety koniec. Po przeanalizowaniu historii:
programowania sekwencyjnego i strukturalnego
oraz nowoczesnych styli programowania:
obiektowego i zdarzeniowego
pozostał Ci już tylko wykonanie trzech rzeczy. Powinieneś teraz:
1. Pisać własne aplikacje
2. Pisać własne aplikacje
3. Pisać własne aplikacje
Tak naprawdę - jest to jedyny sposób, by zostać dobrym
programistą.
Przez pewien czas okaże Ci się zapewne przydatna dyskietka
dołączona do książki. Znajdziesz tam jeszcze sporo programów
przykładowych, które nie zmieściły się w książce.
Przyjemnej pracy z programem MEDYT.
Wyszukiwarka
Podobne podstrony:
cpp2 LEKCJA43cpp2 LEKCJA33cpp2 LEKCJA15cpp2 LEKCJA10cpp2 LEKCJA38cpp2 LEKCJA18cpp2 LEKCJA19cpp2 LEKCJA2cpp2 LEKCJA14cpp2 LEKCJA44cpp2 LEKCJA37cpp2 LEKCJA1cpp2 LEKCJA22cpp2 LEKCJA46cpp2 LEKCJA35więcej podobnych podstron