RAD-Tool C++ Builder

Borland bietet Delphi-Umgebung nun für C++-Programmierer an

28.02.1997

Mit dem C++ Builder erweitert Borland sein Produktangebot um ein Entwicklungssystem, das die Konzepte der visuellen Programmierung mit der Sprache C++ verbindet. Im C++ Builder arbeitet der Programmierer ebenfalls mit Formular-Designer, Objektinspektor und der Komponentenpalette. Das Vorgehen bei der Entwicklung einer neuen Anwendung entspricht jenem in Delphi, allerdings generiert der C++ Builder erwartungsgemäß keinen Pascal-, sondern C++-Code.

Grundlage für die Oberflächengestaltung ist auch hier Borlands Komponentenmodell "Visual Component Library" (VCL). Jede Komponente verfügt über Eigenschaften, Methoden und Ereignisse. Die individuelle Anpassung der Komponenten an die konkreten Anforderungen des Programms erfolgt im C++ Builder ebenfalls über den Objektinspektor.

Jede Komponente reagiert auf festgelegte Ereignisse. Indem der Programmierer hierfür konkreten Code implementiert, legt er Aktionen fest, mit denen eine Komponente auf bestimmte Situationen wie beispielsweise das Anklicken eines Buttons antwortet. Das zugrundeliegende Konzept ist wie das Erscheinungsbild des jeweiligen Integrated Development Environment (IDE) bei Delphi und C++ Builder identisch.

Den wesentlichen Unterschied macht der mitgelieferte Compiler aus. Beim C++ Builder setzt Borland auf den bereits etablierten Borland C++-Compiler. Deshalb verarbeitet der C++ Builder nach Angaben des Herstellers problemlos C- und C++-Code nach den gängigen ANSI/ISO-Standards, einschließlich neuer ANSI-Erweiterungen wie Templates, Exceptions und Runtime Type Information (RTTI). C++-Code für andere Compiler, wie beispielsweise von Microsoft oder Watcom soll dem C++ Builder keine Schwierigkeiten bereiten. Problematischer gestaltet sich nur der umgekehrte Weg. Um den C++ Builder auf die von Delphi bekannte Verarbeitung von Eigenschaften, Methoden und Ereignissen in der Entwicklungsumgebung einzustellen, mußten die Borland-Entwickler einige proprietäre Spracherweiterungen vornehmen (beispielsweise durch die Schlüsselwörter --automated, --published, --closure oder --property). Diese können zu Problemen führen, wenn Code aus dem C++ Builder in einen anderen Compiler übernommen werden soll.

Gleichzeitig verstehen sich aber die einzelnen Borland-Produkte untereinander besser. So können Entwickler mit dem C++ Builder ebenso wie mit Delphi eigene Komponenten für die VCL entwickeln. Anwender von Delphi können ab der Version 3 diese zwischen den beiden Entwicklungswerkzeugen beliebig austauschen. Außerdem läßt sich mit dem C++ Builder Pascal- und C++-Code in einer dynamischen Laufzeitbibliothek (DLL) mischen.

Dem C++ Builder gönnte Borland außerdem einen optimierten inkrementellen Linker. Dieser sorgt für kurze Übersetzungszeiten, liefert aber trotzdem kleine Exe-Dateien.

Ein Debugger ist beim C++ Builder direkt in die IDE integriert. Ein Programmfehler beim Start der Anwendung aus der IDE ruft automatisch den integrierten Debugger auf und zeigt die verantwortliche Codestelle. Hier lassen sich komfortabel Variablenwerte überprüfen oder die CPU-Register mit dem CPU-Monitor auswerten.

Konzepte der objektorientierten Programmierung unterstützt der C++ Builder neben der Komponententechnologie auch mit einem Object Repository. In dieser Entwicklungsdatenbank lassen sich Datenmodelle, Geschäftsregeln, Objekte und Formulare für den Einsatz in anderen Projekten ablegen. Dies gestattet eine einfache Wiederverwendung vorhandenen Codes in neuen Projekten und unterstützt gleichzeitig Standardisierungsbestrebungen und Qualitätssicherung innerhalb größerer Projektteams. Durch "Visual Form Inheritance" beispielsweise erbt ein neues Formular sämtliche Charakteristiken einer einmal erstellten Vorlage und dient so als Grundlage für neue Anwendungen.

Die Anbindung von Datenbanken an Applikationen erfolgt auch beim C++ Builder über die Borland Database Engine (BDE). Spezielle Komponenten der VCL gestatten den Zugriff auf Datenbanktabellen. Die Inhalte einzelner Tabellenfelder lassen sich dann in einem Datenbankgitter oder in anderen visuellen Datenbankkomponenten anzeigen. Bereits während der Entwicklungsphase arbeitet der Programmierer dabei mit den Originaldaten ("Live Data").

Benutzerdefinierte Datenansichten oder Selektionen bestimmter Datensätze können dynamisch wie statisch über SQL-Abfragen oder die implementierten Filter und Lookup-Felder der datensensitiven VCL-Komponenten erfolgen. Je nach Variante, wie üblich bietet Borland auch den C++ Builder als Standard-, Professional- und Client-Server-Version an, stehen zusätzliche Funktionen und Tools für die Datenbankentwicklung zur Verfügung.

Neu ist beispielsweise das "Multi Object Gitter", mit dem sich ab der Professional-Version Datenbestände flexibel und schnell anzeigen lassen. Die Client-Server-Ausführung verfügt über umfangreiche Tools zur SQL-Programmierung und unterstützt die Entwicklung im Team durch den integrierten "PVCS Versions Manager" von Intersolv.

Außerdem verfügt die BDE in der Client-Server-Version über Treiber zum direkten Zugriff auf Datenbanksysteme von Oracle, Interbase, Sybase, den Microsoft SQL Server, Informix sowie DB2. Der Zugriff auf andere Datenbestände ist über ODBC-Treiber möglich. Der Preis für Flexibilität und einfache Datenanbindung über die BDE liegt allerdings in dem erheblich langsameren Laufzeitverhalten.

Datenbankzugriff über die Borland Database Engine

Der C++ Builder zielt auf ein Marktsegment, das Delphi mit der Sprache Object Pascal nicht erreichen konnte. Die Kombination aus visueller Entwicklungsumgebung und C++-Compiler kommt bei Borland zwar spät, dafür bieten die Entwickler aus Scotts Valley ein Produkt an, dessen Konzept sich schon bei Delphi bewährt hat. Der C++ Builder beherrscht die visuelle Anwendungsprogrammierung ebenso wie die Entwicklung eigener Komponenten.

Innerhalb seines Produktportfolios setzt Borland auf Harmonie. Das deuten zumindest die Codenamen der neuen C++- und Delphi-Entwicklungswerkzeuge an ("Ebony" & "Ivory"). Eine weitere Version des herkömmlichen Borland-C++-Systems wird zwar ebenfalls vorbereitet, die Portierung der Delphi-Umgebung auf andere Sprachen setzt sich mit dem bevorstehenden Java-Tool "Jbuilder" jedoch fort.

Der C++ Builder kostet in der Standard-Version voraussichtlich 249, in der Professional-Ausführung 1499 und in der Client-Server-Variante stolze 3999 Mark. Die deutsche Version des C++ Builder soll Ende Februar, also rechtzeitig zur CeBIT, verfügbar sein. Eine Testversion gibt es bereits im Internet (http://www.borland.com).

*Jörg Rensmann ist freier Autor in Ilmenau.