Seite wählen

NETWAYS Blog

Warum Python?

Als Systemintegrator in der IT-Welt stellt man früher oder später fest, dass man das Verstehen und Schreiben von Programmiersprachen nicht ignorieren kann. Je nachdem, in welcher IT-Bereich man tätig ist, wird man mit Programmiersprachen konfrontiert.

Wir bei NETWAYS bieten Open Source Lösungen, etwa in den Bereichen Monitoring, Cloud, Log-Management und Schulungen zu diesen Themen und Tools. Unter anderem etwa Lösungen für Automation, wo wir uns hauptsächlich mit Puppet und Ansible als Automation-Tools beschäftigen. Nachdem ich in letzter Zeit bei einigen Automation-Projekten dabei war, habe ich mich also mehr mit Ansible auseinander gesetzt. Ansible ist eine Automatisierungswerkzeug zur Orchestrierung, sowie der allgemeinen Konfiguration und Administration von Computern. Ansible ist Open Source und in Python geschrieben. Dabei bin ich immer wieder in Zusammenhang mit den Ansible-Modulen oder spezifischen Ansibel-Rollen für unsere Kunden auf Python gestoßen. In diesem Blog befassen wir uns mit der Definition und mit Vor- und Nachteilen von Python als Programmiersprache.

Was ist Python?

Programmiersprachen haben eine hohe Vielfalt und jede hat ihre eigenen Verwendungen und Vor- und Nachteile. Eine der objektorientierten Sprachen, die viele Anwendungen hat, ist Python. Python wurde im Jahr 1991 entworfen und veröffentlicht. Python ist Open Source und einfach zu lernen und damit geeignet für den Einsieg in die Welt des Programmierens. Python kann in vielen verschiedenen Bereichen wie Website Design, Softwareentwicklung und Skripting eingesetzt werden. Außerdem können die in Python geschriebenen Codes in einer Vielzahl von Plattformen wie Linux, Windows, Mac, sogar in Mobiltelefonen usw. implementiert werden.

Vorteile

Bedienung

Python ist aufgrund der Nähe zur menschlichen Sprache eine der am einfachsten zu erlernenden Sprachen, insbesondere für Anfänger. Im Vergleich zu Java und C können dieselben Funktionen in weniger Zeilen ausgeführt werden.

Libraries

Python verfügt über viele Standardbibliotheken in verschiedenen Bereichen wie das Internet, Webservice-Tools, Betriebssystemschnittstellen und Protokolle. Die am häufigsten verwendeten Programmieraufgaben werden in Python geschrieben, um die Anzahl der Codezeilen zu reduzieren, die zum Schreiben eines Programms erforderlich sind.

Integration

Python integriert „Application Integration“ und verbessert somit die Entwicklung von Webdiensten durch den Aufruf von COM- oder COBRA-Komponenten. Python verfügt über leistungsstarke Steuerungsmöglichkeiten, da sie direkt von C++, C oder Java mit Jython aufgerufen werden kann. Python kann auch XML und andere „Markup Languages“ verarbeiten, um auf modernen Betriebssystemen über ähnlichen Bytecode ausgeführt zu werden.

Flexibilität

Python ist sehr flexibel und erlaubt dem Benutzer daher, neue Dinge auszuprobieren. Python hindert den Benutzer nicht daran, etwas anderes auszuprobieren. Andere Programmiersprachen bieten diese Art von Flexibilität und Freiheit nicht und daher ist Python in diesen Fällen eher vorzuziehen.

Nachteile

Geschwindigkeit

Python ist eine interpretierte Sprache und übersetzt daher den Code Zeile für Zeile. Dadurch ist seine Verarbeitungsgeschwindigkeit niedriger als die einiger anderer Sprachen.

Mobilgeräte

Laut vielen Programmierern ist Python keine geeignete Sprache, um in der mobilen Umgebung ausgeführt zu werden. Außerdem erkennen Android und iOS Python nicht, Python kann jedoch im mobilen Umfeld verwendet werden. Dies erfordert jedoch mehr Zeit und diverse Einstellungen.

Speicherverbrauch

Python hat einen sehr hohen Speicherverbrauch. Dies liegt daran, dass es hinsichtlich Datentypen flexibel ist und viel Speicher verwendet. Python ist keine gute Wahl für speicheroptimierte Aufgaben.

Zusammenfassung

Heutzutage gibt es viele Programmiersprachen in der IT-Welt, die auch rege verwendet werden. Jede dieser Sprachen ist in einem bestimmten Bereich stärker als in anderen. Die Wahl der richtigen Programmiersprache beschäftigt viele, die planen in die Welt des Programmierens einzusteigen.

Die Entscheidung, welche Sprache man lernen soll, hängt von der Anwendung ab und persönlichen Interessen.
Python wurde entwickelt, um Produktivität, Lesbarkeit und Benutzerfreundlichkeit zu betonen. Aus meiner persönlichen Erfahrung als Anfänger kann ich sagen, dass es großen Spaß macht, Codes in Python zu schreiben, da die Lernkurve ab einem gewissen Punkt steil nach oben geht. Falls Du es ebenfalls neu lernen und Dich in Python ausprobieren willst, wünsche ich Dir viel Spaß dabei!

Falls Du es bei NETWAYS lernen oder anwenden magst, dann schau Dir doch mal unsere offenen Jobs und Ausbildungsstellen an!

Saeid Hassan-Abadi
Saeid Hassan-Abadi
Systems Engineer

Saeid hat im Juli 2022 seine Ausbildung als Fachinformatiker für Systemintegration bei uns abgeschloßen, und arbeitet nun in Operation-Team. Der gebürtige Perser hat in seinem Heimatland Iran Wirtschaftsindustrie-Ingenieurwesen studiert. Er arbeitet leidenschaftlich gerne am Computer und eignet sich gerne neues Wissen an. Seine Hobbys sind Musik hören, Sport treiben und mit seinen Freunden Zeit verbringen.

Programmieren mit Vala

Vala ist eine objektorienterte Programmiersprache, die auf dem Objekt-Modell von GNOME basiert. Daher ist es besonders leicht, mit ihr z.B. GTK-Programme zu schreiben.
Syntaktisch erinnert Vala sehr an C# und bietet ähnlich starke Features wie sein großes Vorbild: Klassen, Generics, Signale (analog zu Events bei C#), Eigenschaften mit Getter-/Setter-Funktionalität, Reflection und einiges mehr.
Folgendes Beispiel (von der Wikipedia-Seite zu Vala) zeigt, wie ein GUI-basiertes „Hello World“-Programm in Vala aussieht:
using Gtk;
int main (string[] args) {
Gtk.init(ref args);
var window = new Window();
window.title = "Hello, World!";
window.border_width = 10;
window.window_position = WindowPosition.CENTER;
window.set_default_size(350, 70);
window.destroy.connect(Gtk.main_quit);
var label = new Label("Hello, World!");
window.add(label);
window.show_all();
Gtk.main();
return 0;
}

Kompilieren lässt es sich mit folgendem Befehl (Tipp: Unter Ubuntu muss evtl. das „libgtk2.0-dev“-Paket installiert werden):
valac --pkg=gtk+2.0 -o HelloWorld HelloWorld.vala
Der Vala-Compiler generiert dabei zunächst intern C-Code, der danach mit GCC kompiliert wird. Das Ergebnis ist ein Binary, das – abgesehen von im Programm verwendeten Libraries – neben Glib und GObject keine zusätzlichen Abhängigkeiten hat.
Weitere Vala-Beispielprogramme gibt es z.B. in der offiziellen Dokumentation.