Programmieren: Wahl der Programmiersprache
Aus Wikibooks
Die Wahl der Programmiersprache hängt vom Einsatzgebiet sowie von den persönlichen Vorlieben des Entwicklers ab. Auch wenn die meisten heute verbreiteten Programmiersprachen nicht für eine spezielle Problemstellung entwickelt wurden, so hat jede Sprache bei bestimmten Anwendungsgebieten ihre Vor- und Nachteile.
Einsteigersprachen waren in den 1970-1990er Jahren vor allem BASIC und Pascal. Im neuen Jahrtausend wird gerne Java von Sun und Visual Basic von Microsoft verwendet.
[Bearbeiten] Was soll ich lernen?
Wir werden im Folgenden die wichtigsten Sprachen genauer kennen lernen. Für den Programmieranfänger ist es wichtig zu wissen, für welchen Zweck er eine Programmiersprache einsetzen will, und wie viel Zeit er in das Lernen der Sprache investieren möchte. Um Ihnen die Entscheidung zu erleichtern, werden deshalb im Folgenden die heute wichtigsten verwendeten Sprachen mit ausgewählten Stärken und Schwächen vorgestellt. Bevor wir aber direkt zu den Sprachen kommen, hier ein paar wichtige Fragen, die wir uns stellen müssen.
[Bearbeiten] Wie bekomme ich am schnellsten brauchbare Programme?
Viele fangen mit dem Programmieren an und hören bald danach wieder auf. Es dauert einfach zu lange, bis sie brauchbare Resultate erzielen. Bei vielen Sprachen muss man sich erst durch einen Berg von Vorinformationen durcharbeiten, bis man eine eigene kleine Anwendung erstellen kann. Für Anfänger ist es deswegen wichtig, ohne großen Aufwand erste Beispiele zu programmieren. Eine für Anfänger geeignete Programmiersprache sollte deswegen unbedingt durch eine einfache IDE ( Integrated Development Environment ) unterstützt werden. Es sollte eine gute Hilfefunktion beinhalten, in der alle Befehle mit einfachen Programmbeispielen erklärt sind. Außerdem sollte es ein paar Bücher oder Internetforen über die Sprache geben, so dass man sich Hilfe holen kann. Ein echtes didaktisches Konzept fehlt leider bei den meisten Programmiersprachen.
[Bearbeiten] Ist die Sprache erhältlich bzw. geeignet für Ihren Computer?
Wahrscheinlich ist dies der Fall. Wenn Sie eine Sprache gewählt haben, mit der Sie beginnen möchten, sollten Sie eine Implementierung für Ihre Plattform suchen. Eine Suche im Internet mit dem Namen der Sprache und Ihrer Plattform als Suchbegriffe sollte Ihnen einige kommerzielle und freie Implementierungen zurückliefern. Software für alte Computersysteme ist möglicherweise in einer frühen Programmiersprache wie ALGOL, Cobol, FORTRAN oder PL/1 geschrieben. Um diese zu warten oder zu aktualisieren, müssen Sie diese Sprache lernen, um den Original-Quelltext lesen und bearbeiten zu können.
[Bearbeiten] Ist das Beherrschen der Sprache eine Erleichterung zum Erlernen weiterer Sprachen?
Diese Frage kann nicht einheitlich beantwortet werden: Der Wechsel zwischen Sprachen, die sich konzeptuell ähnlich sind (siehe Programmierparadigma weiter unten), ist meist sehr einfach. Wer beispielsweise eine prozedurale Programmiersprache beherrscht, wird sich in der Regel ohne Schwierigkeiten in einer anderen prozeduralen Programmiersprache zurecht finden. Teilweise müssen einige Konzepte und Techniken neu erlernt werden.
Dagegen erfordert das Erlernen einer Programmiersprache, die auf einem zuvor unbekannten Programmierparadigma beruht, einen höheren Lernaufwand. Man muss gegebenenfalls seine Denkweise umstellen, da sich Paradigmen in ihrer Sichtweise der Probleme und Lösungen teilweise stark unterscheiden. Der Umstieg auf ein anderes Programmierparadigma birgt deshalb die Gefahr, seine Sichtweise nicht vollständig dem neuen Paradigma anzupassen und nur in bewährten (nicht immer übertragbaren) Denkschemata zu programmieren.
An dieser Stelle mag es sinnvoll sein, einen kurzen Blick in den Abschnitt über Paradigmen zu werfen und diesen Abschnitt mit dem neuen Wissen nochmal zu überdenken.
[Bearbeiten] Ist das Erlernen der Sprache hilfreich, um ein besserer Programmierer zu werden?
Das Erlernen einer akademischen Sprache wie Prolog oder Haskell mag nicht erstrebenswert sein, wenn Sie eine Sprache erlernen wollen, deren Kenntnis in Bewerbungen als Voraussetzungen erscheinen. Andererseits zwingt Sie die Reinheit dieser Sprachen, die Art, wie Sie Programme verstehen, zu verbessern und bringt Ihnen Konzepte bei, die man auch bei anderen Sprachen verwenden kann. Manche mögen sogar behaupten, dass diese Sprachen so effizient seien, dass man sich um den Rest nicht kümmern müsse, da aber Programmieren meistens das Arbeiten für andere Leute und mit anderen Leuten einschließt, müssen Sie wahrscheinlich trotzdem eine der verbreiteten Sprachen lernen.
[Bearbeiten] Wie praxisorientiert ist die Sprache?
Nun kehren wir zur Ausgangsüberlegung bei der Wahl der Sprache zurück: Wie nützlich ist die Sprache in der Praxis? Hier sollten Sie überlegen, welche Verbreitung eine Sprache hat, da die Zusammenarbeit mit anderen unerlässlich ist, und wie passend die Sprache für die Art der Aufgaben ist, die Sie damit erledigen möchten. Solange Sie nicht unter Zeitdruck sind, ist es empfehlenswert, die Sache langsam anzugehen, eine gute Lernsprache zu wählen und die praktischen Aspekte später zu entscheiden. Mit mehr Erfahrung wird Ihnen die Wahl einer Zweitsprache auch leichter fallen.
[Bearbeiten] Welche Sprachen sollte ich jetzt benutzen?
Wählen Sie eine Sprache, die zu Ihnen passt. Wenn ein Basic-Dialekt Ihre erste Wahl ist, dann nehmen Sie ihn, um ein Spiel zu schreiben. Sie können nahezu jedes Programm in nahezu jeder Computersprache schreiben. Manche Sprachen machen es Ihnen etwas einfacher, Programme in Teams zu entwickeln als andere. Falls Sie nicht im Team arbeiten, hilft Ihnen der zusätzliche Aufwand wenig. Da sehr viele Sprachen gewisse Ähnlichkeit mit C haben, so zum Beispiel C++, Java, C# und einige weitere Sprachen, können Sie es mal mit C probieren. Aber lernen Sie auch noch eine andere Sprache. Und programmieren Sie damit. Der Trend geht übrigens zur Drittsprache.