Choisissez votre langue
Formation Python Flask
Plus de 2 millions d'apprenants dans le monde

Formation Python Flask

4

Maîtrisez Flask de A à Z et construisez de véritables applications web Python qui sont sécurisées, évolutives et prêtes pour la production. Ce cours couvre tout, du routage et des templates aux bases de données, à l'authentification, aux API REST et au déploiement. Vous acquerrez les compétences pratiques que les employeurs et les clients recherchent réellement chez un développeur Python back-end.

Dedika pour entreprises

Ce que vous allez apprendre:

Vous apprendrez à configurer un environnement de développement Flask professionnel et à structurer des projets pour une maintenabilité à long terme. Le cours couvre le routage dynamique, le templating Jinja2, la validation de formulaires et la gestion de bases de données avec SQLAlchemy. Vous implémenterez l'authentification des utilisateurs avec Flask-Login, construirez des API RESTful avec une sécurité basée sur des jetons d'authentification, et rédigerez des tests automatisés avec pytest. Les sujets avancés incluent les tâches en arrière-plan avec Celery, les fonctionnalités en temps réel avec Flask-SocketIO et la conteneurisation avec Docker. À la fin, vous saurez configurer la journalisation, appliquer les meilleures pratiques de sécurité et déployer une application Flask entièrement fonctionnelle sur un serveur en direct.

Comment vous étudiez de façon pratique Formation Python Flask

Comment vous pratiquez Formation Python Flask

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 40 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Fondations Flask et Configuration de l'Environnement

  • Leçon 1 • Environnement Python et Environnements Virtuels

    Configurez Python, pip et des environnements virtuels isolés pour les projets Flask. Une isolation adéquate empêche les conflits de dépendances entre les projets.

  • Leçon 2 • Gestion de la Configuration

    Chargez et basculez entre les configurations de développement, de test et de production. Une configuration externalisée garde les secrets hors du code source.

  • Leçon 3 • Votre Première Application Flask

    Écrivez et exécutez une application Flask minimale pour comprendre le pattern de fabrique d'application. Les apprenants tracent une requête du navigateur à la fonction Python et retour.

  • Leçon 4 • Installation et Configuration de Flask

    Installez Flask et vérifiez l'installation avec une application minimale. Cela établit la chaîne d'outils de base pour tous les chapitres suivants.

  • Leçon 5 • Structure d'un Projet Flask

    Organisez les fichiers et dossiers selon les conventions Flask pour des projets évolutifs. Une bonne structure réduit les frictions à mesure que l'application grandit.

Chapitre 2Voir les détails

Routage, Vues et Construction d'URL

  • Leçon 1 • Bases du Routage et Méthodes HTTP

    Définissez des routes avec le décorateur @app.route et limitez-les à des méthodes HTTP spécifiques. Cela connecte les motifs d'URL à la logique des vues.

  • Leçon 2 • Blueprints pour l'Organisation des Routes

    Regroupez les routes connexes dans des Blueprints pour modulariser les grandes applications. Les Blueprints sont le fondement d'une architecture Flask évolutive.

  • Leçon 3 • Construction d'URL avec url_for

    Générez des URL à partir de noms de points de terminaison au lieu de coder en dur des chaînes de caractères. url_for maintient les liens cohérents lorsque les routes changent.

  • Leçon 4 • Paramètres d'URL Dynamiques

    Capturez des segments de variable dans les URL et convertissez-les en valeurs Python typées. Les routes dynamiques permettent une conception d'URL basée sur les ressources.

  • Leçon 5 • Redirections et Gestionnaires d'Erreurs

    Émettez des redirections HTTP et enregistrez des pages d'erreur personnalisées pour les réponses 404 et 500. Une gestion appropriée des erreurs améliore l'expérience utilisateur et la capacité de débogage.

Chapitre 3Voir les détails

Templates et le Moteur Jinja2

  • Leçon 1 • Affichage des Templates avec render_template

    Transmettez des données Python aux fichiers HTML en utilisant render_template et la syntaxe Jinja2. Les templates séparent la présentation de la logique métier.

  • Leçon 2 • Héritage de Templates et Blocs

    Définissez un template de base pour la mise en page et étendez-le dans les templates enfants à l'aide de balises de blocs. L'héritage impose une structure cohérente à l'échelle du site.

  • Leçon 3 • Structures de Contrôle Jinja2

    Utilisez des blocs if/else et des boucles for dans les templates pour générer du HTML conditionnel et répété. Les structures de contrôle éliminent le balisage redondant.

  • Leçon 4 • Macros, Includes et Composants Réutilisables

    Encapsulez des fragments HTML répétés sous forme de macros ou de parties incluses. Les composants réutilisables réduisent la duplication sur plusieurs pages.

  • Leçon 5 • Filtres et Tests de Template

    Transformez les valeurs de sortie avec des filtres intégrés et écrivez des filtres personnalisés pour un formatage spécifique au projet. Les filtres maintiennent la logique en dehors des templates.

Chapitre 4Voir les détails

Formulaires, Validation et Saisie Utilisateur

  • Leçon 1 • Validateurs et Messages d'Erreur

    Appliquez des validateurs intégrés tels que DataRequired et Email, et affichez les messages d'erreur dans les templates. Les validateurs garantissent l'intégrité des données avant le traitement.

  • Leçon 2 • Téléchargements de Fichiers

    Acceptez les téléchargements de fichiers, validez les types de fichiers et enregistrez les fichiers de manière sécurisée sur le serveur. Une gestion sécurisée des téléchargements empêche le parcours de répertoire et l'exécution de fichiers malveillants.

  • Leçon 3 • Protection CSRF

    Activez et vérifiez les jetons CSRF dans chaque soumission de formulaire pour empêcher la falsification de requête intersite. La protection CSRF est obligatoire pour tout formulaire modifiant l'état.

  • Leçon 4 • Configuration de Flask-WTF et WTForms

    Installez Flask-WTF, configurez une clé secrète et définissez des classes de formulaire avec des champs typés. Les classes de formulaire centralisent les règles de validation et les définitions de champs.

  • Leçon 5 • Gestion des Données Brutes de Formulaire

    Lisez les valeurs de formulaire soumises depuis request.form et request.args sans bibliothèque de formulaires. Comprendre l'accès brut clarifie ce que les outils de plus haut niveau abstraient.

Chapitre 5Voir les détails

Bases de Données avec Flask-SQLAlchemy

  • Leçon 1 • Définition des Modèles et des Relations

    Créez des classes de modèle qui correspondent aux tables de la base de données et définissez des relations un-à-plusieurs et plusieurs-à-plusieurs. Les modèles sont la définition du schéma pour l'application.

  • Leçon 2 • Requêtes Avancées et Pagination

    Écrivez des requêtes complexes avec des jointures, des agrégations et un ordonnancement, puis paginez les grands ensembles de résultats. Des requêtes efficaces réduisent la charge de la base de données et améliorent les temps de réponse.

  • Leçon 3 • Migrations de Base de Données avec Flask-Migrate

    Utilisez Flask-Migrate pour générer et appliquer des migrations de schéma sans perte de données. Les migrations permettent une évolution sécurisée et versionnée du schéma en production.

  • Leçon 4 • Configuration de Flask-SQLAlchemy

    Installez Flask-SQLAlchemy, configurez l'URI de la base de données et initialisez l'objet db. L'objet db est l'interface centrale pour toutes les opérations de base de données.

  • Leçon 5 • Opérations CRUD

    Insérez, interrogez, mettez à jour et supprimez des enregistrements à l'aide de l'API de session SQLAlchemy. Les opérations CRUD sont les éléments constitutifs de toute fonctionnalité axée sur les données.

Chapitre 6Voir les détails

Authentification et Gestion des Sessions

  • Leçon 1 • Configuration de Flask-Login et Fonction de Chargement d'Utilisateur

    Installez Flask-Login, configurez le LoginManager et implémentez le rappel user_loader. Le user_loader reconstruit l'utilisateur actuel à partir de la session à chaque requête.

  • Leçon 2 • Hachage de Mot de Passe et Modèle Utilisateur

    Hachez les mots de passe avec Werkzeug et stockez uniquement les valeurs hachées dans la base de données. Stocker les mots de passe en texte clair est une vulnérabilité de sécurité critique.

  • Leçon 3 • Protection des Routes avec login_required

    Restreignez l'accès aux vues à l'aide du décorateur @login_required et redirigez les utilisateurs non authentifiés. La protection des routes applique l'autorisation au niveau de la vue.

  • Leçon 4 • Contrôle d'Accès Basé sur les Rôles

    Attribuez des rôles aux utilisateurs et restreignez les vues en fonction de l'appartenance au rôle. Le RBAC sépare ce que les différents types d'utilisateurs sont autorisés à faire.

  • Leçon 5 • Vues d'Enregistrement et de Connexion

    Construisez des formulaires d'enregistrement et de connexion qui créent des comptes et authentifient les utilisateurs. Ces vues sont les points d'entrée de la partie authentifiée de l'application.

Chapitre 7Voir les détails

Construction d'API RESTful avec Flask

  • Leçon 1 • Principes REST et Conception d'API

    Appliquez les contraintes REST pour concevoir des schémas d'URL orientés ressources et choisir les verbes HTTP corrects. Une bonne conception d'API réduit la complexité côté client.

  • Leçon 2 • Renvoi de Réponses JSON

    Sérialisez les objets Python en JSON à l'aide de jsonify et définissez les en-têtes de réponse appropriés. Une sérialisation cohérente garantit l'interopérabilité avec les clients de l'API.

  • Leçon 3 • Gestion des Erreurs d'API et Documentation

    Renvoyez des réponses d'erreur JSON structurées et documentez les points de terminaison avec des docstrings ou des spécifications OpenAPI. Des messages d'erreur clairs et une documentation réduisent les frictions d'intégration.

  • Leçon 4 • Authentification d'API avec Jetons

    Protégez les points de terminaison de l'API à l'aide d'une authentification basée sur des jetons avec Flask-HTTPAuth ou JWT. L'authentification par jeton sans état est la norme pour les API REST.

  • Leçon 5 • Analyse des Requêtes JSON Entrantes

    Lisez et validez les charges utiles JSON à partir de request.get_json() et gérez les entrées mal formées avec élégance. La validation des entrées empêche le traitement de données corrompues ou malveillantes.

Chapitre 8Voir les détails

Tests, Déploiement et Préparation à la Production

  • Leçon 1 • Variables d'Environnement et Gestion des Secrets

    Injectez des secrets et des configurations via des variables d'environnement et utilisez un fichier .env pour le développement local. Externaliser les secrets empêche les identifiants d'entrer dans la gestion de versions.

  • Leçon 2 • Journalisation, Surveillance et Suivi des Erreurs

    Configurez la journalisation Python, la sortie de journal structurée et intégrez un service de suivi des erreurs. L'observabilité permet un diagnostic rapide des problèmes de production.

  • Leçon 3 • Serveurs WSGI et Proxys Inverses

    Remplacez le serveur de développement par Gunicorn et placez Nginx devant comme proxy inverse. Les serveurs WSGI de production gèrent la concurrence que le serveur de développement ne peut pas.

  • Leçon 4 • Fixtures de Test et Couverture

    Utilisez des fixtures pytest pour configurer et démonter l'état de test, et mesurez la couverture de code avec pytest-cov. Les métriques de couverture révèlent les chemins de code non testés.

  • Leçon 5 • Tests Unitaires et d'Intégration avec pytest

    Écrivez des tests basés sur pytest pour les fonctions de vue, les modèles et la validation de formulaire à l'aide du client de test Flask. Les tests automatisés détectent les régressions avant le déploiement.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Scripteur Python : prêt à transformer du code en véritables applications web.

  • Personne en reconversion professionnelle : passer d'un travail non technique au développement web back-end.

  • Data analyst : souhaite exposer des modèles et des résultats à travers une interface web.

  • Développeur freelance : a besoin d'une pile Python fiable pour les projets web de ses clients.

  • Étudiant en CS : cherchant à faire le pont entre les connaissances académiques en Python et les frameworks pratiques.

  • Développeur junior : construisant des projets de portfolio pour décrocher un premier poste de développement backend.

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable au Cameroun ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF