Beliebteste Programmiersprachen 2019: Python vorn mit dabei

Digitales Business

Digitales Business

Datum 28.03.2019
Lesezeit 7 Min.

Beliebteste Programmiersprachen 2019: Python vorn mit dabei

Starke Konkurrenz für Java und C: Mit Python erobert eine Programmiersprache aus den 1990er Jahren den Softwaremarkt. Was sind die Gründe dafür, dass inzwischen fast neun Prozent aller Softwareentwicklungen in Python-Umgebungen stattfinden?

Einmal pro Monat stellt das niederländische Software-Beratungshaus TIOBE sein gleichnamiges Software-Beliebtheitsranking vor. Wenig überraschend ist, dass Java als Programmiersprache unangefochten auf dem ersten Platz landet, dicht gefolgt von C. Doch auf dem dritten Platz landet Python, eine universelle, höhere Programmiersprache mit jeder Menge Potenzial: Sie ist vielseitig einsetzbar und leicht zu erlernen. Zudem eignet sich Python sehr gut für Big-Data- und Machine-Learning-Algorithmen.

 

Das TIOBE-Top-Ranking im März 2019: Java vor C und vor Python

Mit knapp 15 Prozent Marktanteil landet Java weiterhin auf dem ersten Platz des TIOBE-Rankings, dicht gefolgt von C mit etwa 13 Prozent und dahinter Python mit guten acht Prozent. Bemerkenswert hieran ist vor allem, dass Python im Vergleich zum letzten Index aus dem Vormonat ganze 2,39 Prozent an Ranking hinzugewonnen hat. Obendrein wurde Python 2018 sogar zur Programmiersprache des Jahres gewählt. Der Name des Programmiersystems hat übrigens nichts mit der gleichnamigen Schlange zu tun, sondern ist von der englischen Komikergruppe „Monty Python” inspiriert. – Die Nomenklatur innerhalb der Programmiersprache enthält daher einige Referenzen zu den Sketchen der Gruppe.

Während bis zum Ende der 1990er-Jahre noch die relativ komplexen Programmiersprachen C beziehungsweise C++ den Markt dominierten, wird dieser inzwischen unangefochten von Java beherrscht. Allerdings kommt es bei der Wahl der passenden Programmiersprache vorrangig auf den Zweck der Entwicklung an.

Während der Siegeszug von Java zu einem großen Teil in einer universellen Einsetzbarkeit begründet ist, werden C und das artverwandte C++ vor allem in eingebetteten Systemen eingesetzt, wie etwa in Kaffeemaschinen, Parkscheinautomaten oder TV-Geräten. Python punktet genau wie Java mit universeller Verwendbarkeit – und ist obendrein besonders leicht erlernbar und inzwischen sogar ähnlich performant.

 

 

Video: YouTube / Hua Hua

 

Die wichtigsten Eigenschaften der Top 5 der Programmiersprachen im Überblick

Bevor Sie sich auf eine Programmiersprache für Ihr nächstes Projekt festlegen, sollten Sie die jeweiligen Vor- und Nachteile genau untersuchen. Selbst wenn Sie eine Sprache noch nicht beherrschen, überwiegen möglicherweise der Nutzen und die Vorteile dieser bestimmten Programmiersprache. Für eine erste Einschätzung, ob sich der Lernaufwand lohnen könnte, hier unsere Übersicht:

Ausklappbare Informationsgrafik
Die Vorteile verschiedener Programmiersprachen wie Java, C, C++, Python und Visual Basic .NET im Überblick
Infografik: Eigenkreation / TIOBE

Wie bereits erwähnt, ist Java auch weiterhin ein echter Dauerbrenner als plattformunabhängigste und beliebteste Programmiersprache. Aber auch andere Sprachen haben ihre Stärken: C und C++ etwa spielen ihre Stärken vor allem bei Systemen aus, die selten verändert werden und bei denen es auf stabile und hohe Performance ankommt. Dies ist vor allem bei Kleinstcomputern und eingebetteten Systemen der Fall. Programmieren Sie im Wesentlichen Windows-Anwendungen mit grafischen Oberflächen, kann dagegen Visual Basic .NET eine gute Wahl sein.

Ein Blick auf Python lohnt sich vor allem dann, wenn Sie verschiedene Bibliotheken einbinden, Big-Data-Analysen betreiben oder nicht zwingend rein objektorientiert arbeiten wollen.

 

Python: Vom Lernumfeld zur Universalplattform

Grund genug also, einen näheren Blick auf die Eigenschaften der inzwischen recht beliebten Programmiersprache zu werfen. Sie wurde Anfang der 1990er-Jahre von Guido van Rossum am Centrum Wiskunde & Informatica (Zentrum für Wissenschaft und Informatik) in Amsterdam vorgestellt und löste die bis dahin verbreitete Programmiersprache ABC als Lernsprache in Universitäten und Ausbildungsgängen ab.

Wie andere höhere Programmiersprachen verfügt auch Python über eine Garbage Collection (Speicherbereinigung) und unterstützt den Unicode-Zeichensatz. Außerdem lassen sich Python-Module auch in C verwenden. Umgekehrt kann Python als Programmierbasis für Programm-Plug-ins, beispielsweise für die 3D-Grafiksoftware Cinema 4D, die beliebte Bildbearbeitungssoftware GIMP oder das Statistikprogramm SPSS, dienen. Doch Python bietet noch weitere Vorteile:

  • Es wird sowohl das objektorientierte als auch das aspektorientierte sowie das funktionale Programmierparadigma unterstützt.
  • Oberstes Ziel bei der Entwicklung war und ist die einfache Erlernbarkeit. So kommt Python sowohl mit reduzierter Syntax als auch mit wenigen Schlüsselwörtern aus.
  • Die bereitgestellte Standardbibliothek für Routinen ist nicht nur übersichtlich aufgebaut, sondern auch leicht erweiterbar.
  • Python unterstützt beliebig große Ganzzahlen und sogar komplexe Zahlen, was in anderen Programmiersprachen nur eingeschränkt möglich ist.
  • Außerdem bietet Python Sammel-Datentypen wie Listen, Tupel, Sets und Dictionaries an.
  • Neben einfacher Vererbung ist auch Mehrfachvererbung möglich.
  • Für Python existiert eine grafische Oberfläche namens Tkinter, die auf Mac und PC zum Lieferumfang des Programmierpakets gehört.
  • Ein interaktiver Terminal-Modus erleichtert das Erlernen von Befehlen, da die Ergebnisse sofort betrachtet werden können.

Python mag seinen Ursprung als Ausbildungshilfsmittel haben, ist aber durchaus als vollwertige Programmiersprache ernstzunehmen. Das zeigt auch die Tatsache, dass Teile von Google und YouTube regen Gebrauch von dieser Programmiersprache machen. Außerdem verfügt das Standard-Betriebssystem des Raspberry Pi, Raspbian, über eine große Python-Bibliothek für die Ansteuerung der dort verbauten Hardware. Der Raspberry Pi kann zwar durchaus mit einem Bildschirm und unter Windows genutzt werden. Doch viele Anwender setzen den vielseitigen Mini-Rechner zur Komponentensteuerung als „embedded system“ ein – beispielsweise in ihrem individuell zusammengestellten Smart Home. Somit schlägt Python auf durchaus gelungene Art und Weise die Brücke zwischen eingebetteten Systemen (eine der Kernstärken von C) und komplexen Webanwendungen, bei denen nach wie vor Java dominiert.

Weiterhin bemerkenswert ist, dass Microsofts Programmiersprache Visual Basic .NET, die ihren Haupteinsatzzweck in Windows-Umgebungen und deren Bedienoberflächen findet, inzwischen auf dem fünften Rang und somit knapp hinter C++ landet. C# (eine objektorientierte Programmiersprache, die ebenfalls vor allem für Windows-Anwendungen entwickelt wurde) und PHP (eine Skriptsprache für die Erstellung dynamischer Webseiten und Webanwendungen) hingegen scheinen an Beliebtheit zu verlieren und rutschen auf Platz sechs beziehungsweise acht des Rankings ab.

Das vollständige aktuelle TIOBE-Ranking finden Sie auf der Website des Softwareunternehmens.

 

Der TIOBE-Index: Monatliches Softwareranking aus den Niederlanden

Der TIOBE-Index des gleichnamigen niederländischen Software-Beratungsunternehmens wird seit 2001 monatlich veröffentlicht. Er listet die 50 beliebtesten Programmiersprachen und ihren Anteil am Gesamtmarkt für Softwareentwicklung auf. Dabei werden 25 Suchmaschinen ausgewertet, unter anderem natürlich Google. Aber auch Wikipedia und Yahoo sowie MSN sind vertreten. Sofern sich eine neue oder bestehende Programmiersprache als solche einwandfrei identifizieren lässt, wird nach ihr in den einzelnen Suchmaschinen gesucht. Anschließend wird das Ergebnis gewichtet und in das Ranking überführt. Es handelt sich allerdings nicht um eine wissenschaftliche Untersuchung. Ähnliche Rankings mit teils anderen Ergebnissen liefern auch RedMonk und der PopularitY of Programming Language Index (PYPL). Beim Letztgenannten landet Python in 2019 sogar auf dem ersten Platz und noch vor Java.

 

Ist Python die Lösung für Big Data und Machine Learning?

Vor allem in Zeiten von Big Data und Maschinenlernverfahren („Machine Learning”) kommt es sehr darauf an, dass Programmiersprachen mit großen Datenmengen umgehen können. Gleichzeitig sollte die Sprache für jedermann leicht erlernbar sein und eine klare Struktur aufweisen. All dies sind Eigenschaften, die Python mitbringt. Ein weiterer, wesentlicher Vorteil ist außerdem die Kompatibilität zu einer der größten Open-Source-Big-Data-Plattformen namens Hadoop.

Doch Python bietet noch weitere Vorteile: Für die Programmiersprache gibt es jede Menge frei verfügbare Bibliotheken, die unter anderem Fouriertransformationen, Datenanalyse in verschiedensten Strukturen sowie softwareseitige Lernprozesse unterstützen. Auch Googles TensorFlow-Bibliothek für tiefe neuronale Netzwerke wird unterstützt.

Geht es um die Visualisierung von Daten, beispielsweise mit Hilfe von Punktwolken, können Sie mit APIs wie Plotly, Matplotlib oder ggplot eindrucksvolle grafische Darstellungen erzeugen. Durch die Integration von Tableau über TabPy sowie die indirekte Unterstützung von Qlikview gelingt ebenfalls eine optimale Visualisierung von Big-Data-Analysen.

Neben den erwähnten Vorteilen gibt es jedoch auch Kritik an Python. So wird die Verwendung rein expliziter anstelle von impliziten Methodenaufrufen in der Praxis als wenig elegant empfunden. Unter Eleganz wird in der Softwarebranche normalerweise eine gelungene Mischung aus Wartbarkeit, Erweiterbarkeit und Performance verstanden.

Methoden sollten schließlich, wo möglich, immer implizit aufgerufen werden, um redundanten Code zu vermeiden – entsprechend dem Ideal der objektorientierten Entwicklung.

Durch den Hybridansatz bei Python ist das aber mit dem funktionalen und dem zugrunde liegenden, multiparadigmatischen Modell nur schwer vereinbar. Insofern folgt Python nicht hundertprozentig dem objektorientierten Ideal und ist somit durch die Struktur der Sprache weniger elegant und performant.

Die Ausführungsgeschwindigkeit von Python-Software soll unter der von anderen Hochsprachen liegen und sich etwa im Bereich der Performance von Perl, PHP oder Ruby bewegen. Python-Verfechter halten dagegen, dass die Performance-Schwäche mit der kürzlich erfolgten Einführung der Anaconda-Plattform und damit einhergehenden Optimierungen weitgehend der Vergangenheit angehört.

 

Video: YouTube / Programming with Mosh

 

Zusammenfassung

  • Jeden Monat veröffentlicht das Softwareunternehmen TIOBE ein Ranking der beliebtesten Programmiersprachen.
  • Wie zu erwarten sind Java, C und Visual Basic .NET auf den vorderen Plätzen vertreten.
  • Die ehemalige Lernsprache Python erkämpft sich einen respektablen dritten Platz und ist „Programmiersprache des Jahres 2018”.
  • Das Python-System überzeugt durch gute Erweiterbarkeit, flexible Programmiertechniken und eine einfache Struktur.
  • Gerade für KI- und Big-Data-Anwendungen kann sich Python als alternative Programmiersprache lohnen.

 

Welche Programmiersprache ist aus Ihrer Sicht die aktuell beste und warum? Haben Sie mit Python schon Erfahrungen sammeln können? Wir freuen uns über Ihren Kommentar.

 

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Facebook Twitter WhatsApp LinkedIn Xing E-Mail