Python Schulung für Programmierer

Supply On GEMA Hochschule der Medien VW Bundesagentur für Arbeit Bayerische Oberlandbahn AUSY IT EDAG

Python Praxiskurs für Java-, C++- oder C#-Programmierer

Sie sind ein Python Programmierer und wollen schnell, effizient und auf praxisorientierte Weise Ihre Python-Kenntnisse auf das nächste Level bringen? Sie möchten sich Wissen in objektorientierter Programmierung sowie in fortgeschrittenen Python-Themen aneignen um anspruchsvolle Projekte realisieren zu können? Sie wollen Ihren Code in wiederverwendbare Module und Packages organisieren?

Oder sind Ihnen Themen wie Kontrollstrukturen, Funktionen und Collections aus einer anderen Programmiersprache bereits bestens vertraut und wollen Sie tief in Python einsteigen ohne viel Zeit mit den Grundlagen der Sprache zu verbringen, die Sie aufgrund Ihrer Vorkenntnisse quasi “im Vorbeigehen” lernen kannst?

Dann ist dieser Kurs der richtige für Sie und Sie brauchen nicht mehr weiter zu suchen. Erfahren Sie hier mehr über unseren Python Praxiskurs für Programmierer.

Alle Kurse live

In der Academy oder online

  • Individuell: wir gehen gezielt auf Sie ein und berücksichtigen Ihre Vorkenntnisse, Wunschthemen und Schwerpunkte

  • Strukturiert und leicht verständlich

  • Bringen Sie Ihre Karriere, Studium oder Ausbildung auf die nächste Stufe: mit Zertifikat

  • Sicher und eigenständig Programme entwickeln (ob privat, beruflich oder für Ihr Startup)

  • Viel, viel, viel Praxis: sofort anwendbare Ergebnisse

  • kleine Gruppen: max. 8 Teilnehmer im 3-Tages-Intensivkurs, max. 15 Teilnehmer im Online-Coaching

  • Von Experten nach der Raed- Methode® entwickelt & auf die Anforderungen von Tech-Unternehmen im Jahr 2020 ausgerichtet

  • E-Mail-Support auch nach Ende des Kurses

Kursbeschreibung

Python für Programmierer ist der perfekte Kurs für Sie, wenn Sie solide Vorkenntnisse und Erfahrungen in Python oder einer anderen Programmiersprache haben und innerhalb kürzester Zeit die Programmiersprache Python tiefgehend verstehen und erlernen möchten.

Dieser Kurs bringt Ihnen auf einfache und strukturierte Weise fortgeschrittene Techniken in Python bei und hilft Ihnen, anspruchsvolle Projekte in Python zu implementieren. Er ist gedacht für Softwareentwickler mit soliden Programmier-Kenntnissen, die Python als vollwertige Programmiersprache für große Projekte einsetzen wollen und daher ein tiefes Verständnis von Python benötigen.

Lernen Sie Python von unseren Experten, und Sie werden erstaunt sein, was möglich ist!

Was sind die Ziele des Kurses?

  • Schreiben von anspruchsvollen Python-Programmen
  • Verwenden fortgeschrittener Python Sprachmittel
  • Objektorientierte Programmierung mit Python
  • Strukturieren von Programmen in Module und Pakete

Welche Themen werden behandelt?

  • Schnelldurchlauf durch Python Grundlagen, zur Wiederholung und Vertiefung
  • Objektorientierte Programmierung
    • Benutzerdefinierte Datentypen
    • Vererbung und Polymorphie
    • Das Python Datenmodell und “Magic Methods”
  • Fehlerbehandlung mit Exceptions
  • Iteration, Comprehensions und Generatoren
  • Arbeiten mit Dateien und strukturierten Daten (JSON, XML, …)
  • Einführung ins Testen mit Pytest

Ist dieser Kurs der Richtige für Sie?

Dieser Python-Kurs wurde für Programmierer mit Vorkenntnissen in Python oder einer anderen Programmiersprache entwickelt und optimiert. Er ist ideal wenn Sie

  • über solide Grundkenntnisse in Python verfügen, z.B. unseren Kurs Python für Programmierer besucht haben oder über vergleichbare Kenntnisse verfügen,
  • gute Vorkenntnisse in einer anderen Programmiersprache haben, also mit einer Sprache wie Java, C#, C++, JavaScript oder PHP vertraut sind

und tief in Python einsteigen wollen!

Wenn Sie diesen Kurs besuchen, sollten Sie eine funktionsfähige Python Installation haben mit der Sie Programme entwickeln und ausführen können. Wir verwenden Jupyter Notebooks für die Kursunterlagen und einen Teil der Workshops, daher sollten Sie eine lauffähige Installation davon in Ihrem Python-Environment haben.

Wenn Sie neu in der Programmierwelt sind und einen Python-Kurs für Einsteiger ohne Programmiervorkenntnisse oder mit geringen Vorkenntnissen in einer anderen Sprache suchen, dann besuchen Sie bitte unseren Python Grundkurs.

Wenn Sie eine Schulung für Ihr Team mit mindestens 5 Personen suchst, dann finden Sie bei Python für Teams die Möglichkeit einen maßgeschneiderten Kurs zusammenzustellen.


Kursformate

3-Tages-Intensivkurs

3-tägiger Kurs vor Ort

Der Kurs findet in unsern modernen und top ausgestatteten Schulungsräumen statt. Wir stellen jedem Teilnehmer während der Schulung einen modernen Laptop zur Verfügung. Getränke werden von der Coding Academy zur Verfügung gestellt. Zugang zum Material bekommen Sie spätestens am ersten Tag des Kurses.

3-tägiger Onlinekurs
Der Kurs findet Online statt. Sie benötigen lediglich einen Computer mit Internet-Zugang; für manche Kurse ist es allerdings nötig, dass Sie die verwendete Software installieren; das ist in der Beschreibung des jeweiligen Kurses angegeben. Zugang zum Material bekommen Sie spätestens am ersten Tag des Kurses.

4-Wochen-Programm

Dies ist eine Kombination zwischen Online- und Offline-Schulung, die manchmal auch als „Blended Learning” bezeichnet wird. Das 4-Wochen Programm findet ab mindestens 3 Teilnehmern statt und läuft wie folgt ab:

  1. Sie bekommen am Montag hochqualitative Lernvideos, Lernmaterial und Musterlösungen. Die Videos sind nur exklusiv bei uns erhältlich und wurden von Coding Academy Experten aufgenommen.
  2. Sie lernen täglich ca. 2 Stunden mit den Videos und Lernunterlagen. Unsere Kurse beinhalten viele Workshops, die Sie in dieser Zeit selbstständig bearbeiten. Diese Beschäftigung mit dem Material und den Übungsaufgaben ist essentiell für den Erfolg! Denn in den Online-Terminen beantworten wir Fragen zum gelernten Material und diskutieren die Lösungen der Workshops, wir erklären nicht erneuert das, was im Learning Video behandelt wurde!
  3. In der ersten Woche treffen wir uns am Mittwoch für 2 Stunden online. Sie können hier Fragen stellen, wir diskutieren Ihre Lösungen der Aufgaben und erklären Ihnen ggf. weitere Themen oder lösen gemeinsam zusätzliche Aufgaben.
  4. Am Freitag treffen wir uns erneut 2 Stunden online. Genau wie am Mittwoch.
  5. Ab der zweiten Woche wiederholen wir die Schritte: 1, 2 und 4. Das heißt, Sie bekommen am Montag Lernvideos und Material, Sie setzen sich mit den Themen offline auseinander und am Freitag treffen wir uns für 2 Stunden.
  6. Das Programm wiederholen wir insgesamt für 4 Wochen.

Zusätzlich zu den Online-Sessions steht Ihnen unser Online-Forum zur Verfügung, in dem Sie mit anderen Teilnehmern diskutieren können und bei Problemen Hilfestellung von unseren Teaching Assistants bekommen.

Wichtiger Hinweis: Diese 4-Wochen Programme entstehen gerade. Kontaktieren Sie uns bitte bezüglich der Verfügbarkeit des von Ihnen gewünschten Kurses.

Trainingsvideos

Wir bieten die Kurse auch als Trainingsvideos ohne persönliche Betreuung durch unsere Trainer an. Auf diese Weise können Sie sehr preisgünstig von unseren hochwertigen Lernvideos profitieren. In unserem Online-Forum können Sie mit anderen Teilnehmern diskutieren und bekommen bei Problemen Hilfestellung von unseren Teaching Assistants.

Wichtiger Hinweis: Diese Trainingsvideos entstehen gerade. Kontaktieren Sie uns bitte bezüglich der Verfügbarkeit des von Ihnen gewünschten Kurses.

Welches Format ist das Richtige für mich?

Die Inhalte, die vermittelt werden, sind unabhängig davon, ob Sie den Kurs online, vor Ort, im 4-Wochen Programm oder als Trainings Video absolvieren. Wir haben mit allen Formaten sehr gute Erfahrungen gemacht, aber jede Form hat ihre Vor- und Nachteile.

Onlinekurse und Kurse vor Ort

Die Online- und vor Ort Schulungen vermitteln den Stoff in einer kompakten, intensiven Form. Sie können sich einen Block an Zeit reservieren, der 100% für das Lernen reserviert ist, was sich typischerweise positiv auf die Lernkurve auswirkt.

In den Schulungen vor Ort ist es oft etwas leichter in der Gruppe zu diskutieren als in online Schulungen, dafür fällt bei Online-Schulungen die Zeit für die Fahrt zur Schulung weg und Sie können in Ihrer vertrauten Umgebung arbeiten.

Das 4-Wochen-Programm und Trainingsvideos

Beim 4-Wochen Programm und bei reinen Video-Kursen ist das Lernen über einen längeren Zeitraum verteilt. Das ermöglicht es Ihnen entspannter zu lernen und bietet mehr Möglichkeiten die gelernten Konzepte gleich in der Praxis auszuprobieren, aber es führt auch leichter dazu, dass Sie von anderen Aufgaben abgelenkt werden und sich nicht intensiv genug mit dem Stoff beschäftigen. Das 4-Wochen Programm bietet hier den Vorteil, dass durch die wöchentlichen Online-Sessions eine Motivation vorhanden ist, den Kurs wirklich in einem kompakten Zeitrahmen abzuschließen.

Kursablauf

Was lernen Sie am ersten Tag?

In diesem Kurs gehen wir davon aus, dass Sie grundlegende Konzepte und Sprachelemente wie Variablen, Datentypen, Funktionen und Collections bereits kennen, aber möglicherweise in einer anderen Sprache als Python. Wir beginnen daher mit einem “Schnelldurchlauf” durch die wichtigsten Programmelemente in Python: Variablen, Operationen, Bedingungen (if/elif/else), Schleifen (for), Funktionen, sowie Collections wie Listen und Dictionaries. Wir gehen dabei sehr zügig vor und besprechen hauptsächlich die Syntax und einige Besonderheiten dieser Konstrukte in Python, um alle Kursteilnehmer auf den gleichen Stand zu bringen. Den Großteil der Zeit verbringen wir dann mit Themen, die über die Grundlagen hinausgehen.

Wir besprechen verschiedene Arten in Python benutzerdefinierte Datentypen zu definieren und zu verwenden, und wir diskutieren ihre Vor- und Nachteile. Außerdem lernen Sie, wie das Python Datenmodell funktioniert und wie Sie “Magic Methods” verwenden können, um Ihre Datentypen leichter benutzbar zu machen.

Dann besprechen wir die Grundlagen der funktionalen Programmierung in Python, wie Closures und anonyme Funktionen. Sie lernen Decorators kennen, die es Ihnen oft ermöglicht duplizierte Codes zu vermeiden und Ihre Design-Intentionen klarer auszudrücken. Falls dafür Zeit bleibt, gehen wir noch darauf ein, wie Sie Closures verwenden können um selber Decorators zu implementieren.

Was lernen Sie am zweiten Tag?

Am zweiten Tag widmen wir uns der Objektorientierung. Wir sehen wie wir Vererbung und Polymorphie verwenden, um miteinander verwandte Konzepte klar und prägnant in Code auszudrücken. Sie lernen, wie man abstrakte Klassen in Python einsetzen kann, um Interfaces zu beschreiben und lernen auch Protokolle kennen, die in vielen Fällen eine Alternative zu Interfaces darstellen. Je nach Interesse besprechen wir auch einige Spezialthemen, wie z.B. Descriptors oder Mehrfachvererbung.

Dann gehen wir auf den Umgang mit textbasierten Daten ein und besprechen, wie Sie in Python mit Texten umgehen können: Wir besprechen reguläre Ausdrücke, ein mächtiges Werkzeug zum Suchen und Ersetzen in Texten, das Ihnen in vielen Situationen gute Dienste leisten wird. Bei Interesse besprechen wir auch den Umgang mit Texten, die Zeichen enthalten, die im englischen Alphabet nicht vorkommen und zeigen Ihnen, wie Sie internationalisierte Software erstellen können.

Was lernen Sie am dritten Tag?

Am dritten Tag lernen Sie wie man Ausnahmebehandlung verwendet um auf Fehler und unerwartete Situationen zu reagieren. In Python kann man explizite Ausnahmebehandlung oft durch Context-Manager vermeiden; wir besprechen, wie Sie verschiedene Context Manager einsetzen und sogar eigene Context Manager implementieren können.

Wir gehen kurz auf das Testen Ihres Codes ein und zeigen Ihnen, wie Sie mittels Doctests und Unit-Tests sicherstellen können, dass Ihr Code auch das tut, was Sie von ihm wollen.

Wir besprechen dann, wie Sie installierbare Python Pakete erzeugen können, um Ihren Code an Kollegen weiterzugeben, oder um zum Open-Source Ökosystem des Python Package Index beizutragen und Ihre Software der ganzen Welt zur Verfügung zu stellen.

Ob wir alle diese genannten Themen schaffen, hängt davon ab, wie schnell wir vorankommen. Je nach Vorkenntnissen der Teilnehmer kann der Fortschritt etwas schneller oder langsamer sein. Wir versuchen auch, die Auswahl der Themen an die Bedürfnisse und Interessen der Teilnehmer anzupassen, daher können die behandelten Themen zwischen verschiedenen Teilnehmergruppen etwas variieren. Je homogener die Gruppe ist, desto größer ist der Nutzen für alle Teilnehmer. Daher beschränken wir unsere Kurse auf max. 8 Personen mit ähnlichen Vorkenntnissen!

Inhalte

Beim Python Praxiskurs für Programmierer behandeln wir eine Auswahl aus folgenden Themen:

Wiederholung und Vertiefung der Python Grundlagen

  • Variablen
  • Grundlegende Datentypen (Zahlen, Strings, Bytes, Booleans)
  • Kontrollfluss
  • Funktionen
  • Python Speichermodell
  • Automatische Speicherverwaltung

Collections, Iterables und Generatoren

  • Collections
  • Slicing
  • Iterables und Iteratoren
  • Comprehensions
  • Generatoren

Funktionale Programmierung und Metaprogrammierung (Teil 1)

  • Namespaces und Scopes
  • Verschachtelte Funktionen und Closures
  • Decorators

Objekt-orientierte Programmierung

  • Was ist OOP?
  • Benutzerdefinierte Datentypen und Instanzen
  • Attribute, Klassenattribute, Properties
  • Konstruktoren (__init__()-Methoden)
  • Methoden
  • Vererbung (nominelles Subtyping)
  • Interfaces und abstrakte Klassen
  • Protokolle (strukturelles Subtyping)
  • Mehrfachvererbung

Ausnahmebehandlung

  • Exceptions
  • Auslösen und Behandeln von Exceptions (raise und try ... except)
  • Die finally-Klausel
  • Context Manager (with ...)

Arbeiten mit Text

  • Reguläre Ausdrücke
  • Unicode
  • Internationalisierung

Module, Pakete und Installierbare Pakete

  • Module
  • Pakete
  • Python Build-Systeme und Wheels (installierbare Pakete)

Exkurs: Unit-Test

  • Einführung ins Testen
  • Doctests
  • PyTest

Welche dieser Themen im Rahmen des Kurses konkret behandelt werden können, richtet sich, wie bereits besprochen, nach den Vorkenntnissen und Interessen der Teilnehmer und danach, wie zügig die Teilnehmer mit den Workshops vorankommen. Die behandelten Themen können also zwischen verschiedenen Teilnehmergruppen etwas variieren. Unser Ziel ist es, fundiertes Wissen zu vermitteln, das Sie wirklich einsetzen können, und nicht Ihnen nur einen Überblick über Techniken zu geben, die Sie nach dem Kurs nicht selbst anwenden können. Deshalb kann es vorkommen, dass wir aus Zeitgründen manche der genannten Themen nicht behandeln können

Ihre Trainer

Der Python Kurs für Programmierer wird von einem der folgenden Trainer durchgeführt:

Dr. Stefan Behnel
Dr. Stefan Behnel

Expert: Python, Pytest, Clean Code, Fast Python, Cython

Dr. Matthias Hölzl
Dr. Matthias Hölzl

Expert: Python, JavaScript, C++ , Machine Learning,

Prof. Dr. Peer Kröger
Prof. Dr. Peer Kröger

Expert: Künstliche Intelligenz, Data Science, Python, Java

Zertifikat

Selbstverständlich erhalten Sie als Teilnehmer am Python-Kurs für Programmierer ein Zertifikat. Voraussetzung dafür ist die komplette Teilnahme an allen Kurseinheiten und Programmier-Aufgaben.

Wie geht es ab hier weiter?

Nach diesem Kurs haben Sie fortgeschrittene Kenntnisse in Python und sind mit den Fähigkeiten, die Python zur objektorientierten Programmierung bietet, gut vertraut.

Wenn Sie wissen wollen, wie Sie objektorientierte Programmierung in Projekten gewinnbringend einsetzen können, dann empfehlen wir Ihnen den Kurs Modernes Objektorientiertes Python, in dem Sie viele Entwurfsmuster und Techniken zum Einsatz von Objektorientierung in der Praxis lernen.

Wenn Sie sich dafür interessieren, wie Sie Python effektiv einsetzen - also um Software zu schreiben, die leicht zu warten und zu erweitern ist und bei der Sie sich darauf verlassen können, dass sie so funktioniert wie sie soll - ist unser Kurs Effektives Python eine gute Wahl. In diesem Kurs lernen Sie, wie Sie Ihren Code besser lesbar machen können, wie Sie gute Unit Tests schreiben, und viele weitere Techniken, um die Qualität Ihrer Software zu verbessern.

Der Kurs Modernes Objektorientiertes Python stellt stark die Struktur von Programmen in den Vordergrund, also Design Patterns, in denen mehrere Klassen zusammenarbeiten, um ein Problem zu lösen. Im Gegensatz dazu wird im Kurs Effektives Python der Schwerpunkt auf funktionale Programmiertechniken, die Vermittlung von Best Practices wie Unit Testen und den Einsatz von Tools zur Steigerung der Code-Qualität gelegt.

Anfragen