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

From Free Pascal wiki
Jump to navigationJump to search
m
 
(12 intermediate revisions by 6 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 by adding an integrated development environment (IDE) that includes a syntax-highlighting code editor and visual form designer, as well as a component library that's highly compatible with Delphi's Visual Component Library (VCL). 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 kein GUI. Stattdessen werden sie üblicherweise von der Konsole gestartet, lesen ihren input von der Konsole, und schreiben ihren output in die Konsole. In Windows the console is usually referred to as a command prompt window. In OS X und Linux the console is referred to as a terminal window. Konsolenanwendungen beinhalten Dinge wie kleine Werkzeuge wie z.B. das Windows FC (file compare) Programm oder den 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 Werkzeugprogramme sind alle Konsolenanwendungen, was bedeutet daß sie von der Konsole gestartet werden können, einer Batchdatei, oder von der Lazarus IDE.
+
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.
  
Sie können eine Konsolenanwendung mit nicht mehr als einem Texteditor und dem Free Pascal Compiler erzeugen. Sie müssen nicht Lazarus benutzen, um Konsolenanwendungen zu erstellen. Wie auch immer, wenn sie die Arbeit in einer IDE bevorzugen, können sie Lazarus verwenden, um ein Projekt für die Konsolenanwendung zu erstellen und dann den Code in der Lazarus IDE bearbeiten und kompilieren.
+
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 ===
 
=== Dynamisch ladbare Bibliotheken ===
  
Ein dynamisch ladbare Bibliothek ist üblicherweise eine Kollektion von kompilierten Funktionen, die von anderen Programmen aufgerufen werden können. Wie der Name suggeriert, ist die Bibliothek nicht zur compile-time in ihr executable gelinkt, 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.
+
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 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 unstabil zu sein. Dies hat mehr zu tun mit der Art und Weise, mit der sie manchmal installiert wurden als mit den DLLs selbst. Actually, since passing information to and from DLLs is normally done with standard, einfachen Datentypen (eher als mit sprachspezifischen Objekten oder Strukturen), this requirement forces programmers to pay more attention to what they're doing. 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.
  
 
=== 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 .