(0) exportieren Drucken
Alle erweitern
Erweitern Minimieren

Ein heterogener Entwickler

Veröffentlicht: 09. Dez 2001 | Aktualisiert: 17. Jun 2004
Von Robert Hess

* * *

Es gibt einige Programmierer, die nur eine Sprache beherrschen. Im Allgemeinen lernen Entwickler mehrere Computersprachen, wenn sie bei verschiedenen Firmen oder mit verschiedenen Computerumgebungen gearbeitet haben. Für jedes Projekt ist anscheinend eine bestimmte Sprache fast schon Standard. Andererseits gibt es die "Hobby"-Programmierer, die verschiedene Sprachen nur zum Spaß lernen, nicht, weil es zur Stellenbeschreibung gehört.

Ich bin stolz darauf, dass ich nicht nur zahlreiche Sprachen beherrsche, sondern auch dafür bezahlt wurde, in diesen Sprachen zu programmieren. Dies reicht von den weit verbreiteten Sprachen C, C++, Fortran und COBOL zu den esoterischeren und weniger bekannten Sprachen FORTH, Modula-2 und Postscript (für diejenigen unter meinen Lesern, die das nicht wussten: Ja, Postscript ist eine Programmiersprache, die auf Forth basiert und speziell für Drucker entwickelt wurde). Ich habe früh in meiner Entwicklerlaufbahn in den Semesterferien beim Staat Washington gearbeitet. Beim Vorstellungsgespräch sprachen wir über meinen Hintergrund als Programmierer, Datenbankentwürfe und verschiedene andere Themen. Mir wurde gesagt, dass ich am folgenden Montag mit der Arbeit beginnen könne. Ich hatte schon fast die Tür hinter mir geschlossen, als mir die Frage einfiel, in welcher Sprache ich programmieren würde. Die Antwort war "Cobol"… Nun, damit hatte ich noch nie gearbeitet. Ich rief jedoch einen Freund an, der mir über das Wochenende ein Buch über Cobol auslieh. Montag morgen wusste ich mehr als die anderen.

Im Lauf der Jahre hat es mir Spaß gemacht, verschiedene andere Sprachen zu lernen, manche für kleine Projekte oder Experimente am Rande, andere für wichtigen Code.

Bei einigen vor Kurzem abgeschlossenen Programmierungen habe ich mehr über das Entwickeln ganzer Anwendungen gelernt. Ich erinnere mich an die frühen Tage von "Visual Basic". Ich experimentierte ein bisschen herum und schrieb einige rudimentäre Programme, um herauszufinden, was in dieser neuen Entwicklungsumgebung möglich war. Das war spannend. Diese vereinfachte visuelle Programmierumgebung war hochinteressant. Ich hatte vorher einige andere fortgeschrittene visuelle Entwicklungsumgebungen verwendet, aber Visual Basic bot eine umfassendere Vereinfachung, durch die es sehr interessant wurde. Es gab jedoch gleichzeitig bestimmte Bereiche, vor denen Visual Basic mich vielleicht "schützte". Die herkömmliche Windows-API war ebenso wie Nachrichtenschleifen, Window-Handles und Gerätekontexte vor mir verborgen. Als Windows-Entwickler war ich mit diesen Konzepten vertraut und fühlte mich eingeschränkt, weil ich sie nicht verwenden konnte.

Im Laufe der Zeit hat die Visual-Basic-Entwicklungsumgebung an Stärken und Funktionen gewonnen, so dass fast alles, was in einem C/C++-Programm möglich ist, auch in Visual Basic programmiert werden kann. Für viele wichtige Konzepte der Interaktion mit dem zugrunde liegende Betriebssystem (Windows) bestehen zwischen den beiden Entwicklungsumgebungen jedoch noch erhebliche Unterschiede.

In letzter Zeit hat das Internet in die Entwicklung von Anwendungen ein neues Modell und ein neues Konzept eingeführt. Ich weiß nicht, wie viele meiner Leser dieselben Erfahrungen gemacht haben, aber ich wechsle häufiger zwischen VBScript und JavaScript, als ich je zuvor zwischen zwei verschiedenen Sprachen gewechselt habe. Es ist ein relativ einfaches Szenario, ein Projekt in einer Sprache und ein anderes Projekt in einer anderen Sprache zu schreiben oder sogar die wichtigste EXE-Datei in Visual Basic und die DLLs in C/C++ zu erstellen. Bei Webseiten wird jedoch häufig für einen Teil der Seite VBScript-Code und für einen anderen Teil JavaScript-Code verwendet. Der Grund dafür ist manchmal, dass diese Skriptsprachen bei der Vererbung verschiedene Vorteile haben, häufig liegt es aber auch daran, dass in einer Sprache bereits Code vorhanden ist, den ich auf einer Seite verwenden möchte, die ich in der anderen Sprache entwickle. Mir ist erst vor Kurzem aufgefallen, welche Vorteile ich habe, wenn ich bei der Entwicklung verschiedene Sprachen verwenden kann, v.a., weil ich nicht einfach Funktionsaufrufe, sondern sogar den Zugriff auf globale Variablen vermische, unabhängig von der Sprache, in der sie definiert sind. Ein Problem beim Programmieren von Webseiten ist natürlich, dass die Sprachen nicht einmal Elemente zweiter Klasse, sondern eher dritter oder vielleicht sogar vierter Klasse sind, wenn man sie mit den Funktionen von C, C++ oder VB vergleicht.

Eine der Grundregeln der neu veröffentlichten .NET-Entwicklungsumgebung besagt, dass die Sprachen nicht nur Elemente erster Klasse sind, sondern dass die Spracheninteroperabilität ein zentrales Entwicklungsziel ist. Dies ist ein hervorragender Ansatz, um für die Entwicklung von Anwendungen ein umfassendes System mit vielen Funktionen bereitzustellen. Als Programmierer bin ich sehr zufrieden mit der Möglichkeit, neue Sprachen zu entdecken und zu entwickeln, aber ich fühle mich betrogen, wenn eine der neuen Sprachen keinen Zugriff auf alle Funktionen ermöglicht, die ich in anderen Sprachen verwende. Mit .NET können wir nicht nur die beste Programmiersprache für die jeweilige Programmieraufgabe wählen, sondern auch einige esoterischere Sprachen wieder verwenden. Arbeitet jemand an FORTH für .NET, mit dem ich herumspielen könnte?


Anzeigen:
© 2014 Microsoft