Gründe für Python¶
Python erlebte in den vergangenen Jahren einen rasanten Popularitätszuwachs. Der TIOBE Popularitätsindex von Programmiersprachen listete Python im Februar 2018 auf Platz 4. Auf Stack-Overflow ist Python zur meistgesuchten Sprache aufgestiegen. Die Gründe warum sich Python dieser Beliebtheit erfreut, erfahren Sie in diesem Beitrag.
Inhalt¶
- 1. Weniger ist mehr
- 2. High Level
- 3. General Purpose
- 4. Multiparadigmatisch
- 5. Integrierbar
- 6. Plattformunabhängig
- 7. Umfangreich und erweiterbar
- 8. Open Source
- 9. Nachhaltig
1. Weniger ist mehr ¶
Der Python-Schöpfer Guido van Rossum achtete darauf, nur wenige aber dafür mächtige Sprachkonstrukte wie Datentypen und Funktionen in das syntaktische Grundschema von Python aufzunehmen. Zudem folgt Python einer klaren, hierarchischen Programmstruktur, bestehend aus Paketen, Modulen, Klassen, Funktionskonstrukten und Quellcode. Die minimalistische Anzahl an Prinzipien sorgt zum einen für eine niedrige Einstiegshürde in die Sprache und schafft zum anderen ein nachhaltiges Sicherheitsgefühl beim programmieren.
*“Now, it’s my belief that Python is a lot easier than to teach to students programming and teach them C or C++ or Java at the same time because all the details of the languages are so much harder.“*
Guido van Rossum |
2. High-Level ¶
Mit Python reduziert sich Java-Quellcode auf 1/3. Insbesondere bei Projekten in denen die Entwicklerkosten die Performancekosten übersteigen, ist Python mit seiner Umsetzungseffizient eine gute Wahl. 2 Gründe für die hohe Entwicklungsgeschwindigkeit sind:
- Lesbarkeit der Syntax:
Sprachelemente sind der natürlichen Sprache angelehnt und erleichtern die Arbeit des Entwicklers.- Hoher Abstraktionsgrad von Maschinencode:
In Python ist keine explizite Typendeklaration notwendig. Auch das Speichermanagement von Objekten findet implizit statt.
3. General-Purpose ¶
Python ist nicht für eine spezifische Problemlösung geschaffen sondern für eine Vielzahl von Problemklassen. Dazu zählen:
Anwendungsentwicklung:
Ermöglicht das Ausführen reiner Skriptanwendungen über die Entwicklung einfacher GUI-Anwendungen bis hin zur Bewerkstelligung ganzer Betriebssysteme. Sogar Videospiele sind in Python umgesetzt.Serverseitige Web-Entwicklung:
Python verfügt mit seinen bekannten Vertretern Flask und Django über Web-Application Frameworks, mit denen Webseiten wie youtube, google, reddit, instagram und spotify umgesetzt sind.Visualisierungen:
Ob Geodaten, Zeitreihen oder statistische Daten, ob XML, json oder csv, ob statisch oder interaktiv – Mit seiner Vielzahl an Bibliotheken ist nahezu jede Visualierung möglich.Wissenschaftliche Nutzung:
Mit NumPy, SciPy und Scikit Learn sind nur 3 populäre Vertreter genannt, um numerische Probleme und statistische Verfahren anzuwenden. Daneben existiert eine Vielzahl an hochgradig spezialisierten Bibliotheken. Mit Tensorflow und Theano aus dem Bereich Machine Learning lassen sich beispielsweise Deep Neural Networks umsetzen.
4. Multiparadigmatisch ¶
In Python kann sowohl objekt- als auch funktionsorientiert bzw. prozedural programmiert werden. Damit werden zum einen verschiedene Entwicklertypen bedient (Entwickler aus dem Java-Umfeld arbeiten Objektorientiert, R-Entwickler sind prozedurales Skripting gewohnt), zum anderen können unterschiedliche Projektbedarfe mit dem bestmöglichen Programmierstil bedient werden.
5. Integrierbar ¶
Python verfügt über Schnittstellen zu allen großen Datenbank- und Softwaresystemen – bspw. dem Hadoop-Ökosystem, Tableau, Oracle, Microsoft-SQL-Server oder SAP.
6. Plattformunabhängig ¶
Python steht für eine Vielzahl von Betriebssystemen zur Verfügung, darunter Windows, Linux, Unix und MacOS.
7. Umfangreich und erweiterbar ¶
Um die Python-Standardbibliothek existieren zahlreiche Pakete mit lebhafter Weiterentwicklung und Beteiligung. Alle erdenklichen Anwendungen aus der Softwareentwicklung wie Testing, Web-Entwicklung, Datenbankanbindungen, GUI-Erstellung und Dokumentationsentwicklung sind darin abgedeckt. Daneben lassen sich mit spezialisieren Paketen Aufgaben wie das visualisieren von Geodaten oder nischenhafte statistische Verfahren umsetzen.
8. Open Source ¶
Python ist lizenzkostenfrei. Gleichzeitig erlaubt es die Python-Software-Foundation-Lizenz in Python geschriebene Software zu vertreiben – der Quellcode kann der Bedingung der Nicht-Weitergabe ausgesetzt sein. Dies ist beispielsweise bei GPL anders.
9. Nachhaltigkeit ¶
Institutioneller Förderer und Wahrer des Projekts Python ist die Non-Profit-Organisation Python-Software-Foundation, welcher nahmhafte Unternehmen wie Google oder Microsoft angehören. Daneben verfügt Python über eine große freie Community an Entwicklern und Nutzern. Die Vielzahl an Interessen sorgen für das Weiterbestehen des Gesamtprojekts und somit für Investitionssicherheit bei Unternehmen.