Inhaltsverzeichnis
2.4. Ausnutzen der Eigenschaften gemeinsamer kinematischer Ketten
Da es sich um grundlegende Algorithmen handelt, die nicht auf die Verwendung durch das später entwickelte Programm beschränkt bleiben sollen, ist bei der Implementierung darauf zu achten, dass ein leichtes Wiederverwenden und Portieren des Codes möglich bleibt. Die Formulierung sollte also in einer verbreiteten Hochsprache und ohne den übermäßigen Einsatz von plattformspezifischen Mitteln erfolgen.
Doch welche Sprache auch immer gewählt wird, die Quelltexte der Algorithmen lassen sich nur in solchen Projekten verwenden, die in eben dieser Sprache erstellt werden. Diese Einschränkung gilt nicht für das Kompilat, wenn dieses in einer geeigneten Form angefertigt wird. Aus den Algorithmen wird deshalb eine Funktionsbibliothek für eine ausgewählte Plattform erstellt, die von beliebigen Programmen genutzt werden kann. Die Wahl fällt hier aufgrund der großen Verbreitung auf den PC unter Microsoft Windows.
Allgemein verwendbare Bibliotheken unter Windows sind die Dynamic Link Libraries (DLL). Das sind Code- und Datensammlungen mit einer prozeduralen Schnittstelle, die bei Bedarf durch Anwendungsprogramme in den Speicher geladen und verwendet werden können. Ein objektorientiertes Interface ist an dieser Stelle also nicht möglich. Das ist aber kein großer Nachteil, denn ein solches lässt sich bei Bedarf in der Zielsprache durch eine zusätzliche Ebene der Schnittstelle realisieren.
In die Bibliothek werden sinnvoller Weise auch die Algorithmen zum Ver- und Entschlüsseln von Typencodes aus [1] sowie Funktionen zum Zugriff auf die dort erstellten Typenkataloge mit integriert. Die Algorithmen zum Ableiten von MTen aus kinematischen Ketten werden ebenfalls aus [1] übernommen. Da diese eine effektive Möglichkeit zum Katalogisieren von MTen darstellen, werden die erstellten Kataloge für MTen nicht länger unterstützt.
Die nächste Entscheidung betrifft die Entwicklungsumgebung. Da die Bibliothek keine Programmoberfläche benötigt und in der Entwicklung keine komplexen Objekthierarchien zu verwalten sind, ist hier jeder Compiler geeignet, der einen schnellen Code erzeugt und DLLs anlegen kann. Der Einfachheit halber wird die gleiche Entwicklungsumgebung verwendet wie für das später zu entwickelnde Front-End. Das ist aus den dort genannten Gründen Borland Delphi, das die Hochsprache PASCAL verwendet. Dadurch fallen auch die notwendigen Anpassungen der Algorithmen aus [1] gering aus, denn dort wurde ebenfalls diese Sprache verwendet.