<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Unit_%28Programmiersprache_Pascal%29</id>
	<title>Unit (Programmiersprache Pascal) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Unit_%28Programmiersprache_Pascal%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Unit_(Programmiersprache_Pascal)&amp;action=history"/>
	<updated>2026-05-21T21:30:38Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Unit_(Programmiersprache_Pascal)&amp;diff=449875&amp;oldid=prev</id>
		<title>imported&gt;Hutch: Abschnittlink korrigiert</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Unit_(Programmiersprache_Pascal)&amp;diff=449875&amp;oldid=prev"/>
		<updated>2023-10-14T03:37:31Z</updated>

		<summary type="html">&lt;p&gt;Abschnittlink korrigiert&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Eine &amp;#039;&amp;#039;&amp;#039;Unit&amp;#039;&amp;#039;&amp;#039; ist eine [[Quelltext]]datei, die separat [[Compiler|kompiliert]] wird.&lt;br /&gt;
Units wurden bereits in [[UCSD-Pascal]] (siehe auch [[Apple Pascal]]) eingeführt.&lt;br /&gt;
Eine Unit besteht aus einem öffentlichen Schnittstellen- (&amp;#039;&amp;#039;interface&amp;#039;&amp;#039;) und einem privaten Implementierungsteil (&amp;#039;&amp;#039;implementation&amp;#039;&amp;#039;). Sie dienen der [[Modul (Software)|Modularisierung]] von Softwarekomponenten und ermöglichen die [[Wiederverwendbarkeit]] von Programmteilen, die in verschiedenen Programmen benötigt werden.&lt;br /&gt;
&lt;br /&gt;
Im öffentlichen Teil, der [[Schnittstelle#Schnittstelle für Programmkomponenten|Schnittstelle]] einer Unit, können Typen (einschließlich [[Klasse (objektorientierte Programmierung)|Klassen]], Konstanten, [[Variable (Programmierung)|Variablen]] und Routinen (Funktionen und Prozeduren)) deklariert werden. Über einen [[Linker (Computerprogramm)|Linker]] kann später eine Unit als [[Bibliothek (Programmierung)|Bibliothek]] in anderen Programmen verwendet werden.&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
unit InetTools;  // Name der Unit&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
interface  &lt;br /&gt;
uses Classes, Windows;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function DownLoadInternetFile(const Source, Dest : String): Boolean;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
implementation  // ab hier beginnt der &amp;#039;&amp;#039;private&amp;#039;&amp;#039; Teil&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function DownLoadInternetFile(const Source, Dest : String): Boolean;&lt;br /&gt;
begin&lt;br /&gt;
   Result := URLDownloadToFile(nil, PChar(Source), PChar(Dest), 0 ,nil) = 0&lt;br /&gt;
end;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
end.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Unit-Konzept erlaubt es dem [[Compiler]] im Hintergrund einen Abhängigkeitstest zu erstellen, damit gegenseitige Abhängigkeiten automatisch zu erkennen und mehrere Units auf einmal zu kompilieren sind.&lt;br /&gt;
Wenn sich z.&amp;amp;nbsp;B. das &amp;#039;&amp;#039;interface&amp;#039;&amp;#039; (die Schnittstelle) von Unit A ändert, muss der Compiler alle Units kompilieren, die diese Unit benutzen.&lt;br /&gt;
Wenn dagegen nur in der &amp;#039;&amp;#039;implementation&amp;#039;&amp;#039; Änderungen stattgefunden haben, braucht nur Unit A neu kompiliert zu werden.&lt;br /&gt;
&lt;br /&gt;
Der Grundstein zum Unit-Konzept wurde schon 1982 von [[Modula-2]] mit den &amp;#039;&amp;#039;Compilation Units&amp;#039;&amp;#039; gelegt.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Pascal (Programmiersprache)]]&lt;br /&gt;
[[Kategorie:Softwarearchitektur]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Hutch</name></author>
	</entry>
</feed>