Difference between revisions of "Overview of Free Pascal and Lazarus/de"

From Free Pascal wiki
Jump to navigationJump to search
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{Overview of Free Pascal and Lazarus}}
 
{{Overview of Free Pascal and Lazarus}}
 +
=Überblick über Free Pascal und Lazarus=
  
Free Pascal (FPC) ist ein Open-Source [[Glossary#Pascal|Pascal]] Compiler mit zwei bemerkenswerten Features: ein hohes Maß an [[Glossary#Delphi|Delphi]] Kompatibilität und die Verfügbarkeit auf verschiedenen Plattformen, inklusive [[Glossary#Windows|Windows]], Mac OS X und [[Glossary#Linux|Linux]]. Die Free Pascal Kompatibilität mit Delphi beinhaltet nicht nur die Unterstützung für die selbe Object Pascal Programmiersprache, die Delphi verwendet, sondern auch für viele Bibliotheken mit leistungsstarken Routinen und Klassen, für die Delphi mit Recht bekannt ist. Dies beinhaltet vertraute Units wie System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles und Registry, die in Free Pascal enthalten sind auf allen unterstützten Plattformen. Free Pascal enthält auch Units wie Windows, ShellAPI, BaseUnix, Unix und DynLibs für den Zugriff auf plattformspezifische Features. Dieses (ungefähre) Dutzend von Units bildet den Kern dessen, was üblicherweise die Free Pascal Laufzeitbibliothek (RTL) genannt wird.
+
Free Pascal (FPC) ist ein Open-Source [[Glossary#Pascal|Pascal]] Compiler mit zwei bemerkenswerten Features:
 +
* ein hohes Maß an [[Glossary#Delphi|Delphi]] Kompatibilität
 +
* und die Verfügbarkeit auf verschiedenen Plattformen, inklusive [[Glossary#Windows|Windows]], Mac OS X und [[Glossary#Linux|Linux]]. Die Kompatibilität von  Free Pascal mit Delphi beinhaltet nicht nur die Unterstützung für die selbe Object Pascal Programmiersprache, die Delphi verwendet, sondern auch für viele Bibliotheken mit leistungsstarken Routinen und Klassen, für die Delphi zu Recht bekannt ist. Dies sind vertraute Units wie System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles und Registry, die in Free Pascal für alle unterstützten Plattformen enthalten sind. Free Pascal enthält auch Units wie Windows, ShellAPI, BaseUnix, Unix und DynLibs für den Zugriff auf plattformspezifische Features. Dieses (ungefähre) Dutzend von Units bildet den Kern der Free Pascal Laufzeitbibliothek (RTL).
  
Lazarus ist ein Open-Source Entwicklungssystem, das auf dem Free Pascal Compiler aufbaut durch Hinzufügung einer integrated development environment (IDE), die einen syntax-highlighting code Editor enthält und einen visual form designer, sowie eine Komponentenbibliothek, die höchst kompatibel mit Delphi's Visual Component Library (VCL) ist. Die Lazarus Component Library (LCL) enthält Entsprechungen für viele vertraute VCL Bedienelemente wie Formulare, Schaltflächen, Textfelder und so weiter, die verwendet werden, um Anwendungen zu erzeugen, die ein graphical user interface (GUI) haben.
+
Lazarus ist ein Open-Source Entwicklungssystem, das auf dem Free Pascal Compiler aufbaut, indem ein integrated development environment (IDE) dazu kommt, das einen Code-Editor mit  syntax-highlighting enthält und einen visuellen Formular-Designer, sowie eine Komponentenbibliothek, die höchst kompatibel mit Delphi's Visual Component Library (VCL) ist. Die Lazarus Component Library (LCL) enthält Entsprechungen für viele vertraute VCL Bedienelemente wie Formulare, Schaltflächen, Textfelder und so weiter, die verwendet werden, um Anwendungen mit einer grafischen Oberfläche (GUI) zu erstellen.
  
Beide, Free Pascal und Lazarus sind in Pascal geschrieben. Der komplette Quellcode ist verfügbar nicht nur für den Free Pascal Compiler und die Lazarus IDE, sondern auch für alle Units, die die Free Pascal RTL und die Lazarus LCL ausmachen.
+
Beide, Free Pascal und Lazarus, sind in Pascal geschrieben. Der komplette Quellcode ist nicht nur für den Free Pascal Compiler und die Lazarus IDE verfügbar, sondern auch für alle Units, die die Free Pascal RTL und die Lazarus LCL ausmachen.
  
Wie Delphi sind Free Pascal und Lazarus Mehrzweck-Programmier-Werkzeuge. Das bedeutet sie können eine große Vielfalt von Programmen mit ihnen entwickeln, inklusive der folgenden:
+
Wie Delphi sind Free Pascal und Lazarus Mehrzweck-Programmier-Werkzeuge. Das bedeutet, dass Sie eine große Vielfalt von Programmen mit ihnen entwickeln können, inklusive der folgenden:
  
 
=== Konsolenanwendungen ===
 
=== Konsolenanwendungen ===
  
Konsolenanwendungen haben keine grafische Oberfläche (GUI).
+
Konsolenanwendungen haben keine grafische Oberfläche (GUI). Stattdessen werden sie üblicherweise von der Konsole aus gestartet, lesen ihre Eingabe von der Konsole, und schreiben ihre Ausgabe in die Konsole.
Stattdessen werden sie üblicherweise von der Konsole aus gestartet, lesen ihre Eingabe von der Konsole,
 
und schreiben ihre Ausgabe in die Konsole.
 
  
In Windows wird die Konsole gewöhnlich als "command prompt" (cmd), in OS X und Linux wird die Konsole
+
Unter Windows wird die Konsole gewöhnlich als "Befehlszeile" oder "command prompt" (cmd) bezeichnet, in OS X und Linux als "Terminal-Fenster".
als terminal-Fenster bezeichnet.
 
  
Konsolenanwendungen beinhalten kleine Werkzeuge wie z.B. das Windows FC (file compare) Programm oder die  
+
Konsolenanwendungen beinhalten kleine Werkzeuge wie z.B. das Windows FC (file compare) Programm oder die Unix cd und cp Kommandos.
Unix cd und cp Kommandos.
 
  
Konsolenanwendungen können auch mächtige Zahlenverarbeitungs-, Modellierungs- oder Datenverarbeitungsprogramme
+
Konsolenanwendungen können auch mächtige Zahlenverarbeitungs-, Modellierungs- oder Datenverarbeitungsprogramme sein, die kein extravagantes GUI benötigen, weil sie von anderen Programmen oder Batchdateien gestartet werden.
sein, die kein extravagantes GUI benötigen weil sie von anderen Programmen oder Batchdateien gestartet werden.
 
  
Der Free Pascal Compiler und die darin enthaltenen Komponenten sind alles Konsolenanwendungen, da
+
Der Free Pascal Compiler und die darin enthaltenen Komponenten sind alles Konsolenanwendungen. Das bedeutet, dass sie von der Konsole, einer Batchdatei, oder von der Lazarus IDE (Integrated Development Environment auf deutsch: integrierte Entwicklungsumgebung) gestartet werden können.
s bedeutet daß sie von der Konsole, einer Batchdatei, oder von der Lazarus IDE  
 
(Integrated Development Environment auf deutsch: integrierte Entwicklungsumgebung) gestartet werden können.
 
  
Zur Erstellung einer Konsolenanwendung ist lediglich ein Texteditor und der "Free Pascal Compiler" notwendig,
+
Zur Erstellung einer Konsolenanwendung ist lediglich ein Texteditor und der "Free Pascal Compiler" notwendig. Lazarus ist in diesem Fall keine Voraussetzung.
Lazarus ist in diesem Fall keine Vorraussetzung.
 
  
Um Konsolenanwendungen zu erstellen ist Lazarus nicht notwendig.  
+
Lazarus ist nicht notwendig, um Konsolenanwendungen zu erstellen.  
  
Wie auch immer, wenn Du die Arbeit in einer IDE bevorzugst, dann ist Lazarus die beste Wahl um Konsolen Projekte  
+
Wie auch immer, wenn Sie die Arbeit in einer IDE bevorzugen, dann ist Lazarus die beste Wahl, um Konsolen-Projekte zu erstellen, zu bearbeiten, zu debuggen und zu kompilieren.
zu erstellen, zu bearbeiten, zu debuggen und zu kompilieren.
 
  
 
=== Dynamisch ladbare Bibliotheken ===
 
=== Dynamisch ladbare Bibliotheken ===
  
Eine dynamisch ladbare Bibliothek (dll) ist üblicherweise eine Sammlung von kompilierten Funktionen,  
+
Eine dynamisch ladbare Bibliothek ist üblicherweise eine Sammlung von kompilierten Funktionen, die von anderen Programmen aufgerufen werden können. Wie der Name schon sagt, wird die Bibliothek nicht während des Programmstarts sondern erst zur Laufzeit geladen. Unter Windows hat eine Bibliotheksdatei die Erweiterung .dll (dynamic-link library, oder DLL). Unter OS X hat eine Bibliotheksdatei die Erweiterung .dylib (dynamic shared library) und unter Linux die Erweiterung .so (shared object library). Dynamisch ladbare Bibliotheken werden typischerweise verwendet, um Add-ons für andere Programme zu entwickeln, um Bibliotheken zu entwickeln, die von Programmen aufgerufen werden, die in anderen Sprachen wie C und C++ geschrieben wurden, oder um große Projekte in Stücke zu teilen, so dass sich die Projektentwickler nicht gegenseitig auf die Zehen treten. Windows selbst besteht aus hunderten von DLLs, so wie viele andere große Anwendungen wie OpenOffice.org.
die von anderen Programmen aufgerufen werden können.  
 
Wie der Name schon sagt, wird die Bibliothek nicht zur bei während des Programmstarts sondern stattdessen zur Laufzeit geladen. Unter Windows hat eine Bibliotheksdatei eine .dll Erweiterung (dynamic-link library, oder DLL). Unter OS X hat eine Bibliotheksdatei eine .dylib Erweiterung (dynamic shared library). Unter Linux hat eine Bibliotheksdatei eine .so Erweiterung (shared object library). Dynamisch ladbare Bibliotheken werden typischerweise verwendet um Add-ons für andere Programme zu entwickeln, um Bibliotheken zu entwickeln, die von Programmen aufgerufen werden, die in anderen Sprachen wie C und C++ geschrieben wurden, oder um große Projekte in Stücke zu teilen, so daß sich die Projektentwickler nicht gegenseitig auf die Zehen treten. Windows selbst besteht aus hunderten von DLLs, so wie viele andere große Anwendungen wie OpenOffice.org.
 
  
Wie bei Konsolenanwendungen benötigen sie nur einen Texteditor und den Free Pascal Compiler, um eine Bibliothek zu entwickeln, obwohl sie auch ein Lazarus Projekt erstellen können für die Bibliothek und diese in der Lazarus IDE entwickeln können.
+
Wie bei Konsolenanwendungen benötigen Sie nur einen Texteditor und den Free Pascal Compiler, um eine Bibliothek zu entwickeln, obwohl Sie auch ein Lazarus-Projekt für die Bibliothek erstellen können und diese in der Lazarus IDE entwickeln können.
  
 
Unter Windows haben DLLs einen unverdienten Ruf, übermäßig komplex und instabil zu sein. Dies hat mehr zu tun mit der Art und Weise, mit der sie manchmal installiert wurden, als mit den DLLs selbst. Die Übergabe von Information an und von DLLs geschieht gewöhnlich mit einfachen Standard-Datentypen (eher als mit sprachspezifischen Objekten oder Strukturen), was Programmierer zwingt, sorgfältiger darauf zu achten, was sie tun. Wenn das richtig gemacht wird, kann es zu besseren, stabileren Programmen führen.
 
Unter Windows haben DLLs einen unverdienten Ruf, übermäßig komplex und instabil zu sein. Dies hat mehr zu tun mit der Art und Weise, mit der sie manchmal installiert wurden, als mit den DLLs selbst. Die Übergabe von Information an und von DLLs geschieht gewöhnlich mit einfachen Standard-Datentypen (eher als mit sprachspezifischen Objekten oder Strukturen), was Programmierer zwingt, sorgfältiger darauf zu achten, was sie tun. Wenn das richtig gemacht wird, kann es zu besseren, stabileren Programmen führen.
Line 48: Line 40:
 
=== GUI Anwendungen ===
 
=== GUI Anwendungen ===
  
Die meisten Programme, die wir täglich nutzen, sind GUI Anwendungen, inclusive Textverarbeitung, Internetbrowser, Tabellenkalkulation, sogar vielen Entwicklungswerkzeugen. Lazarus und Delphi sind beide gute Beispiele von full-featured GUI Anwendungen. Wenn sie eine GUI Anwendung mit Lazarus entwickeln, entwickeln sie nicht nur Units mit Pascal Code, sie entwerfen auch Formulare, die visuelle Bedienelemente wie Buttons und Listboxen enthalten. Wie in Delphi, wird das Formulardesign in Lazarus visuell erledigt. Elementeigenschaften können in der IDE gesetzt werden oder im Code.
+
Die meisten Programme, die wir täglich nutzen, sind GUI Anwendungen, inklusive Textverarbeitung, Internetbrowser, Tabellenkalkulation, sogar vieler Entwicklungswerkzeuge. Lazarus und Delphi sind beide gute Beispiele von voll ausgestatteten GUI Anwendungen. Wenn Sie eine GUI Anwendung mit Lazarus entwickeln, entwickeln Sie nicht nur Units mit Pascal Code, Sie entwerfen auch Formulare, die visuelle Bedienelemente wie Buttons und Listboxen enthalten. Wie in Delphi wird das Formulardesign in Lazarus visuell erledigt. Elementeigenschaften können in der IDE gesetzt werden oder im Code.
  
Seit die LCL Bedienelemente für alle unterstützten Plattformen verfügbar sind, kann eine GUI Anwendung, die auf einer Plattform entwickelt wurde (zum Beispiel, Windows), kompiliert werden auf anderen Plattformen (zum Beispiel, OS X oder Linux) ohne jede Änderung am Formulardesign oder den Quelldateien.
+
Da die LCL Bedienelemente für alle unterstützten Plattformen zur Verfügung stellt, kann eine GUI-Anwendung, die auf einer Plattform entwickelt wurde (zum Beispiel Windows), auf anderen Plattformen (zum Beispiel OS X oder Linux) ohne jede Änderung am Formulardesign oder an den Quelldateien kompiliert werden .

Latest revision as of 22:06, 2 February 2011

Deutsch (de) English (en) español (es) suomi (fi) français (fr) magyar (hu) Bahasa Indonesia (id) italiano (it) 日本語 (ja) 한국어 (ko) polski (pl) português (pt) русский (ru) slovenčina (sk) 中文(中国大陆)‎ (zh_CN) 中文(台灣)‎ (zh_TW)

Überblick über Free Pascal und Lazarus

Free Pascal (FPC) ist ein Open-Source Pascal Compiler mit zwei bemerkenswerten Features:

  • ein hohes Maß an Delphi Kompatibilität
  • und die Verfügbarkeit auf verschiedenen Plattformen, inklusive Windows, Mac OS X und Linux. Die Kompatibilität von Free Pascal mit Delphi beinhaltet nicht nur die Unterstützung für die selbe Object Pascal Programmiersprache, die Delphi verwendet, sondern auch für viele Bibliotheken mit leistungsstarken Routinen und Klassen, für die Delphi zu Recht bekannt ist. Dies sind vertraute Units wie System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles und Registry, die in Free Pascal für alle unterstützten Plattformen enthalten sind. Free Pascal enthält auch Units wie Windows, ShellAPI, BaseUnix, Unix und DynLibs für den Zugriff auf plattformspezifische Features. Dieses (ungefähre) Dutzend von Units bildet den Kern der Free Pascal Laufzeitbibliothek (RTL).

Lazarus ist ein Open-Source Entwicklungssystem, das auf dem Free Pascal Compiler aufbaut, indem ein integrated development environment (IDE) dazu kommt, das einen Code-Editor mit syntax-highlighting enthält und einen visuellen Formular-Designer, sowie eine Komponentenbibliothek, die höchst kompatibel mit Delphi's Visual Component Library (VCL) ist. Die Lazarus Component Library (LCL) enthält Entsprechungen für viele vertraute VCL Bedienelemente wie Formulare, Schaltflächen, Textfelder und so weiter, die verwendet werden, um Anwendungen mit einer grafischen Oberfläche (GUI) zu erstellen.

Beide, Free Pascal und Lazarus, sind in Pascal geschrieben. Der komplette Quellcode ist nicht nur für den Free Pascal Compiler und die Lazarus IDE verfügbar, sondern auch für alle Units, die die Free Pascal RTL und die Lazarus LCL ausmachen.

Wie Delphi sind Free Pascal und Lazarus Mehrzweck-Programmier-Werkzeuge. Das bedeutet, dass Sie eine große Vielfalt von Programmen mit ihnen entwickeln können, inklusive der folgenden:

Konsolenanwendungen

Konsolenanwendungen haben keine grafische Oberfläche (GUI). Stattdessen werden sie üblicherweise von der Konsole aus gestartet, lesen ihre Eingabe von der Konsole, und schreiben ihre Ausgabe in die Konsole.

Unter Windows wird die Konsole gewöhnlich als "Befehlszeile" oder "command prompt" (cmd) bezeichnet, in OS X und Linux als "Terminal-Fenster".

Konsolenanwendungen beinhalten kleine Werkzeuge wie z.B. das Windows FC (file compare) Programm oder die Unix cd und cp Kommandos.

Konsolenanwendungen können auch mächtige Zahlenverarbeitungs-, Modellierungs- oder Datenverarbeitungsprogramme sein, die kein extravagantes GUI benötigen, weil sie von anderen Programmen oder Batchdateien gestartet werden.

Der Free Pascal Compiler und die darin enthaltenen Komponenten sind alles Konsolenanwendungen. Das bedeutet, dass sie von der Konsole, einer Batchdatei, oder von der Lazarus IDE (Integrated Development Environment auf deutsch: integrierte Entwicklungsumgebung) gestartet werden können.

Zur Erstellung einer Konsolenanwendung ist lediglich ein Texteditor und der "Free Pascal Compiler" notwendig. Lazarus ist in diesem Fall keine Voraussetzung.

Lazarus ist nicht notwendig, um Konsolenanwendungen zu erstellen.

Wie auch immer, wenn Sie die Arbeit in einer IDE bevorzugen, dann ist Lazarus die beste Wahl, um Konsolen-Projekte zu erstellen, zu bearbeiten, zu debuggen und zu kompilieren.

Dynamisch ladbare Bibliotheken

Eine dynamisch ladbare Bibliothek ist üblicherweise eine Sammlung von kompilierten Funktionen, die von anderen Programmen aufgerufen werden können. Wie der Name schon sagt, wird die Bibliothek nicht während des Programmstarts sondern erst zur Laufzeit geladen. Unter Windows hat eine Bibliotheksdatei die Erweiterung .dll (dynamic-link library, oder DLL). Unter OS X hat eine Bibliotheksdatei die Erweiterung .dylib (dynamic shared library) und unter Linux die Erweiterung .so (shared object library). Dynamisch ladbare Bibliotheken werden typischerweise verwendet, um Add-ons für andere Programme zu entwickeln, um Bibliotheken zu entwickeln, die von Programmen aufgerufen werden, die in anderen Sprachen wie C und C++ geschrieben wurden, oder um große Projekte in Stücke zu teilen, so dass sich die Projektentwickler nicht gegenseitig auf die Zehen treten. Windows selbst besteht aus hunderten von DLLs, so wie viele andere große Anwendungen wie OpenOffice.org.

Wie bei Konsolenanwendungen benötigen Sie nur einen Texteditor und den Free Pascal Compiler, um eine Bibliothek zu entwickeln, obwohl Sie auch ein Lazarus-Projekt für die Bibliothek erstellen können und diese in der Lazarus IDE entwickeln können.

Unter Windows haben DLLs einen unverdienten Ruf, übermäßig komplex und instabil zu sein. Dies hat mehr zu tun mit der Art und Weise, mit der sie manchmal installiert wurden, als mit den DLLs selbst. Die Übergabe von Information an und von DLLs geschieht gewöhnlich mit einfachen Standard-Datentypen (eher als mit sprachspezifischen Objekten oder Strukturen), was Programmierer zwingt, sorgfältiger darauf zu achten, was sie tun. Wenn das richtig gemacht wird, kann es zu besseren, stabileren Programmen führen.

GUI Anwendungen

Die meisten Programme, die wir täglich nutzen, sind GUI Anwendungen, inklusive Textverarbeitung, Internetbrowser, Tabellenkalkulation, sogar vieler Entwicklungswerkzeuge. Lazarus und Delphi sind beide gute Beispiele von voll ausgestatteten GUI Anwendungen. Wenn Sie eine GUI Anwendung mit Lazarus entwickeln, entwickeln Sie nicht nur Units mit Pascal Code, Sie entwerfen auch Formulare, die visuelle Bedienelemente wie Buttons und Listboxen enthalten. Wie in Delphi wird das Formulardesign in Lazarus visuell erledigt. Elementeigenschaften können in der IDE gesetzt werden oder im Code.

Da die LCL Bedienelemente für alle unterstützten Plattformen zur Verfügung stellt, kann eine GUI-Anwendung, die auf einer Plattform entwickelt wurde (zum Beispiel Windows), auf anderen Plattformen (zum Beispiel OS X oder Linux) ohne jede Änderung am Formulardesign oder an den Quelldateien kompiliert werden .