Programmiersprachen


1. Sprechen Sie C ?


Der durchschnittliche Entwickler oder im Volksmund "Programmierer" weist ein umfangreiches Repertoire an Programmiersprachen auf. Programmiersprachen sind keine natürlichen Sprachen, wie Deutsch und Englisch, sondern formale Sprachen und nur ansatzweise miteinander vergleichbar. Das Repertoire eines Programmierers wird stets erweitert. Hunt2003 empfiehlt sogar das freiwillige Lernen von Programmiersprachen als eine Art Fitness für den eigenen Geist. Verzichten Sie auf Sudoku; lernen Sie lieber eine Programmiersprache! ;-)

Warum braucht man so viele Programmiersprachen? Warum entstehen stets neue Programmiersprachen? Warum gibt es nicht eine Programmiersprachen für alles? Der wichtigste Grund dafür sind die stets wachsenden Anforderungen an Systeme mit Software. Programmieren bedeutet heute nicht mehr das Eintippen einer Abfolge von Befehlen, die sequentiell (also hintereinander) ausgeführt werden. Jede Programmiersprache und insbesondere das was sie im wesentlichen kennzeichnet, deren ParadigmaKeine Zugangsberechtigung, Framework, Support, Tool-Chain etc.), hat seine ganz spezifischen Vor- und Nachteile je Nach Anwendung. Mit wenigen Befehlen schafft ein Programmierer in Ruby und PythonKeine Zugangsberechtigung das, was ein Assembler-Programmierer zur Lösung derselben Aufgabe in seinem gesamten Leben kaum schaffen kann. Auf der anderen Seite ist auf einem Ebedded-System mit gerade einem Kilobyte Speicher nicht viel mit höheren Programmiersprachen und ihren gigantischen Frameworks anzufangen. Deshalb greift der Programmierer zu dem, was ihn am schnellsten ans Ziel bringt.

Wir dürfen nicht vergessen, dass es diese vielen Programmiersprachen noch nicht lange gibt. Wir sind ganz am Anfang. Sprachen entstehen, werden verbessert zusammengefasst und teilweise wieder verworfen. Programmierer streiten um Neuerungen je nach Interessenlage mit denselben Intentionen, wie Gegner und Befürworter der Rechtschreibreformen in Deutschland. Aktuell sind Ruby und PythonKeine Zugangsberechtigung die feinste Art sich effizient zu artikulieren. Damit sind die Beiden das Ergebnis der gesamten Evolution, seit dem Stanzen von Maschinencode im Dualzahlenszstem auf Lochkarten. Aber bei aller Euphorie und Aufregung um das Thema. Im Vergleich mit der Entwicklung der natürlichen Sprache des Menschen, verständigt sich der Programmierer noch in Grunzlauten mit dem Computer. Solange die Kommunikation mit der Maschine eine Diktatur in Form von fehlerintoleranten formalen Sprachen ist, wird sich daran auch nicht viel ändern.


2. Sprachkenntnisse


In laufe meines Lebens bin ich Mal tiefer, Mal nur oberflächlich mit den folgenden Programmiersprachen in Berührung gekommen. Angefangen hat alles mit BASIC am Amiga 500. Und dann ging alles so schnell. :-)

ProgrammierspracheVerwendung (Empfehlung)
AbelHardwarebeschreibung für PLDs
AssemblerOptimierter, schneller Code
AWKFilterung von Texten
AxiomKeine ZugangsberechtigungLösung mathematischer Probleme, symbolisches Rechnen
BASHKleine Programme für die Automatisierung von lästigen Arbeiten unter Linux (auch für Windows)
CBetriebssysteme, Algorithmen, Echtzeitsysteme
C++Keine ZugangsberechtigungPC-Anwendungsprogramme, Betriebssysteme, Echtzeitsysteme und Algorithmen
HTMLDarstellung von Inhalten im Browser
JavaPlatformunabhängige PC-Anwendungsprogramme, Java-Applets für das Web
Java-ScriptInteraktion und Darstellung von Webseiten
LATEXErstellen von ordentlichen Textdokumenten
MATLABKeine ZugangsberechtigungLösung mathematischer Probleme
Objective CKeine Zugangsberechtigungz.B für das iPhone
OctaveLösung mathematischer Probleme
PHPKeine ZugangsberechtigungKleinere interaktive Webseiten
Pl/SQLKeine ZugangsberechtigungSeitens der Datenbank Aufgaben erledigen
PrologWissensverarbeitung, Lösung mathematischer Probleme
PythonKeine ZugangsberechtigungMit wenigen Zeilen viel erreichen - ich bin beeindruckt!
Quick BasicAnwendungsprogrammierung unter DOS (inzwischen veraltet)
RKeine ZugangsberechtigungLösung mathematischer Probleme, spezialisiert auf Statistik
RubyAusgezeichnet für umfangreiche Anwendungen für das Web
VHDLKeine ZugangsberechtigungHardwarebeschreibungssprache
Visual BasicAnwendungsprogramme unter Windows
Windows BatchAutomatisierung von sequentiellen Abläufen unter Windows
XMLRepräsentation von Daten


3. Theoretische Betrachtungen


ProgrammierparadigmaKeine Zugangsberechtigung

Unterschiede in der Grammatik von Programmiersprachen: Syntax differences

Ein Vergleich der Verarbeitunsgeschwindigkeit von Programmiersprachen.

TIOBE Programming Community Index for August 2010
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Programmieren LernenKeine Zugangsberechtigung




Siehe auch AlgorithmenKeine Zugangsberechtigung
AufwandSchaetzungKeine Zugangsberechtigung
SoftwareEntwicklung
SoftwareTechnikKeine Zugangsberechtigung

There are no comments on this page. [Add comment]

Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki