Aufrufe
vor 1 Monat

Netzwoche 06/2021

  • Text
  • Salesforce
  • Swiss
  • Technologieprovider
  • Softwareentwickler
  • Digitale
  • Schweizer
  • Netzmedien
  • Digital
  • Schweiz
  • Unternehmen

38 Technology Focus Die

38 Technology Focus Die beliebtesten Programmiersprachen Es gibt eine babylonische Vielfalt von Programmiersprachen. Dabei haben alle ihre Vor- und Nachteile sowie Anwendungsgebiete. Dominik Gruntz, Professor für Informatik an der FHNW, gibt eine Übersicht über die beliebtesten und meistgenutzten Programmiersprachen. DER AUTOR Dominik Gruntz Professor für Informatik an der FHNW Seit vielen Jahren sind die Toppositionen der Programmiersprachen gesetzt: Java, PHP, C/C++, C# und Javascript. Andere Programmiersprachen konnten sich nur in Nischen etablieren, wie etwa Objective-C für die Programmierung des iPhones oder Python für das wissenschaftliche Rechnen und für Machine Learning. Die universelle Programmiersprache braucht es nicht mehr In den vergangenen zehn Jahren haben viele alternative Sprachen an Popularität gewonnen und es scheint, dass die etablierten Sprachen den neuen Ansprüchen nicht mehr genügen. Neue Konzepte erlauben es, gewisse Probleme einfacher und eleganter zu lösen sowie gewisse Klassen von Programmierfehlern zu vermeiden, wie etwa die Herausforderung von Multiprozessorkernsystemen. Häufig werden solche Konzepte, wenn sie sich in der Praxis bewährt haben, von den etablierten Sprachen aufgenommen. Man könnte also meinen, dass die Entwicklung auf eine «Lingua franca» zusteuert, die der aktuellen babylonischen Programmiersprachenverwirrung ein Ende bereitet. So eine universelle Programmiersprache wird jedoch nicht entstehen, denn sie ist nicht mehr nötig! In heutigen Architekturen kommunizieren Module über definierte Programmierschnittstellen (etwa über REST-Schnittstellen), und diese Module können in unterschiedlichen Sprachen programmiert werden. Natürlich darf in einer Firma nicht jeder Mitarbeitende seine eigene Programmiersprache nutzen. Aber es ist typisch, dass in einem Projekt unterschiedliche Programmiersprachen eingesetzt werden, etwa Typescript für das Web-Front-End, Kotlin für Android- und Swift für iOS-Applikationen sowie Go in der Cloud. Es ist daher durchaus möglich, für ein neues Teilprojekt auf eine neue Programmiersprache zu setzen und damit einen Schritt in die Zukunft zu wagen. Zeit also, die Vorteile der Programmiersprachenvielfalt zu nutzen! Im Folgenden wird auf drei Programmiersprachen für Webapplikationen und Websites eingegangen (siehe auch Tabelle). i DIESE PROGRAMMIERSPRACHEN MÜSSEN SIE KENNEN C++ Python Java Javascript C# Erscheinungsjahr 1985 1991 1995 1996 2001 Entstehung Anwendung Weiterentwicklung von C zu einer objektorientierten Sprache Effiziente und hardwarenahe Programmierung, insbesondere auch im Bereich IoT Entwicklung einer Programmier- Lehrsprache mit Fokus auf Einfachheit und Übersichtlichkeit Allround-Sprache, sowohl für einfache und kleine Programme wie auch für grosse Entwicklungen. Besonders gut für: Machine Learning, Data Science, Webapplikationen, Game-Entwicklung Programmiersprache und Laufzeitumgebung, entwickelt von Sun Microsystems (heute Oracle) für die Steuerung von Geräten Allround-Sprache: Mobile und Desktop-Anwendungen, Enterprise-Anwendungen, Cloud Computing und Big Data Ursprünglich von Netscape entwickelte Sprache für dynamische Websites Hauptsprache des Internets: Webentwicklung, Apps, interaktive Elemente einer Webseite, Web- Front-End Schwierigkeitsgrad hoch leicht mittel leicht mittel Perspektiven Im Bereich der Entwicklung effizienter Software immer noch Standard Python wird an vielen Schulen im Informatikunterricht eingesetzt, gewinnt aber auch an Bedeutung durch die weite Verbreitung in den Bereichen Machine Learning und Data Sciences Java ist sehr breit aufgestellt und wird sowohl bei der Entwicklung von Server- und Cloud-Anwendungen als auch bei mobilen Anwendungen verwendet Javascript wird als die Sprache des Webs bleiben und ist ideal für kleine Projekte, die schnell fertig werden und nicht lange gepflegt werden müssen PYPL-Index 5 1 2 3 4 Stackoverflow most Loved 18 3 17 10 8 Weiterentwicklung von C/C++ durch Microsoft Softwareentwicklung für Microsoft. Zudem: Game- Entwicklung mit Unity 3D C# ist die Hauptsprache in der Familie der Microsoft-.NET- Sprachen 06 / 2021 www.netzwoche.ch © netzmedien ag

Technology Focus 39 Python Python ist eine Programmiersprache, die sich durch Einfachheit auszeichnet und daher im Grundlagenfach Informatik an unseren Gymnasien eingesetzt wird. Python ist die Sprache in den Bereichen Data Science und Machine Learning, wird aber auch zunehmend im Embedded- Bereich genutzt. Python ist plattformunabhängig, das heisst, Python-Programme können auf fast allen Betriebssystemen ausgeführt werden. Der Name Python geht übrigens nicht (wie das Logo vermuten liesse) auf die gleichnamige Schlangenfamilie zurück, sondern auf die britische Komikergruppe Monty Python. Javascript Javascript ist eine Programmiersprache, die 1995 von Netscape für interaktive Websites entwickelt wurde. Javascript-Programme werden im Browser ausgeführt und verwendet, um Formulardaten zu prüfen oder um im Hintergrund Daten nachzuladen. Javascript hat mit Java nur den Namen gemein, ist aber ansonsten eine völlig eigenständige Programmiersprache und wird auch auf Servern oder in Mikrocontrollern eingesetzt oder für die Entwicklung von mobilen Applikationen verwendet. Typescript Typescript ist eine neue Sprache von Microsoft, die nach Javascript übersetzt wird. Alle existierenden in Javascript geschriebenen Bibliotheken können in Typescript verwendet werden. Im Gegensatz zu Javascript ist Typescript statisch typisiert. Das heisst, gewisse Fehler können bereits vom Compiler zur Übersetzungszeit abgefangen werden und treten nicht erst dann auf, wenn Nutzerinnen und Nutzer eine Website verwenden. Typescript ist die Sprache, die Javascript in ein paar Jahren sein wird, die aber bereits heute in allen Browsern verwendet werden kann. Typescript ist damit eigentlich keine neue Sprache, sondern lediglich das Javascript aus der Zukunft. Für jede Programmiersprache gibt's ein Ranking In der Tabelle wird das Ranking dieser Programmiersprachen gemäss PYPL-Index (Popularity of Programming Language) angegeben. Dieser Index wird aufgrund von Suchanfragen nach Programmier-Tutorials bei Google erstellt. Ausser dem PYPL-Index gibt es noch weitere Rankings wie der TIOBE-Index oder die Redmonk-Rankings, und natürlich die Resultate der Umfragen auf Stackoverflow. Es gibt so viele Rankings, dass man für jede Programmiersprache ein Ranking findet, auf dem diese Sprache auf Platz 1 zu finden ist. Die Art der Entwicklungsmethodik und insbesondere auch die Programmiersprachen, die in einer Firma verwendet werden, spielen für Entwicklerinnen und Entwickler eine entscheidende Rolle bei der Wahl des Arbeitgebers. Unternehmen, die Schwierigkeiten beim Rekrutieren von IT-Fachkräften haben, sollten daher darauf achten, dass sie neuen Programmiersprachen und Technologien offen gegenüberstehen. Den vollständigen Artikel finden Sie online www.netzwoche.ch i DIESE PROGRAMMIERSPRACHEN MÜSSEN SIE KENNEN Scala Go Rust Kotlin Typescript Erscheinungsjahr 2004 2009 2010 2011 2012 Entstehung Von der EPFL entwickelte Multiparadigmensprache Von Google entwickelte Programmiersprache für Clusterund Cloud Computing Von der Mozilla Foundation entwickelte Sprache für die Systemprogrammierung Von Jetbrains entwickelte Programmiersprache auf der Java- Plattform Weiterentwicklung von Javascript durch Microsoft Anwendung Data Processing und Big Data Skalierbare Netzwerkdienste, Cluster- und Cloud Computing Sprache für systemnahe und parallele Software sowie für die Entwicklung von Smart Contracts in Blockchains Entwicklung nativer Android- Applikationen sowie als Alter native zu Java bei Serveranwendungen Typescript wird verwendet, um client- sowie serverseitig typsichere Javascript-Applika tionen zu realisieren Schwierigkeitsgrad hoch mittel hoch mittel mittel Perspektiven Scala ist eine Multiparadigmensprache, die in vielen Start-ups verwendet wird. Scala-Programmierer haben Aussicht auf hohe Löhne Go hat sich im Bereich der Cloud-Programmierung etabliert. Openshift, Terraform, Docker und Kubernetes sind in Go geschrieben Rust hat das Potenzial, die Systemsprache der Zukunft zu werden. Google entwickelt bereits Teile des Android-Systems mit Rust Noch nicht so verbreitet. Aber Google hat angekündigt, Kotlin zu einer nativen Sprache für das Mobile OS zu machen. Daher gute Entwicklungsperspektiven Hat als «das bessere Javascript» gute Zukunftsaussichten PYPL Index 18 13 16 11 9 Stackoverflow most Loved 14 5 1 4 2 www.netzwoche.ch © netzmedien ag 06 / 2021

Archiv