Wendy Wells: Unterschied zwischen den Versionen

Aus ManiacWiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „{| |Es gibt sehr viele verschiedene Programmiersprachen, viele davon wurden für bestimmte Probleme und Anforderungen entwickelt und optimiert. So sind zum Beisp…“)
 
Zeile 1: Zeile 1:
{|  
+
__NOTOC__ [[Image:mm_wendy.gif|120px|right]]Wendy, eine Nebenfigur aus [[Maniac Mansion]], ist ein echter Bücherwurm. Kein wunder denn Sie möchte gerne Schriftstellerin werden und wartet auf ihren großen Durchbruch.  
|Es gibt sehr viele verschiedene Programmiersprachen, viele davon wurden für bestimmte Probleme und Anforderungen entwickelt und optimiert. So sind zum Beispiel spezielle Datenbanksprachen wie SQL oder dBase für die Sammlung von Informationen<ref>Adviki beispielsweise basiert auf einer MySQL-Datenbank</ref> gedacht, andere wie VHDL oder Verilog sind hardwarenahe Sprachen, die zum Beispiel für Grafikkarten verwendet werden. Fanentwickler für Adventurespiele finden in der unten aufgelisteten Matrix einige Programmiersprachen, die zum Teil einen eigenen Artikel auf Adviki haben. Der Fokus liegt dabei auf der Entwicklung von Adventures, sodass sich Interessierte hier einen ersten Überblick verschaffen können. Der Verbreitungsgrad einer Programmiersprache kann maßgeblich für den unter Umständen notwendigen Support sein, so befinden sich auf [http://freshmeat.net/browse/160/ freshmeat] mehr als 9000 (aktive) Projekte in der Programmiersprache C und weniger als hundert Projekte in der Programiersprache Pascal<ref>Freshmeat ist eine Portalseite für Linux Applikationen, diese basieren traditionell auf "C", dementsprechend ist der Vergleich zwischen "C" und Pascal nur exemplarisch zu sehen</ref>.
 
|width="19%"|__TOC__
 
|}
 
  
== Qualitätsmerkmale ==
+
Dies ist gar nicht so leicht, denn erstmal muss Sie [[Dave Miller|Dave]] und seinen Kammeraden Helfen, die von [[Dr. Fred Edison]] gefangene [[Sandy Pantz]] zu befreien. Sie ist die einzige die das kappute Manuscript des Metors wieder herstellen kann.
Für die Programmierung einer Anwendung gibt es verschiedene Ansätze hinsichtlich Konzeption und Realisierung<ref>Beispielsweise wird auf [http://www.99-bottles-of-beer.net/abc.html 99-bottles] mit über 1200 Programmiersprachen das Lied 99-Flaschen in einer Schleifenvariante gelöst</ref>. Grundlegende Qualitätsmerkmale, sowohl bei einem Computerspiel (Adventure) als auch bei Anwendungen (z. B. [[Visionaire]]) sind jedoch fast immer identisch und sind eben so oder in abgewandelter Form in der Literatur anzutreffen. Zur Qualitätssicherung gibt es verschiedene Qualitätsmodelle. Klassische Bestandteile eines solches Modells sind:
 
* '''Korrektheit:''' Damit ist die Übereinstimmung von Realisierung und Anforderung gemeint (also die möglichst Exakte Erfüllung der Anforderung)
 
* '''Zuverlässigkeit:''' Fehleingaben von Usern (z. B. falsche Eingabe bei parserbasierenden Adventures) soll nicht zum Absturz führen. Idealerweise weist das Programm oder das Spiel auf eine Fehleingabe hin. Beispiele sind vor allem bei [[Parser|parser]]basierenden Adventures zu finden, die teilweise nachfragen, ob die Aktion richtig geschrieben wurde oder ob man das ganze auch anders ausdrücken könnte.
 
* '''Benutzerfreundlichkeit:''' Der Quellcode sollte nicht unnötig verschachtelt oder umständlich aufgebaut sein (Spaghetticode<ref>''Der bildhafte Ausdruck Spaghetticode bezeichnet ein Programm, in dem, durch unbedingte Sprünge (z.B. zahlreiche verschachtelte Sprunganweisungen), der Programmablauf schwer nachzuvollziehen ist, wie bei einem Berg Spaghetti, bei dem es sehr schwer ist, herauszufinden, welche Nudelenden zusammen gehören.'' Zitat: [http://de.wikipedia.org/wiki/Programmiererjargon Wikipedia]</ref>)
 
* '''Effizenz:''' Möglichst unnötige Funktionen vermeiden. Dafür gibt es diverse Möglichkeiten (z. B. Variablen anstatt Strings oder objektorientierte Programmierung).
 
* '''Kompatibilität:''' Einfachheit, mit der Software mit anderer Software verbunden werden kann.
 
* '''Portabilität:''' Ersatzbarkeit erstellter Software auf anderen Zielsystemen (andere Hard- und Software). Gerade hier punkten Sprachen wie dotNet oder Java.
 
* '''Integrität:''' Schutz der einzelnen Komponenten gegen unberechtigten Zugriff und Veränderung. Inbesondere bei Online-Textadventures ist dies wichtig, da sonst ein unerlaubter Zugriff auf den Server möglich sein kann.
 
  
 +
== Anspielungen und Fangames ==
 +
Wendy hat in der LucasArts Ära ein recht kurzes Leben, denn Sie kommt, wie viele andere Spielbare Figuren, ausschließlich in [[Maniac Mansion]] 1 vor. In einigen Fanadventures, Beispielsweise [[Maniac Mansion Mania]] Folge 48 "Wendy und das Buch des Todes" (Folge 48)<ref>Quelle: [[http://www.maniacmansionmania.com Maniac-Mansion-Mania]]</ref> taucht Sie jedoch immer wieder mal auf.
  
== Matrix ==
+
== Quellen/Referenzen ==
Der '''Status''' ist wie folgt gegliedert: 1 (''empfehlswert''), 2 (''neutral''), 3 (''eher ungeeignet''). Bei '''Plattform''' ist die Entwicklungsumgebung gemeint. Meistens ist diese auch gleichzeitig die verwendbare Plattform, die Runtime (das fertige Produkt). Emulatoren, die bestimmte Applikationen auch auf anderen Systemen nutzbar machen (z. B. AGS unter Linux) werden nicht berücksichtigt.
+
<references />
{| class="prettytable sortable" width="100%"
 
!  !! class="unsortable" | Anmerkung !! class="unsortable" | Anwendung/Eigenschaft !! Status !! Plattform
 
|-
 
|class="hintergrundfarbe6"  | Ada
 
|class="hintergrundfarbe2" |
 
* Leichtes Programmieren durch klare Ausdrücke
 
* Gute Fehlererkennung
 
* assemblernahe Programmierung
 
* andere Programmiersprachen lassen sich leicht einbinden
 
* echte Realtime-Sprache
 
|class="hintergrundfarbe2" |
 
* Benannt nach Aba Byron
 
| 3
 
| alle
 
|-
 
|class="hintergrundfarbe9"  | [[Adventuregamestudio|AGS]]
 
|class="hintergrundfarbe2" |
 
* Arbeit in einer WYSIWYG-Entwicklungsumgebung
 
* Scriptbasierende Programmiersprache
 
* Objektorientierung möglich
 
* sehr viele Plugins und Templates für Adventures
 
* sehr große Community
 
* keine Realtime-Sprache
 
|class="hintergrundfarbe2" |
 
* Name steht für "''A''dventure-''G''ame-''S''tudio"
 
* Speziell für Adventures und Rollenspiele entwickelt
 
* sehr viele Fanadventures basieren auf AGS
 
| 1
 
| Windows
 
|-
 
|class="hintergrundfarbe9"  |Adventure Maker
 
|class="hintergrundfarbe2" |
 
* Arbeit in einer WYSIWYG-Entwicklungsumgebung
 
* viele Funktionen die beim Arbeiten helfen (z. B. [http://www.hungrysoftware.com/#/tools/sludge/ Floor plans])
 
* Unterstützung für AVI, MPG, WMV etc.
 
* Möglichkeit CODECs direkt im Spiel zu Integrieren.
 
|class="hintergrundfarbe2" |
 
* Spiele für iPhone/iPOD Touch, PSP und Windows
 
* kein freies Skriptsystem, viele Einschränkungen
 
| 1
 
|Windows
 
|-
 
|class="hintergrundfarbe6"  | Algol
 
|class="hintergrundfarbe2" |
 
* algorithmische Formelsprache
 
* strukturiertes Programmieren möglich
 
* Ursprache für neue Programmiersprache
 
* keine Realtime-Sprache
 
|class="hintergrundfarbe2" |
 
* Name steht für "''Algo''rithmic-''L''anguage"
 
* Für Adventureentwicklung eher ungeeignet
 
* DIN 66 026
 
| 3
 
| alle
 
|-
 
|class="hintergrundfarbe9"  |AGI Studio
 
|class="hintergrundfarbe2" |
 
* Original Entwickungstool, von [[Sierra ]]für ihre frühreren Adventures (KingsQuest, SpaceQuest)
 
* Beschränkung auf 160x200 Pixel (Retro-Style)
 
|class="hintergrundfarbe2" |
 
* '''AGI''' steht für '''A'''dventure '''G'''ame '''I'''nterpreter
 
| 1
 
|Windows
 
|-
 
|class="hintergrundfarbe9"  | [[Adventure Game Authoring System|AGAST]]
 
|class="hintergrundfarbe2" |
 
* Scriptbasierende Programmiersprache
 
* Möglichkeit mehrere parallel ablaufende Aktionen durchzuführen (z. B. diverse Aktionen von Hintergrundfiguren und Objekten)
 
|class="hintergrundfarbe2" |
 
* DirectX 9 wird benötigt
 
| 1
 
|Windows
 
|-
 
|class="hintergrundfarbe3"  | Basic
 
|class="hintergrundfarbe2" |
 
* leicht erlernbar
 
* problemorientierte Sprache
 
* vielfältige Abwandlungen des Basics verfügbar (GW-Basic, Turbo-Basic)
 
* bedingte Realtime-Sprache
 
|class="hintergrundfarbe2" |
 
* Name steht für "''B''egginers-''A''ll Purpose ''S''ymbolic ''I''nstruction ''C''ode"
 
* DIN 66 284
 
| 2
 
|alle
 
|-
 
|class="hintergrundfarbe3"  | C / C++
 
|class="hintergrundfarbe2" |
 
* kompakter Code
 
* Einsatz u. a. für Programmierentwicklung (z. b. [[Adventuregamestudio|AGS]] basiert auf C)
 
* strukturiertes Programmieren möglich
 
* andere Programmiersprachen (z. b. [[LUA]]])können eingebunden werden
 
* viele Kommerzielle Spiele basieren auf C/C++
 
|class="hintergrundfarbe2" |
 
* Name steht für "''C''ombined Programming Language"
 
* C++ ist die objektorientierte Variante von C
 
* maschinennahe Programmierung
 
| 2
 
|alle
 
|-
 
|class="hintergrundfarbe6"  | Cobol
 
|class="hintergrundfarbe2" |
 
* problemorierte Programmiersprache für kaufmännischen und administrativen Bereich
 
* Programmcode ist lesbar wie englischer Text
 
|class="hintergrundfarbe2" |
 
* Cobol85 ist standardisiert durch ANSI (ANSI-Cobol)
 
| 3
 
|alle
 
|-
 
|class="hintergrundfarbe3"  | Java
 
|class="hintergrundfarbe2" |
 
* kleiner, portabler und leichter anwendbar als C++
 
* plattformneutral (auch für Handy, PALM etc.)
 
* Programme werden in Bytecodes kompiliert
 
|class="hintergrundfarbe2" |
 
* Auch für Webadventures etc. geeignet
 
* Kommerzielle Spiele (z. B. [[Edna bricht aus]])
 
| 2
 
|alle
 
|-
 
|class="hintergrundfarbe6"  | LISP
 
|class="hintergrundfarbe2" |
 
* Programmaufbau besteht auf Funktionen
 
* nicht prozedural (keine Aneinanderrreihung von Befehlen)
 
* Anwendung in der künstlichen Intelligenz
 
|class="hintergrundfarbe2" |
 
* wird oft bei Egoshootern für Gegnerintelligenz verwendet
 
| 3
 
|alle
 
|-
 
|class="hintergrundfarbe3"  |[[LUA]]
 
|class="hintergrundfarbe2" |
 
* leichte Scriptsprache (einfache Syntax)
 
* extrem schnell, hochgradig portabel
 
* lässt sich in andere Sprachen (C, C++ etc.) integrieren
 
* viele kommerzielle Spiele (u. a. [[Monkey Island 4|Mi4]]
 
* sehr große Community
 
|class="hintergrundfarbe2" |
 
* Spiele für iPhone/iPOD Touch, PSP und Windows
 
| 2
 
|alle
 
|-
 
|class="hintergrundfarbe9"  | MAD-Engine
 
|class="hintergrundfarbe2" |
 
* Scriptbasierende Programmiersprache
 
* Open-Source-Engine
 
* Setzt auf [[LUA]]
 
|class="hintergrundfarbe2" |
 
* [http://www.doornik.com/products.html#OxEdit OxEdit] bietet Syntax-Highlights für die Scriptsprache
 
| 1
 
|alle
 
|-
 
|class="hintergrundfarbe6"  | Pascal
 
|class="hintergrundfarbe2" |
 
* gute Strukturierung möglich
 
* wenige Grundbefehle (einfach zu lernen)
 
* mit Turbo-Pascal annährend Realtime-Programmierung
 
|class="hintergrundfarbe2" |
 
* benannt nach Blasise Pascal
 
| 3
 
|alle
 
|-
 
|class="hintergrundfarbe9"  | [[Point&Click Development Kit|PaCDK]]
 
|class="hintergrundfarbe2" |
 
* Umfangreiches Scriptsystem
 
* Skripthilfe und Autovervollständigung
 
* Partikeleffekte, EAX
 
|class="hintergrundfarbe2" |
 
* Entwickelt von [[Zimond]] (Benjamin Maas)
 
| 1
 
|Windows
 
|-
 
|class="hintergrundfarbe9"  | SCI Studio
 
|class="hintergrundfarbe2" |
 
* Arbeit in einer WYSIWYG-Entwicklungsumgebung
 
* Scriptbasierende Programmiersprache
 
|class="hintergrundfarbe2" |
 
* Möglichkeit, ältere Sierra-Adventures zu bearbeiten (z. B. [[Leisure Suit Larry 2]])
 
| 1
 
|Windows
 
|-
 
|class="hintergrundfarbe9"  | [[Visionaire]]
 
|class="hintergrundfarbe2" |
 
* Arbeit in einer WYSIWYG-Entwicklungsumgebung
 
* Scriptbasierende Programmiersprache (ab V#3)
 
* Unterstützung der Grafikschnittstellen OpenGL, DirectX und DirectDraw
 
* 3 Lizenzmodelle (Freeware-, Werbe- und kommerzielle Spiele)
 
|class="hintergrundfarbe2" |
 
* viele "große" Adventureprojekte nutzen Visionaire (u. a. [[Zak Mc Kracken - Between Time and Space|ZakBTAS]] oder [http://www.dott2.org Dott2])
 
| 1
 
|Windows
 
|-
 
|class="hintergrundfarbe6"  | SQL
 
|class="hintergrundfarbe2" |
 
* Datenbanksprache
 
* verschiedene Versionen und Lizenzen (MySQL, MS-SQL)
 
|class="hintergrundfarbe2" |
 
* nicht direkt zum Erstellen von Adventureprojekten aber als Backend z. B.
 
** für das Inventar oder Aktionsmenü (z. B. bei [[Edna bricht aus]]
 
** oder für Online Text-Adventures etc.)
 
| 3
 
|alle
 
|-
 
|class="hintergrundfarbe9"  | [[Z-Code|Z-Code/Frotz]]
 
|class="hintergrundfarbe2" |
 
* Scriptsprache
 
* Speziell für Textadventures entwickelt
 
|class="hintergrundfarbe2" |
 
* Für den Z-Codestandard gibt es mehrere Interpreten, bekanntester ist Fortz
 
* Ursprung der Firma IntoCom
 
| 1
 
|alle
 
|}
 
  
'''Anmerkung:''' "Grün" markierte Programmiersprachen sind für Adventures empfehlenswert (z. B. speziell dafür Entwickelte), "Gelb" markierte sind komplex aber durchaus empfehlenswert für Spieleprogrammierung (z. B. solche, die im kommerziellen Umfeld erfolgreich verwendet wurden), "Blau" sind Sprachen, die nicht oder nur mit viel Aufwand sinnvoll sind (z. B. ist SQL eine Datenbanksprache, aber für ein Online-Textadventure durchaus ein Ansatz).
+
== Wendy in verschiedenen Versionen ==
 
+
<Gallery>
== Quelle / Referenzen ==
+
Image:mm_wendy2.gif|EGA-Version
<references />
+
Image:Mmd_scnshot02.jpg|VGA-Version
 +
</Gallery>
  
[[Kategorie:Programmierung]][[Kategorie:Lexikon]]
+
[[Category:Charaktere]][[Category:Lexikon]][[Category:Maniac Mansion]][[Category:Maniac Mansion Mania]]

Version vom 24. Februar 2009, 20:19 Uhr

Mm wendy.gif

Wendy, eine Nebenfigur aus Maniac Mansion, ist ein echter Bücherwurm. Kein wunder denn Sie möchte gerne Schriftstellerin werden und wartet auf ihren großen Durchbruch.

Dies ist gar nicht so leicht, denn erstmal muss Sie Dave und seinen Kammeraden Helfen, die von Dr. Fred Edison gefangene Sandy Pantz zu befreien. Sie ist die einzige die das kappute Manuscript des Metors wieder herstellen kann.

Anspielungen und Fangames

Wendy hat in der LucasArts Ära ein recht kurzes Leben, denn Sie kommt, wie viele andere Spielbare Figuren, ausschließlich in Maniac Mansion 1 vor. In einigen Fanadventures, Beispielsweise Maniac Mansion Mania Folge 48 "Wendy und das Buch des Todes" (Folge 48)<ref>Quelle: [Maniac-Mansion-Mania]</ref> taucht Sie jedoch immer wieder mal auf.

Quellen/Referenzen

<references />

Wendy in verschiedenen Versionen