Delphi und Object Pascal

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Delphi und Object Pascal

      Hallo,
      Obwohl ich weiß das hier im Forum nur C++ fetischisten sind, die denken dass jede sprache außer c++ einfach nur lahm ist, weil ihr horizont nur vom .Net über Java zu C++ reicht, will ich hier dennoch an eine sprache erinnern, die anscheinend in Vergessenheit gerät:

      Delphi/(object)Pascal

      Pascal ist eine Sprache die anfangs der 70er jahre entstand(1972). Diese sprache wurde in anfang der 80er zu einer OOP Sprache (Turbo pascal/ Object pascal) entwickelt.
      Diese wurde dann von der Firma Borland auf das heutige Delphi weiterentwickelt (Hinzufügung von Oracle DB verweisen, win32 elementen etc) und ist als Delphi allerdings auch windows gebunden.
      Übringens heist es heute Embarcadero Delphi...

      Die Sprache Object Pascal/Turbo pascal ist jedoch system unabhängig, und das Lazarus Free Pascal Projekt hat sich zur aufgabe gemacht eine system unabhängige Pascal entwicklungsumgebung ähnlich wie die Delphi von Borland zu erstellen.

      Pascal war früher eine sehr weit verbreitete sprache, sie wurde vor allem Anfängern beigebracht, damit sie struktur reinbringen

      Object Pascal gehört bekanntermaßen zu den Strukturiertesten Sprachen die es gibt.
      Delphi wurde außerdem komplett in Pascal geschrieben

      Viele behaupten C++ sei schneller als Pascal, das stimmt so nicht.

      Sowohl C++ als auch Pascal werden Compiliert, und es wird keine Engine oder Runtime benötigt (Letztendlich das gleiche ergebnis).

      Da Pascal so geordnet und strukturiert ist wird einem sauberes programmieren fast schon aufgezwungen, was natürlich auch die performanz des Programmes erhöt.


      Nun zur entwicklungsumgebung:

      Delphi und Lazarus sind sich sehr ähnlich, sie unterscheiden sich in 3 wesentlichen dingen:
      1. Lazarus ist teilweis übelst verbuggt
      2. Delphi hat mehr vorlagen(active x, unit, form) und viel mehr sprachen(von pascal über html, websnap) alle mit Codehervorhebung und vervollständigung
      3. Delphi ist windows gebunden

      In Object pascal ist vor allem ser GUI orientiert, und so ist natürlich auch die IDE aufgebaut.

      Natürlich bekommt man nichts hinterher geworfen, für Delphi 7 kann man zwischen 150(studenten) über 300(Home) bis zu 2800(Extendet) euro zahlen
      Lazarus ist verbuggt aber kostenfrei.

      Zur Sprache:

      Pascal hat seine eigne Syntax,
      so sieht ein neues Pascal Dokument aus

      Quellcode

      1. unit Unit1;
      2. interface
      3. [COLOR="red"]uses
      4. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      5. Dialogs;[/COLOR]
      6. type
      7. [COLOR="#f4a460"] TForm1 = class(TForm)
      8. procedure FormCreate(Sender: TObject);
      9. private
      10. { Private declarations }
      11. public
      12. { Public declarations }
      13. end;[/COLOR]
      14. [COLOR="#9acd32"]var
      15. Form1: TForm1;[/COLOR]
      16. [COLOR="#48d1cc"]implementation
      17. {$R *.dfm}[/COLOR]
      18. [COLOR="silver"]procedure TForm1.FormCreate(Sender: TObject);
      19. begin
      20. end;[/COLOR]
      21. end.
      Alles anzeigen


      Rot sind die Namespace importierungen, orange die deklarationen
      Im grünen bereich müssen globale variablen und konstanten definiert werden
      (WICHTIG: NIRGENDWO ANDERS!!!)
      Blau die Impelemtion von anderen dateien und projekten
      Grau sind die Methoden

      Variablen und Constate:
      Variablen werde so definiert:

      Quellcode

      1. var Name: Type

      oder

      Quellcode

      1. var
      2. Name1: Type
      3. Name2, Name3: AndererTyp

      constante so:

      Quellcode

      1. const Name: Type := Wert


      In Pascal wird zwischen 2 gleich operatoren unterschieden:
      Dem zuweisung operate, er kommt zum einsatz wenn man einer variable einen wert gibt, also einen setzt:

      Quellcode

      1. :=

      und einen abgleich operator, er gibt einen boolean wert zurück ob 2 werte gleich sind:

      Quellcode

      1. =


      Wo globale variablen Definiert werden steht oben, Methoden interne variable kommen dort hin:

      Quellcode

      1. procedure TForm1.FormCreate(Sender: TObject);
      2. [COLOR="red"]var Name: Integer;[/COLOR]
      3. begin
      4. end;

      um genau zu sein, vor den auszuführenden block(mit begin eingeleitet und mit end; abgeschlossen)
      Wo anders werden variablen nicht akzeptiert(teil der Pascal strukturierung)

      Code Blöcke:

      Sowohl bei Prozeduren, als auch bei Schleifen und abfragen muss Delphi gesagt werden wo es anfängt und wo es aufhört (bei c mit { und }) bei delphi geht dies mit begin und end;
      das semikolon am end ist wichtig, handelt es sich um das ende einer klasse oder eines interfaces so heist es

      Quellcode

      1. end.


      Fehler finden:

      Delphi macht einen das fehler finden recht leicht, vor dem debuggen wird der code von Delphi "überflogen" und alle direkten fehler wie Semikolon vergessen, oder Klasse nicht vorhanden, oder sogar divide by 0 etc wird einem angezeigt, Weniger offensichtliche fehler findet man durchs debuggen, Dabei Logt Delphi die programm aktivitäten, bei einem fehler wird das programm angehalten, und delphi sagt wo und was das für ein fehler ist.

      Man kann auch ausschalten das Delphi das programm bei einem solchen fehler aufhängt und statdessen eine fehlermeldung in der jehweiligen sprache rausgeben soll.

      Programme die in Pascal geschrieben wurden:
      Bekannt sollten euch sein:
      Resource Hacker
      Skype

      in Delphi kann man auch wunderbar 3d spiele programmieren

      So viel zu meiner kleinen vorstellung, ich hoffe ich konnte euch die sprache ein wenig näher bringen
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )