8 Anzeichen dafür, dass Sie Python richtig einsetzen

Wenn Sie diese acht erstklassigen Python-Programmierpraktiken befolgen, dann machen Sie es richtig. [...]

Es ist leicht zu erkennen, wenn man in der Entwicklung etwas falsch macht. Aber was ist mit den Dingen, die Sie richtig machen? (c) Pixabay.com

Wenn man in der Entwicklung etwas falsch macht, erkennt man das in der Regel schnell. Bugs, die aus dem Nichts auftauchen, Code, der wie Melasse zerfließt, und schwerfällige Projektstrukturen sind nur drei der verräterischen Anzeichen. Doch manchmal ist es gar nicht so leicht zu erkennen, ob man es richtig macht. Gute Programmiergewohnheiten sind wie gute Spezialeffekte in Filmen: Man merkt nicht, dass sie da sind, weil sie sich nicht ankündigen.

Was sind nun also einige der Anzeichen für gute Programmiergewohnheiten in Python? Wenn die Sprache neu für Sie ist und Sie eine Vorstellung davon brauchen könnten, wie gutes Entwicklerverhalten in Python aussieht, oder wenn Sie einfach nur wissen möchten, ob einige der Gewohnheiten, die Sie sich angeeignet haben, es wert sind, beibehalten zu werden, haben wir eine Reihe von Wegweisern für Sie zusammengestellt. Wenn Sie sich an die acht unten aufgeführten bewährten Vorgehensweisen halten, dann verwenden Sie Python richtig.

Sie verwenden virtuelle Umgebungen und Projektmanagement-Tools

Selbst kleine, einmalige Python-Projekte profitieren von einer virtuellen Umgebung und einer richtigen Projektstruktur. Tools wie Poetry sorgen dafür, dass der Einrichtungsprozess nahezu automatisch verläuft. Sogar mit geringem venv ist es relativ einfach, Ihr Projekt mit einer virtuellen Umgebung zu bestücken und von deren Vorteilen zu profitieren.

Version Control ist ein weiteres wichtiges Projektmanagement-Tool. Heutzutage bedeutet das in der Regel Git. Und ja, Sie sollten die Vorteile von Git sogar für einfache Ein-Datei-Projekte nutzen. Man weiß nie, wann Sie auf eine frühere Version von etwas zurückgreifen müssen. Die meisten IDEs, die Python unterstützen, haben auch eine integrierte Unterstützung für venv und Git, so dass es einfach ist, sie zu verwenden.

Sie verwenden in Python integrierte Funktionen und erfinden das Rad nicht neu

Der versierte Python-Programmierer weiß die eingebauten Funktionen und die Standardbibliothek von Python zu nutzen, um die große Mehrheit der üblichen Anwendungsfälle zu bewältigen. Die meisten Routineaufgaben, die Sie erledigen müssen – Datei-Manipulationen, reguläre Ausdrücke, Arbeiten mit einem Web-Browser usw. – werden bereits irgendwo in Python bearbeitet.

Eine häufige Frage, die weniger erfahrene Python-Entwickler stellen, lautet: Woher weiß ich, ob etwas in der Standardbibliothek meinen Anwendungsfall abdeckt, ohne dass ich mir den Inhalt merken muss? Die kurze Antwort ist, den Index der Standardbibliothek und die Übersichtsseiten über die eingebauten Funktionen mit einem Lesezeichen zu versehen und sie zu überfliegen, wenn Sie mit einem „alltäglichen Programmierproblem“ zu kämpfen haben. Die ständige Auseinandersetzung mit den in Python verfügbaren Tools ist ein guter Lehrmeister.

Sie verwenden die richtigen Module für Ihre Aufgabe

Wie bei den Built-Ins und der Standardbibliothek ist die Nutzung der enormen Sammlung von Python-Modulen von Drittanbietern eine Arbeitserleichterung. Feuern Sie einen Suchbegriff zu Ihrem Problem über das Web-Frontend von PyPI ab, und Sie werden fast immer Module finden, die eine sofort einsatzbereite Lösung bieten. Noch einmal: Warum das (Python-)Rad neu erfinden, wenn Sie es einfach pip install(en) können? Außerdem zeichnen sich viele Python-Module durch eine C-beschleunigte Leistung aus, was bedeutet, dass Sie eine höhere Entwicklungsgeschwindigkeit und eine schnellere Programmausführung erhalten, wenn Sie die Module anderer verwenden.

Eine Frage, die oft gestellt wird: Wenn mehrere Module verfügbar sind, die meinen Anwendungsfall bearbeiten, welches soll ich dann verwenden? Die einfache Antwort ist, mit dem Projekt zu beginnen, das die meiste Nutzung oder Dynamik zu haben scheint (wie z.B. durch GitHub-Sterne oder -Gabeln angezeigt wird), denn es ist gut möglich, dass Ihr Anwendungsfall derselbe ist wie der vieler anderer Leute.

Sie werden nicht verrückt mit OOP

Die objektorientierte Programmierung (OOP) bündelt Datenstrukturen mit den Methoden, mit denen sie manipuliert werden, wodurch es einfacher wird, high-level Code zu schreiben. Für eine high-level Sprache wie Python ist OOP eine gute Wahl. Aber nicht jeder Python-Code muss objektorientiert sein. Python-Entwickler wissen, dass 20 Zeilen (oder sogar 200 Zeilen) get-it-done-and-get-on-with-it Code eine wertvolle Zeitersparnis gegenüber einer objektorientierten Alternative sein können, solange die Aufgabe nicht den OOP-Ansatz erfordert. Im Großen und Ganzen profitieren große und komplexe Projekte von der Objektorientierung, aber solange das Projekt keine OOP erfordert, ist es in Ordnung, die Regeln zu lockern.

Sie testen Ihren Code

Da wir gerade von etwas sprechen, das mit größeren Projekten gemacht wird, wissen die weisen Pythonistas um den Wert der Erstellung von Testsuiten. So mühsam und ermüdend das Schreiben von Tests auch sein kann, sind sie doch von unschätzbarem Wert, wenn ein Projekt über ein bestimmtes Maß an Komplexität hinaus wächst. Ein Zeichen noch fortgeschrittenerer Beherrschung ist die Erstellung von Tests parallel zu jeder neuen Funktion, nicht erst im Nachhinein. Je schneller Sie den Aufwand beim Schreiben von Tests überwinden, desto schneller können Sie Ihren Code verbessern. Beginnen Sie die Tests gleich mit der ersten implementierten Funktion, und Sie werden froh sein, dass Sie sie implementiert haben.

Sie verwenden nicht Python 2

Das war letztes Jahr so, und es ist jetzt doppelt so wahr. Python 2 hatte einen langen, guten Lauf, aber es wird jetzt vom offiziellen Python-Entwicklerteam nicht mehr unterstützt. Clevere Pythonistas haben ihre Projekte bereits auf Python 3 migriert, oder sie tun es jetzt.

Sie verwenden auch nicht die neueste Version von Python

Python 3.8 mag die neueste und „beste“ Version von Python sein, aber das bedeutet nicht, dass Sie verpflichtet sind, es zu nutzen. Tatsächlich versteht der kluge Software-Entwickler, dass die Verwendung der aktuellsten Version von irgendetwas ein Glücksspiel ist. Python ist da nicht anders. Der kluge Python-Programmierer hält sich an die Revision vor der aktuellsten Revision, um die größtmögliche Kompatibilität mit Modulen von Drittanbietern zu gewährleisten. Schließlich ist die Möglichkeit, auf all diese nützlichen Module zurückgreifen zu können, einer der Hauptgründe, Python überhaupt zu verwenden.

Sie verwenden auch andere Programmiersprachen

Python ist für fast alles als die „zweitbeste Programmiersprache“ beschrieben worden – und manchmal ist die Kluft zwischen der besten und der zweitbesten in der Tat groß. Kluge Python-Entwickler wissen, dass Python nur ein Tool unter vielen ist, und dass man immer das richtige Tool für die jeweilige Aufgabe verwenden sollte.

Für Anwendungen oder Operationen, die eine maximale Laufzeitgeschwindigkeit erfordern, werden Sie in der Regel nicht ausschließlich Python verwenden wollen; es ist C oder Rust oder sogar Go, nach dem Sie greifen werden. Aber nicht jede leistungsintensive Programmierung bedeutet den vollständigen Verzicht auf Python. Vielleicht bedeutet es nur, dass Sie eine C-basierte Bibliothek wie Numpy oder Pandas verwenden müssen, oder dass Sie C- oder C-kompatiblen Code in eine Python-Shell packen müssen, oder dass Sie Cython verwenden müssen, um Python in C umzuwandeln.

*Serdar Yegulalp ist ein leitender Autor bei InfoWorld, der sich auf maschinelles Lernen, Containerisierung, Devops, das Python-Ökosystem und periodische Überprüfungen konzentriert.


Mehr Artikel

Frauen berichten vielfach, dass ihre Schmerzen manchmal jahrelang nicht ernst genommen oder belächelt wurden. Künftig sollen Schmerzen gendersensibel in 3D visualisiert werden (c) mit KI generiert/DALL-E
News

Schmerzforschung und Gendermedizin

Im Projekt „Embodied Perceptions“ unter Leitung des AIT Center for Technology Experience wird das Thema Schmerzen ganzheitlich und gendersensibel betrachtet: Das Projektteam forscht zu Möglichkeiten, subjektives Schmerzempfinden über 3D-Avatare zu visualisieren. […]

News

KI ist das neue Lernfach für uns alle

Die Mystifizierung künstlicher Intelligenz treibt mitunter seltsame Blüten. Dabei ist sie weder der Motor einer schönen neuen Welt, noch eine apokalyptische Gefahr. Sie ist schlicht und einfach eine neue, wenn auch höchst anspruchsvolle Technologie, mit der wir alle lernen müssen, sinnvoll umzugehen. Und dafür sind wir selbst verantwortlich. […]

Case-Study

Erfolgreiche Migration auf SAP S/4HANA

Energieschub für die IT-Infrastruktur von Burgenland Energie: Der Energieversorger hat zusammen mit Tietoevry Austria die erste Phase des Umstieges auf SAP S/4HANA abgeschlossen. Das burgenländische Green-Tech-Unternehmen profitiert nun von optimierten Finanz-, Logistik- und HR-Prozessen und schafft damit die Basis für die zukünftige Entflechtung von Energiebereitstellung und Netzbetrieb. […]

FH-Hon.Prof. Ing. Dipl.-Ing. (FH) Dipl.-Ing. Dr. techn. Michael Georg Grasser, MBA MPA CMC, Leiter FA IT-Infrastruktur der Steiermärkischen Krankenanstaltengesellschaft m.b.H. (KAGes). (c) © FH CAMPUS 02
Interview

Krankenanstalten im Jahr 2030

Um sich schon heute auf die Herausforderungen in fünf Jahren vorbereiten zu können, hat die Steiermärkische Krankenanstaltengesellschaft (KAGes) die Strategie 2030 formuliert. transform! sprach mit Michael Georg Grasser, Leiter der Fachabteilung IT-Infrastruktur. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*