Programmieren für Anfänger
Python lernen leicht gemacht
Python gilt gemeinhin als relativ einfache Programmiersprache - sowohl wenn es ums Lernen geht, als auch um die Anwendung des Erlernten. Experten zufolge eignet sich Python für eine ganze Reihe von Applikationen. Der Einstieg kann sich aber ebenso schwierig gestalten wie bei anderen Programmiersprachen. Jede Entscheidung, die Sie diesbezüglich treffen, hat Auswirkungen. Egal ob es dabei um das Betriebssystem, die Laufzeit- oder die Entwicklungsumgebung geht.
Aus diesem Grund haben wir alle wichtigen Schritte für den Einstieg in Python für Sie zusammengestellt. Wir zeigen Ihnen die verschiedenen Python-Distributionen, sagen Ihnen welche Entwicklungsumgebung sich am besten für Ihre Zwecke eignet und geben Ihnen Tools an die Hand, die Sie bestmöglich beim Programmieren mit Python unterstützen sollen. So sollten Ihnen die üblichen Fehler und Missgeschicke, die Anfänger oft heimsuchen, erspart bleiben.
Wahrscheinlich fragen Sie sich als erstes, welche Version von Python Sie am besten nutzen sollen. Antwort: Python 3. Das ist die aktuelle und zukunftssichere Version der Programmiersprache. Bei Python 2 handelt es sich nur noch um eine Legacy-Version, die aus Gründen der Rückwärtskompatibilität weiterhin unterstützt wird. Im Vergleich bietet Python 3 zwar dieselben Features wie Python 2, hat dabei aber deutliche Performance-Vorteile.
Wählen Sie Ihre Python-Plattform
Wie Ihr Einstieg ins Programmieren mit Python verläuft, hängt maßgeblich davon ab, welches Betriebssystem Sie als Entwicklungsumgebung nutzen wollen. Glücklicherweise ist die Programmiersprache für alle gängigen Betriebssysteme verfügbar. Darüber hinaus stehen auch diverse gute Editor-Programme und Entwicklungsumgebungen zur Verfügung.
Lesen Sie auch: Wie Sie Python richtig installieren
Achtung:Die Anweisungen in diesem Abschnitt beziehen sich auf die Standard-Version von Python, die von der Python Software Foundation herausgegeben wurde. Python ist auch in anderen Versionen verfügbar, von denen die eine oder andere eventuell besser zu Ihren Bedürfnissen passt. Sie sollten deshalb - bevor Sie irgendetwas installieren - zuerst den Abschnitt "Python-Distributionen im Überblick" lesen.
Microsoft Windows: Python ist standardmäßig kein Bestandteil von Windows. Das Zusammenspiel mit Microsofts Betriebssystem ist deswegen aber auch nicht besonders aufwendig: Eine Laufzeitumgebung downloaden, einige Buttons klicken - fertig. Wenn Sie den Package Manager Chocolatey für Windows nutzen (und warum auch nicht, wenn es das Leben leichter macht), tippen Sie einfach "choco install python3" in die Kommandozeile ein.
Linux: Zu so gut wie jeder größeren Linux-Distribution gehört inzwischen auch Python. Die Frage ist nur, ob Sie standardmäßig die neueste Version der Programmiersprache bekommen. Einige Linux-Distributionen kommen aus gutem Grund mit älteren Python-Versionen: Die Scripts sind nicht selten speziell für eine Distribution geschrieben und arbeiten deshalb auch nur mit einer bestimmten Version von Python. Wenn das der Fall ist, kommen Sie unter Umständen nicht darum herum, über den Package Manager eine ältere Python-Version zu installieren. Wenn Sie vermeiden wollen, dass verschiedene Versionen miteinander ins Gehege kommen. Hilft Ihnen dabei die Software pyenv.
macOS: Die Situation auf dem Mac-Betriebssystem ist ganz ähnlich zu der von Linux. Um Python 3 mit dem Mac zu nutzen, emfpiehlt es sich, auf den Homebrew Package Manager zurückgreifen. Für das Management empfiehlt sich wiederum pyenv.
Wenn Sie Docker installiert haben, können Sie auch einfach einen Container mit einer Python-Laufzeitumgebung erstellen und diesen als Basis für ein Projekt nutzen.
- Die Gehaltsauswertung
Für die COMPUTERWOCHE hat die Hamburger Vergütungsberatung COP Compensation Partner GmbH Gehaltsdaten von Softwareentwicklern ausgewertet. Dafür wurden insgesamt rund 6000 Daten herangezogen. 4275 davon befassten sich mit Backend- und 1682 mit Frontend-Entwicklern. - Das verdienen IT-Entwickler
Alle Gehälter haben stark angezogen, vor allem bei Berufseinsteigern In Deutschland verdienen Backend- durchschnittlich 61.200 € und Frontend-Entwickler um die 46.700 €. - Das verdienen Entwickler ohne Berufserfahrung
Ein Backend-Entwickler verdient ohne Berufserfahrung bereits rund 52.300 €. Als Frontend-Entwickler erreicht er ein durchschnittliches Einstiegsgehalt von 40.400 €. - Bis zu 80.000 € mit 20 Jahren Berufserfahrung
Nach 20 Jahren Berufserfahrung dürfte der Backend-Entwickler knapp 80.000 € und ein Frontend-ITler circa 59.300 € verdienen. - In kleinen Firmen bis zu 57.000 €
In einer Firma mit bis zu 50 Mitarbeitern verdienen Backend-Entwickler um die 57.000 und im Frontend-Bereich circa 42.000 Euro. - Das verdient ein Entwickler in einer Firma ab 1.000 Mitarbeitern
Übersteigt die Firma eine Mitarbeiterzahl von 1.000 so erhalten Entwickler im Backend-Bereich ein durchschnittliches Gehalt von 68.000 € - im Frontend-Bereich wiederum knapp 54.000 € im Jahr. - Mit kleiner Personalverantwortung ab 90.000 €
Hat ein Backend-Entwickler eine kleine Personalverantwortung von einem bis drei Mitarbeitern steigt sein Gehalt auf 105.000 und bei einem Frontend-Entwickler auf 94.000 Euro. - Mit bis zu 30 Mitarbeitern 100.000 € im Jahr
Für Backend-Entwickler mit einer Personalverantwortung von 16 bis 30 Mitarbeitern gibt es laut Studie um die 115.300 und für Frontend-Entwickler 102.300 Euro pro Jahr. - Im Maschinenbau 60.000 € im Jahr verdienen
Auch die Branche hat einen Einfluss auf das Gehalt. Ein Backend-Entwickler erreicht im Maschinenbau ein durchschnittliches Gehalt von 63.700 € im Jahr. - In der Chemie bis zu 49.000 €
Ein Frontend-Entwickler in der Chemie erhält ein durchschnittliches Gehalt von 49.000 €. - München ist Spitzenreiter
In München sind die Gehälter für Backend-Entwickler mit 74.000 € durchschnittlich um rund 10.000 € höher als in anderen bayerischen Regionen. Frontend-Entwickler erreichen hier ein Durchschnittsgehalt von 56.500 € – das sind immer noch 7.000 € mehr, als in Restbayern. - Mit Personalverantwortung in München bis zu 130.000 € verdienen
Mit Personalverantwortung kann das Gehalt für Backend-Entwickler in der bayerischen Landeshauptstadt auf bis zu 132.000 € steigen. Ein Frontend-Entwickler verdient hier um die 117.000 €. - In Berlin um die 58.000 €
In Berlin liegt das Durchschnittsgehalt für Backend-Entwickler bei circa 58.000 €. Für Frontend-Entwickler gibt es rund 44.000 € im Jahr. - 65.200 € für Backend-Entwickler in Hamburg
Hamburg bietet ein durchschnittliches Gehalt von 65.2000 € für IT-Backend-Entwickler. Im Frontendbereich sind wesentlich weniger: 49.000 € im Jahr. - In Mecklenburg-Vorpommern um die 46.700 € verdienen
In Mecklenburg-Vorpommern verdient ein Backend-Entwickler um die 46.700 € – im Frontendbereich sind es wieder weniger: 35.400 € pro Jahr.
Python-Distributionen im Überblick
Python steht in einer Vielzahl unterschiedlicher Distributionen zur Verfügung. Sinn und Zweck dieser Vielfalt ist - wie bei Linux -, möglichst viele verschiedene Nutzungsszenarien bedienen zu können. Die folgende Zusammenstellung soll Ihnen einen Überblick über einige ausgewählte Distributionen verschaffen - nämlich die bekanntesten und meist genutzten.
CPython: Gemacht von der Python Software Foundation ist CPython die Basis-Laufzeitumgebung und so etwas wie eine "Allzweckwaffen"-Version. Neben Interpreter und Standard Bibliothek gehört auch ein Sammelsurium an Komponenten von Drittherstellern zum Lieferumfang.
Wissenswert ist in diesem Zusammenhang, dass es keinen direkten technischen Support für CPython gibt. Es gibt einen eingebauten Mechanismus für Packages von Drittanbietern namens pip, aber die Implementierung größerer und komplexerer Packages kann eine Herausforderung darstellen.
Geeignet für: Anfänger, die nicht viel wagen wollen und echte "Do-It-Yourselfer", die keine Angst davor haben, sich ihre Einzelteile selbst zusammen zu suchen.
ActivePython: ActiveState vermarktet eine ganze Reihe von Consumer- und Enterprise-Laufzeitumgebungen und IDEs (integrated development environment). ActivePython beinhaltet neben CPython auch dutzende, vorinstallierte Bibliotheken und geht deswegen deutlich unkomplizierter von der Hand als CPython. Dazu kommen etliche Performance-Verbesserungen für viele Bibliotheken aus den Bereichen Mathematik und Wissenschaft.
Für die Nutzung von ActivePython ist Geldeinsatz notwendig. Drei Versionen stehen zur Auswahl: eine kostenlose "Community Edition" (kein Support), eine "Business Edition" und eine "Enterprise Edition". Enterprise-Nutzer können sich von unten nach oben durch die Pyramide arbeiten, um zu sehen, ob ActivePython zu ihrem Projekt passt.
Geeignet für: Enterprise-Nutzer, die ohne großen Aufwand auf viele Bibliotheken von Drittanbietern zugreifen wollen. Und bereit sind für Support zu bezahlen.
PyPy: Das größte Alleinstellungsmerkmal der Python-Distribution PyPy ist Geschwindigkeit. Mit Hilfe eines JIT (Just in time)-Compilers beschleunigt sie Python-Applikationen. Und zwar teilweise dramatisch. Allerdings manifestiert sich diese Performance-Verbesserung in erster Linie in Applikationen, die über einen langen Zeitraum laufen.
Geeignet für: Entwickler von langfristigen Services, für die die Dynamik von Python von Nutzen ist.
Anaconda: In der Praxis kommt Python vor allem in der Mathematik und Statistik zum Einsatz. Etwa wenn es um Datenanalysen oder Machine Learning geht. Inzwischen gibt es einige Python-Distributionen, die speziell für diese Anwendungsszenarien ausgelegt sind. Anaconda von Continuum Analytics gehört zu den bekanntesten und meist genutzten. Wie im Fall von ActivePython gehören auch hier zahlreiche Python-Bibliotheken zum Paket - unter anderem kommen Intel-optimierte Versionen von Mathematik-Bibliotheken zum Einsatz. Anaconda verfügt auch über einen eigenen Installer, um die Bibliotheken von Drittanbietern zu managen. So fällt es auch leichter, die Packages auf dem neuesten Stand zu halten.
Geeignet für: Jeden, der Python zur Datenanalyse oder für maschinelles Lernen nutzt. Anaconda ist zwar nicht ausschließlich für diese Use Cases gemacht, aber stark auf diese zugeschnitten. Die Python-Distribution Enthought ist eine Alternative zu Anaconda.