<?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=Turbo_Vision</id>
	<title>Turbo Vision - 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=Turbo_Vision"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Turbo_Vision&amp;action=history"/>
	<updated>2026-05-26T17:50:36Z</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=Turbo_Vision&amp;diff=1969926&amp;oldid=prev</id>
		<title>imported&gt;Y2kbug: Änderung 257148752 von WikiuUser.elefant rückgängig gemacht; Turbo C ist bereits einen Abschnitt darüber verlinkt.</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Turbo_Vision&amp;diff=1969926&amp;oldid=prev"/>
		<updated>2025-06-18T20:09:09Z</updated>

		<summary type="html">&lt;p&gt;Änderung &lt;a href=&quot;/index.php/Spezial:Diff/257148752&quot; title=&quot;Spezial:Diff/257148752&quot;&gt;257148752&lt;/a&gt; von &lt;a href=&quot;/index.php/Spezial:Beitr%C3%A4ge/WikiuUser.elefant&quot; title=&quot;Spezial:Beiträge/WikiuUser.elefant&quot;&gt;WikiuUser.elefant&lt;/a&gt; rückgängig gemacht; Turbo C ist bereits einen Abschnitt darüber verlinkt.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Turbopascal 6.png|mini|Die in Turbo Vision entwickelte [[Integrierte Entwicklungsumgebung|IDE]] für [[Turbo Pascal]]]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Turbo Vision&amp;#039;&amp;#039;&amp;#039; (kurz &amp;#039;&amp;#039;TVision&amp;#039;&amp;#039;, unter Insidern &amp;#039;&amp;#039;TV&amp;#039;&amp;#039;) ist ein [[Framework]] zur Erstellung von [[Anwendungsprogramm]]en mit [[Common User Access|CUA]]-basierter [[Zeichenorientierte Benutzerschnittstelle|zeichenorientierter Benutzerschnittstelle]]. Das Framework war von der ersten Version an objektorientiert und ereignisgesteuert, seinen Benutzern bot es zudem tragfähige Konventionen zur Programmstruktur an. Diese reichten vom konfektionierten Programmablauf der Hauptfunktion bis hinab in die Konventionen der Bezeichnerwahl: Von Turbo Vision stammt ein Großteil der [[Embarcadero Delphi|Delphi]]-Konventionen zur Quelltextgestaltung wie das große &amp;#039;&amp;#039;T&amp;#039;&amp;#039;, das Typnamen vorangestellt wird, oder kleingeschriebene 2- oder 3-Zeichen-Präfixe vor Enumeratoren.&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
Turbo Vision wurde von [[Borland]] Inc. zunächst entwickelt, um auf seiner Basis die [[Integrierte Entwicklungsumgebung|IDEs]] für [[Turbo Pascal]] und [[Turbo&amp;amp;nbsp;C]] für [[MS-DOS]] erstellen zu können. Aus damaliger Sicht bedeutend war, dass es stark [[Objektorientierung|objektorientiert]] und [[Ereignis (Programmierung)|ereignisgesteuert]] war. Der [[Kontrollfluss]] ist damit nicht vorrangig anhand der Anweisungen des Hauptprogramms verständlich, sondern erfordert Einblicke in die spezifische Implementierung von Klassen. Grundsätzlich waren Tastatur und Maus gleichermaßen als Eingabegeräte konzipiert, was unter DOS damals keineswegs eine Selbstverständlichkeit war.&lt;br /&gt;
&lt;br /&gt;
Mit Turbo Pascal 6.0 (bzw. Turbo C 2.0) wurde Turbo Vision für die Benutzer der Borland-IDEs zur Entwicklung eigener Anwendungen verfügbar. Hierbei war nicht nur eine [[Kontextsensitivität (Informatik)|kontextsensitive]] Online-Hilfe inklusive, sondern es wurde auch das Konzept der Anwendungsentwicklung unter Turbo Vision ausführlich und verständlich erklärt.&lt;br /&gt;
&lt;br /&gt;
Nachdem die Anwendungsentwicklung sich zunehmend auf Plattformen ausdehnte, die grundlegende grafische Möglichkeiten zur [[Grafische Benutzeroberfläche|GUI]]-Programmierung bereitstellten, ging die Bedeutung textbasierter Systeme zurück. Turbo Vision und ähnliche Frameworks konnten sich lediglich für wenige Systeme mit außerordentlichen Ansprüchen an Rechenleistung halten.&lt;br /&gt;
&lt;br /&gt;
Der [[Quelltext]] von Turbo Vision wurde um 1997 zusammen mit den Quellen der C++-IDE durch Borland in die [[Public domain]] freigegeben.&amp;lt;ref name=&amp;quot;PDTV&amp;quot;&amp;gt;{{Internetquelle |autor=Salvador Eduardo Tropea |url=https://tvision.sourceforge.net/ |titel=Turbo Vision: Port to the GNU compiler and more |werk=tvision.sourceforge.net |sprache=en |abruf=2010-05-12 |zitat=What about copyrights? […] According to a FAQ entry in the Borland&amp;#039;s site (was in &amp;lt;nowiki&amp;gt;http://www.inprise.com/devsupport/bcppbuilder/faq/QNA906.html&amp;lt;/nowiki&amp;gt; when I saw it) the code is public domain. I also asked in the Borland&amp;#039;s newsgroup and the TeamB people (not official people but they are who give technical support in the net) said me the FAQ was right.&lt;br /&gt;
}}&amp;lt;/ref&amp;gt;&amp;lt;ref name=&amp;quot;PDTV2&amp;quot;&amp;gt;{{Internetquelle |url=http://community.borland.com/article/0,1410,17285,00.html |titel=Turbo Vision - by Borland Developer Support Staff |werk=community.borland.com |datum=1998-07-02 |sprache=en |archiv-url=https://web.archive.org/web/20040119162125/http://community.borland.com/article/0,1410,17285,00.html |archiv-datum=2004-01-19 |abruf=2023-05-03 |zitat=Question: Where can I find the public domain version of Turbo Vision? Answer: It can be found at &amp;lt;nowiki&amp;gt;ftp.inprise.com/pub/borlandcpp/devsupport/archive/turbovision/&amp;lt;/nowiki&amp;gt;}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seitdem wird das Framework unter [[BSD-Lizenz]] für eine Vielzahl von [[Betriebssystem]]en weiterentwickelt.&lt;br /&gt;
&lt;br /&gt;
Beim Übergang zur Windows-Entwicklung entwickelte Borland nach ersten Versuchen mit TPW (Turbo Pascal for Windows), das stark an die Konzepte von TV anknüpfte, für [[Borland Delphi]] ein neues Framework, die [[Visual Component Library]] (VCL), die dank [[Closure (Funktion)|Closures]] eine wesentliche Schwäche von TV ablegte: Verhalten von Komponenten nahezu ausschließlich durch [[Vererbung (Programmierung)|Ableitung]] von [[Basisklasse]]n steuern zu können.&lt;br /&gt;
&lt;br /&gt;
== Klassisches Beispiel ==&lt;br /&gt;
Mit den folgenden wenigen Zeilen ließ sich bereits in den 1990er Jahren ein Programm erstellen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
program MyTVApp;&lt;br /&gt;
&lt;br /&gt;
uses App;&lt;br /&gt;
&lt;br /&gt;
var MyApp: TApplication;&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
  MyApp.Init;&lt;br /&gt;
  MyApp.Run;&lt;br /&gt;
  MyApp.Done;&lt;br /&gt;
end.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dieses Programm hatte allerdings keinerlei vom Standard abweichende Eigenheiten zu bieten. Es verfügte über eine Menüleiste mit einer Beenden-Option ([[Tastenkombination]] {{Taste|Alt|halten}}&amp;amp;nbsp;+&amp;amp;nbsp;{{Taste|X}}) und konnte per Maus gesteuert werden. Das [[Menü (Computer)|Menü]] ließ sich über [[Tastaturbelegung#Funktionstasten|{{Taste|F10}}]] ansteuern. Um tatsächlich eigene Programme zu gestalten, musste man zumindest eine eigene [[Klasse (Objektorientierung)|Klasse]] von TApplication ableiten. So ließ sich z.&amp;amp;nbsp;B. durch Überschreiben der Init-Methode das Menü mit eigenen Funktionen anreichern. In jedem Falle war man bei Turbo Vision gezwungen, eigene Klassen von Standardklassen abzuleiten.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.sigala.it/sergio/tvision/ sigala.it]&lt;br /&gt;
* [https://wiki.freepascal.org/Free_Vision wiki.freepascal.org] ([https://wiki.freepascal.org/Free_Vision/de de])&lt;br /&gt;
* {{SourceForge|tvision}}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Benutzerschnittstelle]]&lt;br /&gt;
[[Kategorie:Pascal-Bibliothek]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Y2kbug</name></author>
	</entry>
</feed>