Informationen zur Technologie

Python ist eine universelle, höhere Programmiersprache, die gut lesbar ist. Sie unterstützt mehrere Programmierparadigmen, wie die objektorientierte, die funktionale und die aspekt-orientierte Programmierung und bietet eine dynamische Typisierung. Sie wird oft als Skriptsprache eingesetzt.

Flask ist ein in Python geschriebenes Webframework, mit dem Fokus auf Modularität. Die einzigen Abhängigkeiten sind Jinja2, eine Template-Engine und eine Bibliothek zum Erstellen von WSGI-Anwendungen.


Python 3.8 Flask 1.1 - Webentwicklung - Vertiefung - Schulung (4 Tage)

Kurzbeschreibung

In diesem Python 3.8-Kur lernen Entwickler die Übernahme der vollständigen Kontrolle über ein Flask Web-Framework, das Python-basierte Mikroframework. Dieser Programmierkurs bietet eine vertiefte Tour durch das modulare Flask. Die behandelten Themen umfassen u.a. Flask Konfigurationen, die Datenmodellierung mit Flask, die Erstellung asynchroner Aufgaben mit Celery, Webformulare mit WTForms, die Admin-Oberfläche für Flask Apps sowie das Debugging, Troubleshooting, Tests, die Bereitstellung, Microservices, Container und viele Tipps und Tricks.


Voraussetzungen

• Anwendungserfahrung von Python und Flask


    Seminarinhalt

    Flask Konfigurationen
    • Einrichtung einer Umgebung mit virtualenv
    • Umgang mit Grundkonfigurationen
    • Konfiguration mit klassenbasierten Einstellungen
    • Organisation der statischen Dateien
    • Bereitstellungsspezifisch mit Instanz-Ordnern
    • Zusammensetzung von Views und Modellen
    • Erstellung einer modularen Web-App mit Blueprints
    • Das Installierbar-machen einer Flask App mit Setup-Tools

    Vorlagen mit Jinja2
    • Bootstrapping des empfohlenen Layouts
    • Implementierung der Blockzusammensetzung und Layout-Vererbung
    • Erstellung eines benutzerdefinierten Kontextprozessors
    • Erstellung eines benutzerdefinierten Jinja2-Filters
    • Erstellung eines benutzerdefinierten Makros für Formulare
    • Erweiterte Formatierung von Datum und Uhrzeit

    Datenmodellierung in Flask
    • Erstellung einer SQLAlchemy DB-Instanz
    • Erstellung eines grundlegenden Produktmodells
    • Erstellung eines relationalen Kategoriemodells
    • Migration von Datenbanken mit Alembic und Flask
    • Indizierung von Modelldaten mit Redis
    • Wahl des NoSQL Wegs mit MongoDB

    Erstellung asynchroner Aufgaben mit Celery
    • Erstellung von asynchronen Aufgaben mit Celery
    • Die Bedeutung von Celery
    • Einrichtung von Celery und RabbitMQ
    • Erstellung von Aufgaben in Celery
    • Ausführung von Celery-Aufgaben
    • Überwachung von Celery
    • Erstellung einer Wiedervorlage
    • Erstellung einer wöchentlichen Übersicht

    Arbeiten mit Views
    • Schreiben von funktionsbasierten Views und URL-Routen
    • Schreiben klassenbasierter Views
    • Implementierung von URL-Routing und Paginierung
    • Rendern in Templates
    • Umgang mit XHR Anfragen
    • Verwendung von Dekorateuren zur eleganten Bearbeitung von Anfragen
    • Erstellung von benutzerdefinierten 404- und 500-Handlern
    • Blinkende Nachrichten für besseres Benutzer-Feedback
    • Implementierung der SQL-basierten Suche

    Webformulare mit WTForms
    • Darstellung von SQLAlchemy-Modelldaten als Formular
    • Überprüfung von Feldern auf der Serverseite
    • Erstellung eines gemeinsamen Formularsatzes
    • Erstellung von benutzerdefinierten Feldern und Validierung
    • Erstellung eines benutzerdefinierten Widgets
    • Das Hochladen von Dateien über Formulare
    • Schutz von Anwendungen vor Cross-Site Request Forgery (CSRF)

    Authentifizierung in Flask
    • Erstellung einer einfachen sitzungsbasierten Authentifizierung
    • Authentifizierung mit der Flask Login-Erweiterung
    • Verwendung von Facebook zur Authentifizierung
    • Verwendung von Google zur Authentifizierung
    • Verwendung von Twitter zur Authentifizierung
    • Authentifizierung mit LDAP

    RESTful API Erstellung
    • Erstellung von RESTful API
    • Erstellung einer klassenbasierten REST-Schnittstelle
    • Erstellung einer erweiterungsbasierten REST-Schnittstelle
    • Erstellung einer vollständigen RESTful API

    Admin-Oberfläche für Flask Apps
    • Admin-Oberfläche für Flask Apps
    • Erstellung einer einfachen CRUD-Schnittstelle
    • Verwendung der Flask-Admin-Erweiterung
    • Registrierung von Modellen bei Flask-Admin
    • Erstellung von benutzerdefinierten Formularen und Aktionen
    • Verwendung eines WYSIWYG-Editors für die Integration von Textbereichen
    • Erstellung von Benutzerrollen

    Internationalisierung und Lokalisierung
    • Internationalisierung und Lokalisierung
    • Hinzufügen einer neuen Sprache
    • Implementierung der verzögerten Auswertung und der Funktionen gettext/ngettext
    • Implementierung der globalen Sprachumschaltaktion

    Erstellung einer eigenen Erweiterung
    • Erstellung einer eigenen Erweiterung
    • Erstellung einer YouTube Flask Erweiterung
    • Änderung der Antwort mit Flask Erweiterungen

    Debuggen, Troubleshooting und Testen
    • Debuggen, Troubleshooting und Testen
    • Einrichtung der grundlegenden Dateiprotokollierung
    • Senden von E-Mails bei Auftreten von Fehlern
    • Verwendung von Sentry zum Überwachen von Ausnahmen
    • Debuggen mit pdb
    • Erstellung eines ersten einfachen Tests
    • Schreiben weiterer Tests für Ansichten und Logik
    • Integration der Nasenbibliothek
    • Verwendung von Mocking, um echten API-Zugriff zu vermeiden
    • Bestimmung der Testabdeckung
    • Verwendung der Profilerstellung, um Engpässe zu finden

    Bereitstellung und Nachbereitstellung
    • Bereitstellung und Nachbereitstellung
    • Bereitstellung mit Apache
    • Bereitstellung mit uWSGI und Nginx
    • Einsatz mit Gunicorn und Supervisor
    • Bereitstellung mit Tornado
    • Verwendung des S3-Speichers zum Hochladen von Dateien
    • Bereitstellung mit Heroku
    • Bereitstellung mit AWS Elastic Beanstalk
    • Verwaltung und Überwachung der Anwendungsleistung mit New Relic

    Microservices und Container
    • Containerisierung mit Docker
    • Orchestrierung von Containern mit Kubernetes
    • Ohne Server mit Zappa auf AWS Lambda

    Tipps und Tricks


    Zielgruppen

    • Versierte Flask / Python Entwickler


    Preise und Termine

    offene Schulung
    Eine offene Schulung findet in einem unserer Schulungszentren statt.
    Dauer:4 Tage
    Preis:1.690,00 € zzgl. USt. pro Teilnehmer (2.011,10€ inkl. USt.)
    Seminarstandorte:
    Starttermine:
    (ortsabhängig)


    Unterlagen:zzgl.
    Verpflegung:zzgl.
    Prüfung/Zertifizierung:zzgl.
    Firmenschulung
    Eine Firmenschlung kann sowohl bei Ihnen vor Ort als auch in einem unserer Schulungszentren stattfinden.
    Dauer:4 Tage
    Preis ab:1.350,00 € zzgl. USt. pro Tag (1.606,50€ inkl. USt.)
    Schulungszentren:
    • Hamburg
    • Berlin
    • Frankfurt
    • München
    • Nürnberg
    • Düsseldorf
    • Wien
    Starttermin:individuelle Vereinbarung
    Unterlagen:zzgl.
    Verpflegung:zzgl.
    Prüfung/Zertifizierung:zzgl.

    Software

    python3, atom, vscode,



    Seminarsprache

    die Seminarsprache ist deutsch, sofern keine andere Angabe. Englisch ist in aller Regel machbar, andere Seminarsprachen sind möglich, fragen Sie bitte an.