Der Epina Delphi-Kurs bietet Ihnen eine allgemeine Einführung in das Programmieren mit Delphi/Pascal. Mit vielen ausgearbeiteten Beispielen können Sie direkt in die Delphi-Programmierung einsteigen. Mehr dazu finden Sie hier.... |
![]() |
Home ![]() ![]() |
||
See also: Installation von Fremdkomponenten, 6. Programm: UseUnit, Struktur einer Unit unter Delphi, Delphi Funktionsübersicht | ||
![]() ![]() ![]() ![]() ![]() ![]() |
||
Units und Libraries
Die Struktur eine Bibliothek ist immer gleich: Jede Bibliothek besteht aus einem Interface-Teil, indem alle Deklarationen stehen, die von außen angesprochen werden dürfen, und aus einem Implementation-Teil, der jene Teile des Codes enthält, der "geheim" bleiben soll. Diese Vorgangsweise hat den Vorteil, dass es eine klare Schnittstelle zwischen "innen" und "außen" gibt, so dass der Anwender die Implementierung gar nicht kennen muss (und meist auch gar nicht kennen will), um die Bibliothek zu benützen. Der Interface-Teil wird mit dem Schlüsselwort interface eingeleitet und ist so lange gültig bis das Schlüsselwort implementation auftritt. Ab hier ist dann der Code nicht mehr von außen zugänglich. Im Interface-Teil stehen alle Konstanten, Typdeklarationen und Variablen, die öffentlich zugänglich sein sollen. Außerdem enthält der Interface-Teil die Köpfe von öffentlichen Prozeduren, Funktionen und Klassen (LINK).
Nach der Deklaration des Namens folgt der Interface-Teil. Im Interface-Teil werden zuerst mit Hilfe des uses-Statements alle Bibliotheken aufgelistet, auf die die Unit zurückgreift. Danach folgen beliebige öffentliche Deklarationen, wobei von Prozeduren, Funktionen und Klassen nur jeweils der Kopf (in Kopie) öffentlich gemacht wird. Der Körper dieser Strukturen befindet sich immer im Implementation-Teil. Der Implementation-Teil ist strukturell ähnlich wie der Interface-Teil aufgebaut, nur enthält dieser zusätzlich sämtlichen privaten, von außen nicht sichtbaren Code. Im Implementation-Teil wird das uses-Statement nochmals benützt um Units einzubinden, die im Interface nicht benötigt werden. Generell sollte man so viele Units wie möglich in das uses der Implementation schreiben, um zyklische Referenzen von vorneherein zu vermeiden. Am Ende der Unit steht noch ein optionaler Initialisierungscode, der für jede Unit beim Start des Programms, das diese Unit verwendet, ausgeführt wird. Dieser Code wird typischerweise zur Initialisierung von globalen Variablen eingesetzt.
|
||
Home ![]() ![]() |
Last Update: 2008-09-09