Python, C und C++ dominieren Die am häufigsten eingesetzten Embedded-Programmiersprachen 2021

Von Sebastian Gerstl

Zum siebten Mal in Folge hat IEEE Spectrum sein Ranking der am weitesten verbreiteten Programmiersprachen in Embedded-Anwendungen vorgestellt. Welche Programmiersprachen dominieren im Embedded-Bereich? Welche haben an Bedeutung gewonnen, welche verloren?

Firma zum Thema

Python dominiert in Anwendungen – nicht nur im Web- oder Mobile-Bereich: Laut IEEE Spectrum ist Python auch im Embedded-Umfeld der klare Platzhirsch unter den Programmiersprachen.
Python dominiert in Anwendungen – nicht nur im Web- oder Mobile-Bereich: Laut IEEE Spectrum ist Python auch im Embedded-Umfeld der klare Platzhirsch unter den Programmiersprachen.
(Bild: gemeinfrei / Pixabay )

Wenn es für Embedded-Entwickler im Jahr 2021 eine Gewissheit geben sollte, dann diese: An Python führt mittlerweile kein Weg mehr vorbei. Seit Jahren ist die multiparadigmatische Programmiersprache der unangefochtene Spitzenreiter, wenn sich das Fachjournal IEEE Spectrum die weltweit am häufigsten eingesetzten Programmiersprachen ansieht. Egal ob bei Embedded-, Web- oder Desktop-Anwendungen, in nahezu allen Bereichen konnte das Fachblatt des Institute of Electrical and Electronics Engineers (IEEE) für die Programmiersprache das reichhaltigste Angebot an vorhandenen Bibliotheken, Repositorien oder Anwendungsbeispielen nachweisen. Das trifft nicht nur auf einfache Web-Skripts, sondern auch auf tiefergehende Embedded-Projekte oder mittlerweile sogar groß angelegte KI-Projekte zu.

Das vollständige Ranking der für den Embedded-Bereich vom IEEE als relevant eingestuften Programmiersprachen. Mit Abstand größter Gewinner ist 2021 C#. Wie in den Vorjahren konnte auch das relativ junge Rust weiter zulegen.
Das vollständige Ranking der für den Embedded-Bereich vom IEEE als relevant eingestuften Programmiersprachen. Mit Abstand größter Gewinner ist 2021 C#. Wie in den Vorjahren konnte auch das relativ junge Rust weiter zulegen.
(Bild: spectrum.ieee.org)

"Lernt Python" kündigte das IEEE das aktuellste Ranking der Programmiersprachen an. "Das ist die wichtigste Erkenntnis, die wir Ihnen aus der anhaltenden Dominanz von Python in der jährlichen interaktiven Rangliste der besten Programmiersprachen von IEEE Spectrum mit auf den Weg geben können." Dabei hilt auch, dass Python als Programmiersprache nicht nur relativ leichtgewichtig im Footprint, sondern auch einfach in der Handhabung ist. "Ehrlich gesagt, je nach Bereich, Komplexität und/oder Qualität der Dokumentation kann das Erlernen einer Bibliothek wesentlich schwieriger sein als das Erlernen von Python selbst," mutmaßt das IEEE zur Popularität der Programmiersprache.

Jahr für Jahr stellt IEEE Spectrum, das Fachblatt des Institute of Electrical and Electronics Engineers (IEEE, aus öffentlich einsehbaren Github-Repositorien insgesamt 300 unterschiedliche Programmiersprachen zusammen, um sich ein Bild daraus zu machen, wie verbreitet diese in der praktischen Anwendung tatsächlich sind. Für das Ranking im Jahr 2021 wurden diese in einem Ranking auf die 55 eingegrenzt, die - unter anderem in Google-Suchen - den höchsten Bekanntheitsgrad aufweisen. Diese werden Anschließend in ein Ranking aufgelistet, das je nach Anwendungsbereich - Web, Desktop/Enterprise, Mobile und Embedded - gefiltert werden kann. Speziell für den Embedded-Bereich waren von diesen 55 Programmiersprachen immerhin noch 17 anzutreffen. Anhand von insgesamt 11 Metriken, darunter darunter Datenauswertungen von Twitter, GitHub und Stack Overflow, wurde daraufhin eine Gesamtpunktzahl erhoben. Die am häufigsten angetroffene Programmiersprache erhält einen Wert von 100 verliehen, während der Rest eine darauf bezogene relative Wertung besitzt.

Eines gilt bei solchen Rankings immer zu bedenken: Es geht bei diesen Erhebungen nicht darum, was die objektiv 'beste' Programmiersprache ist. Untersucht wird ausschließlich der Verbreitungsgrad etablierter Entwicklersprachen.

Python und C-Varianten geben den Ton an

Die Spitzenreiter haben sich dabei im Vergleich zum Vorjahr nicht verändert. Python ist wie schon in den beiden Jahren zuvor der eindeutige, dominante Tonangeber, auch im Embedded-Spektrum. Auf den Plätzen 2 und 3 folgen unverändert C und C++.

Allerdings fällt auf, dass letztere Programmiersprache relativ betrachtet bei Embedded-Anwendungen an Bedeutung gewonnen hat: Während C in Relation zu Python im aktuellen Jahr mit 94,7 Punkten nahezu unverändert geblieben ist (2020 waren es 94,6), hat C++ um 5,4 Punkte zugelegt und liegt nun mit 92,4 Punkten nur noch knapp hinter dem großen Bruder C (2020 hatte C++ noch einen relativen Anteil von 87,0 besessen).

Ein etwas überraschendes Comeback konnte mit C# der dritte direkte C-Ableger im Bunde feiern. 2019 hatte die Programmiersprache noch mit 74.5 relativen Punkten auf dem vierten Platz gelegen, hatte aber offenbar 2020 drastisch an Popularität eingebüßt und war auf den siebten Rang abgerutscht. Nun findet sich C# erneut im IEEE Spectrum Embedded Ranking auf Platz 4: Für den Embedded-Markt erhebt das Fachblatt den Anteil des vor über 20 Jahren von Microsoft in den Markt eingeführten C-Derivats auf 82,4.

Rust auf dem Vormarsch, Assembler stabil

Durch das Vorrücken von C# wird die Arduino-eigene Programmiersprache vom vierten auf den 5. Rang verdrängt. Arduino ist weiterhin vor allem unter Hobbyanwendungen populär und verfügt über eine ordentliche Code- und Repositorienbasis. Dennoch hat die Sprache relativ gesehen an Anteil verloren und kommt im Vergleich zu Python nur noch auf 68,4 Punkte (2020 waren es noch 73,2).

Zu den Gewinnern zählt die relativ junge Programmiersprache Rust: Jahr für Jahr erobert sie sich einen größeren Anteil an der weltweiten Embedded-Codebasis, so dass sich die erst seit 2015 in einer stabilen Version erschienene multiparadigmatische Sprache im Vergleich zum Vorjahr nochmal um gute 9 Punkte zulegen konnte (von 55,6 auf 63,1) und sich so mittlerweile auf Rang 6 findet. Einen großen Anteil daran hat hier sicherlich die zu Jahresbeginn gegründete Rust Foundation zur Förderung der Programmiersprache, der mittlerweile namhafte Unterstützer wie ARM, Amazon aws, Google, Microsoft, Facebook oder Toyota angehören.

Das Comeback von C# und der Populratitätsschub von Rust haben Assemblersprachen im Ranking von Platz 5 auf Platz 7 abrutschen lassen. Allerdings besitzen diese besonders hardwarenahen Programmiermethoden in Embedded-Anwendungen auch weiterhin einen hohen Stellenwert, was sich am relativen Anteil sehen lässt: 'Im direkten Vergleich zum Vorjahr haben sie gemessen am weltweiten Anteil nur um 0,9 Punkte eingebüßt (von 63,7 auf 62,8). Das lässt sich auch auf einen hohen Anteil an Legacy-Anwendungen zurückführen, die weiterhin auf eine gewisse Assembly-Codebasis angewiesen sind.

Die Plätze 8 und 10 werden von den Hardwarebeschreibungssprachen Verilog und VHDL belegt, die aber relativ zum Vorjahr gesehen nochmals an Popularität zulegen konnten. Dazwischen, auf Rang 9, findet sich der nach C# und Rust relativ gesehen größte Gewinner des Rankings. Die Programmiersprache Ada konnte im Vergleich zu 2020 von 32,8 auf 38,8 Punkte zulegen.

Schlusslichter: Diese Embedded-Programmiersprachen gelten als unbedeutend

Anders als im Vorjahr gab es 2021 keine unerwarteten Neuzugänge im Ranking der Embedded-Programmiersprachen. Das Schlusslicht der Liste bildet laut IEEE Spectrum Ladderlogic, dass im Vergleich zum Vorjahr 5 Punkte eingebüßt hat und relativ gesehen 14,3 Punkte im Ranking besetzt.

Auf dem vorletzten Platz ist die bereits alternde Programmiersprache Forth, dass die von 2019 auf 2020 gewonnenen 5 Punkte wieder abgeben durfte und nun bei 18.2 Punkten liegt. Erlang, das im letzten Jahr das Schlusslicht bildete, kommt 2021 unverändert auf 18,3 Punkte, was die Programmiersprache in der relativ gesehenen Popularität von Rang 17 auf Rang 15 anhebt. Gemessen an anderen Sprachen im Feld ist dies jedoch ein verhältnismäßig insignifikanter Anteil.

Top 5 in der Allgemeinheit unverändert

Im Gesamtspektrum aller Anwendungsfelder bleibt die Top 5 der am weitesten verbreiteten Programmiersprachen im IEEE-Ranking unverändert. Hier findet sich weiterhin Python auf Platz 1 und das ressourcenintensive Java auf Platz 2. auf den folgenden Rängen finden sich C, C++ und JavaScript.

Allerdings erfreut sich C# auch im allgemeinen Anwendungsfeld neuer Beleibtheit wie es scheint. War C# 2020 nicht mehr unter den generellen Top 20 anzutreffen, so findet sich die Programmiersprache im IEEE-Ranking nun wieder auf Rang 6. Es könnte sein, dass hier IEEE Spectrum im Vorjahr möglicherweise einen blinden Fleck aufzuweisen hatte: Andere Rankings wie der Tiobe-Index hatten im Vorjahr, wie übrigens 2021 auch, C# auf Platz 5 aller Programmiersprachen gesehen. Mittlerweile ist allerdings auch das Tiobe-Ranking der Ansicht, dass an Python kein Weg mehr vorbeizuführen scheint.

(ID:47828200)