Sign in Join
Wiki copytemporary

FCL/de: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: FCL/de

OldNewLine
1+Die *Free Component Library* (FCL) besteht aus einer Sammlung von Units, Komponenten und Klassen für allgemeine Aufgaben. Dabei beschränkt sich die FCL auf nicht sichtbare Komponenten.
2+
3+Die FCL soll zum einen kompatibel mit der *Visual Component Library* (VCL) sein, zum anderen soll sie darüber hinaus gehen.
4+
5+Einen Überblick über die Komponenten der FCL, sowie über den aktuellen Entwicklungsstand, kann über den Link [Free Component Library](http://www.freepascal.org/fcl/fcl.html) gewonnen werden.
6+
7+Die aktuellsten Source-Pakete gibt es [hier](http://www.freepascal.org/cgi-bin/viewcvs.cgi/trunk/packages/). Dabei sind mache Pakete plattformspezifisch.
8+
9+### Wie die FCL nutzen?
10+
11+Um eine FCL-Komponente in Ihr Programm einzubinden, müssen Sie einfach den Namen der Componente in den **uses**-Bereich Ihres Programms hinzufügen (siehe Beispiel unten). Durch diesen Eintrag wird der Compiler beim Kompilieren veranlasst, im FCL-Verzeichnis von FreePascal nach solchen Units zu suchen, und diese einzubinden.
12+
13+(Sie können diesen Suchpfad auch manuell über den Befehl
14+
15+`-Fu<Pfad_zu_den_FCL-Units>`
16+
17+festlegen)
18+
19+### Unterpackages
20+
21+Die vollständige Liste aller Unterpackages der FCL finden Sie hier: [[Package List]]
22+
23+Die Unterpackages mit der Vorsilbe 'fcl' sind:
24+
25+- [[fcl-base]] die Basis-Units
26+- [[fcl-async]] Asynchrone Ein-/Ausgabe (seriell?)
27+- [[fcl-db]] Allgemeine Datenbankunterstützung + vorbereitete Treiber
28+- [[fcl-fpcunit]] Framework zum Testen von Units
29+- [[fcl-image]] Raster-Images lesen und schreiben (alias "fpimage")
30+- [[fcl-json]] Routinen für das Javascript-Object-Streaming
31+- [[fcl-net]] Netzwerk-bezogene Units
32+- [[fcl-passrc]] Pascal language parsing und Transformation
33+- [[fcl-process]] Prozess-Steuerung
34+- [[fcl-registry]] Registry
35+- [[fcl-web]] Helfer für die Web-Entwicklung
36+- [[fcl-xml]] XML (DOM) Unit und verwandte Units.
37+- [[paszlib]] A Pascal conversion (thus without dependancies) of the standard zlib library.
38+- [[fpvectorial]] Bibliothek zum Lesen, Verändern und Schreiben von Vektorgrafiken
39+
40+### Dokumentation der FCL
41+
42+Derzeit existiert leider keine Dokumentation zur FCL (Sie können gerne bei der Erstellung einer Dokumentation mithelfen). Einige zusätzliche Informationen gibt es in der [Lazarus-Referenz](http://lazarus-ccr.sourceforge.net/docs/fcl/index.html) Im Fall von delphikompatiblen Units kann auch die Delphi-Dokumentation verwendet werden.
43+
44+### Beispiel
45+
46+Das folgende Programm illustriert den Einsatz der Klasse TObjectList, die sich in der FCL-Unit Contnrs befindet und Dinge wie Listen, Stacks und Warteschlangen unterstützt.
47+
48+``` pascal
49+
50+program TObjectListExample;
51+
52+ uses
53+ Classes, { Für TObject aus der RTL }
54+ Contnrs; { Für TObjectList aus der FCL }
55+
56+ type
57+ TMyObject = class(TObject) { Eine beliebige anwendungsspezifische Klasse }
58+ private
59+ FName: String; { mit einer Variablen vom Typ String }
60+ public
61+ constructor Create(AName: String); { und einem Constructor, um sie mit einem gegebenen Namen zu erstellen }
62+ property Name: String read FName; { und einer Property, um den Namen auszulesen. }
63+ end;
64+
65+ constructor TMyObject.Create(AName: String);
66+ begin
67+ inherited Create;
68+ FName := AName;
69+ end;
70+
71+ var
72+ VObjectList: TObjectList; { Für eine Objektliste; }
73+
74+ begin
75+ VObjectList := TObjectList.Create { erstellt eine leere Liste }
76+ with VObjectList do
77+ begin
78+ Add(TMyObject.Create('Thing One'));
79+ Writeln((Last as TMyObject).Name);
80+ Add(TMyObject.Create('Thing Two'));
81+ Writeln((Last as TMyObject).Name);
82+ end;
83+ end.
84+```
85+
86+Dieses Programm muss in einem objektorientierten Modus erstellt werden, etwa -Mobjfpc oder -Mdelphi.
87+
88+### FCL-Komponenten
89+
90+Um Redundanzen zu den oben angegebenen Links zu vermeiden sind hier lediglich Komponenten gelistet, die entweder sehr wichtig sind, oder die auf anderem Wege schwierig zu finden sind.
91+
92+Classes
93+Basisklasse für die Objekt-Pascal-Erweiterungen im Delphimodus.
94+
95+Contnrs
96+Allgemeine Containerklassen, wurde im obigem Beispiel verwendet.
97+
98+FPCUnit
99+Unit-testing-framework (basiert auf das unit-testing-framework von Kent Beck, e.g. cf. ,[JUnit](http://www.junit.org/)), Außerdem hier ein [Artikel, der die FPCUnit dokumentiert](http://www.freepascal.org/docs-html/fpcunit.pdf)
100+
101+XMLRead, XMLWrite und DOM
102+Details hierzu im [[XML Tutorial/de|XML Tutorial]]
103+
104+---
105+*From the Free Pascal wiki, page "FCL/de", as it stood on 2020-02-14 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history