Step 05 - Delphi-Source Aufbau

 

Hallo-Welt - erneut, näher betrachtet

Wir öffnen die Projektdatei (Project1.dpr) und die Unit (Unit1.pas) und schauen uns mal an, wie das ganze strukturiert ist.
Project1.dpr:
program Project1;              // Definition: Dies ist ein Programm und heißt Project1

uses                           // hier werden die "Units" eingetragen,
                               //     die das Programm nutzt.

  Forms,                       // dies ist die Haupt"unit" der VCL.
  Unit1 in 'Unit1.pas' {Form1}

{$R *.res}
                              // Hier werden alle Resource-Dateien geladen (Project1.res z.b.)

begin                         // Mit begin startet ein Programm-Abschnitt;
                              // Hier beginnt der Programmquellcode
  Application.Initialize;     // Anwendung initialisieren
  Application.CreateForm(TForm1, Form1); // Formular erstellen
  Application.Run;            // auf Ereignisse achten und Programmende abwarten

end.                          // Ende des Programmes (mit einem "."!)
 
Unit1.pas:
unit Unit1;                 // Definition: diese "Unit" heißt "Unit1"
                            // Auch hier Dateiname=Unitname
                            //    Groß- und Kleinschreibung beachten!

interface

uses                        // hier Werden die "Module" eingetragen,
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;        // die in dieser Unit verwendet werden.

type                        // mit type eingeleitet startet der Abschnitt, in dem die
                            // Objekte, Klassen bzw. Datentypen definiert werden.

  TForm1 = class(TForm)     // Definition der Klasse TForm1 abgeleitet aus der Klasse TForm
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private                   // dies hier wird im einleitenden OOP-Abschnitt
    { Private-Deklarationen }

    // hier können Variablen deklariert werden, ohne vorangehendes "var"
    // über "Sichtbarkeit" von Variablen wird in einem anderen Abschnitt gesprochen.
  public
    { Public-Deklarationen }
    // auch hier können Variablen deklariert werden.
  end;


var                         // Hier können Variablen Deklariert werden, die sogar gleich
  Form1: TForm1;            // initialisiert werden können. Beispiel:  a:Integer=5;

implementation              // Der Implementation-Abschnitt mit allen Ausführungen der
                            // Prozeduren und Funktionen.

                            // Hier können dann die "uses" hin,
                            // die nur im implementation-Abschnitt benötigt werden.

{$R *.dfm}

                            // Im folgenden ist nun die Prozedur aufgeführt, die ausgeführt wird,
                            // wenn man auf das Objekt Button1 klickt.
                            // Prozeduren, die durch ein Ereignis
                            // (Mausklick, Tastendruck etc.)
                            // ausgeführt werden, werden automatisch generiert,
                            // wenn man im Objektinspektor doppelt auf das Feld
                            // des gesuchten Ereignisses klickt (bzw. dahinter!).
                            // Der Name derProzedur ist immer Objektname + Ereignis,
                            // kann aber auch im Objektinspektor umbenannt werden.

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage('Hallo Welt!');
end;


end.                        // ganz Wichtig: Das Ende wieder mit einem "end" mit Punkt ;-)
 
Fazit:
Die Groß- und Kleinschreibung ist in Delphi nur bei Definition des Programmnamens und des Unitnamens wichtig. Die strikte Trennung zwischen "Deklaration"- und "Implementation"-Teil verschafft quasi "automatisch" einen Überblick.
Jetzt liegt es an uns selbst, die Namen der Klasse, Methoden und Attribute möglichst sprechend zu benennen.
 

 

Externe Links zu SocialMedia-Seiten zu diesem Kapitel:

Diese Links sollen dazu dienen, Kommentare und Meinungen rund um dieses Kapitel wiedergeben zu können.
 
 
* Hinweis zu externen Links:
Bitte Haftungsausschluss beachten!
Ich übernehme weder Garantie, noch Gewährleistung, noch Haftung für Inhalte, die nach diesem Link folgen. Mit deinem Klick auf den Link verlässt du meine Website. Es öffnet sich in der Regel ein neuer Tab oder ein neues Fenster.