
Formation Python Flask
Maîtrisez Flask de A à Z et créez de vraies applications Web Python 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 backend.
Ce que vous allez apprendre:
Vous apprendrez à configurer un environnement de développement professionnel pour Flask 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 mettrez en œuvre l'authentification des utilisateurs avec Flask-Login, créerez des API REST avec sécurité basée sur des jetons et rédigerez des tests automatisés avec pytest. Les sujets avancés comprennent 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 entreprises, le cours inclut des exercices et des exemples adaptés à votre propre entreprise et à ses besoins spécifiques.
Contenu du cours
8 Chapitres • 40 LeçonsDurée entre 4 et 360 heures (vous décidez)
Chapitre 1MasquerCacher les détailsVoir les détailsFondations de Flask et configuration de l'environnement
Fondations de 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 évite les conflits de dépendances entre les projets.
Leçon 2 • Gestion de la configuration
Chargez et alternez 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 modèle d'usine d'application. Les étudiants tracent une requête du navigateur vers une 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 2MasquerCacher les détailsVoir les détailsRoutage, vues et construction d'URL
Routage, vues et construction d'URL
Leçon 1 • Principes de base des routes et méthodes HTTP
Définissez des routes avec le décorateur @app.route et restreignez-les à des méthodes HTTP spécifiques. Cela relie les motifs d'URL à la logique des vues.
Leçon 2 • Plans pour l'organisation des routes
Regroupez les routes connexes dans des plans pour modulariser les grandes applications. Les plans 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 plutôt que de coder en dur des chaînes. url_for maintient la cohérence des liens lorsque les routes changent.
Leçon 4 • Paramètres d'URL dynamiques
Capturez des segments variables 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 3MasquerCacher les détailsVoir les détailsModèles et moteur Jinja2
Modèles et moteur Jinja2
Leçon 1 • Rendu de modèles avec render_template
Passez des données Python à des fichiers HTML à l'aide de render_template et de la syntaxe Jinja2. Les modèles séparent la présentation de la logique métier.
Leçon 2 • Héritage de modèles et blocs
Définissez un modèle de base et étendez-le dans les modèles enfants à l'aide de balises de bloc. L'héritage impose une structure cohérente sur l'ensemble du site.
Leçon 3 • Structures de contrôle Jinja2
Utilisez des blocs if/else et des boucles for dans les modèles pour générer du HTML conditionnel et répété. Les structures de contrôle éliminent le balisage redondant.
Leçon 4 • Macros, inclusions et composants réutilisables
Encapsulez des fragments HTML répétés sous forme de macros ou de partiels inclus. Les composants réutilisables réduisent la duplication sur plusieurs pages.
Leçon 5 • Filtres et tests de modèles
Transformez les valeurs de sortie avec des filtres intégrés et écrivez des filtres personnalisés pour le formatage propre au projet. Les filtres gardent la logique hors des modèles.
Chapitre 4MasquerCacher les détailsVoir les détailsFormulaires, validation et entrée utilisateur
Formulaires, validation et entrée utilisateur
Leçon 1 • Validateurs et messages d'erreur
Appliquez des validateurs intégrés comme DataRequired et Email, et affichez les messages d'erreur dans les modèles. Les validateurs imposent 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épertoires 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 à partir de request.form et request.args sans bibliothèque de formulaire. Comprendre l'accès brut clarifie ce que les outils de haut niveau abstraient.
Chapitre 5MasquerCacher les détailsVoir les détailsBases de données avec Flask-SQLAlchemy
Bases de données avec Flask-SQLAlchemy
Leçon 1 • Définition de modèles et de 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 de 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 chaque fonctionnalité axée sur les données.
Chapitre 6MasquerCacher les détailsVoir les détailsAuthentification et gestion des sessions
Authentification et gestion des sessions
Leçon 1 • Configuration de Flask-Login et chargeur d'utilisateur
Installez Flask-Login, configurez 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 mots 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 clair constitue 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 impose 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 à un rôle. Le RBAC sépare ce que les différents types d'utilisateurs sont autorisés à faire.
Leçon 5 • Vues d'inscription et de connexion
Construisez des formulaires d'inscription 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 7MasquerCacher les détailsVoir les détailsConstruction d'API RESTful avec Flask
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 assure 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 et une documentation clairs réduisent les frictions d'intégration.
Leçon 4 • Authentification d'API avec des jetons
Protégez les points de terminaison d'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 8MasquerCacher les détailsVoir les détailsTests, déploiement et préparation à la production
Tests, déploiement et préparation à la production
Leçon 1 • Variables d'environnement et gestion des secrets
Injectez des secrets et une configuration via des variables d'environnement et utilisez un fichier .env pour le développement local. L'externalisation des 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 en tant que proxy inverse. Les serveurs WSGI de production gèrent la concurrence que le serveur de développement ne peut pas gérer.
Leçon 4 • Accessoires de test et couverture
Utilisez des accessoires pytest pour configurer et démonter l'état des tests, 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.
Votre certificat valide de réussite
Ce cours est pour vous :
Scénariste Python : prêt à transformer du code en véritables applications Web.
Changement de carrière : passer d’un emploi non technique au développement web en backend.
Analyste de données : souhaite exposer des modèles et des résultats par l'intermédiaire d'une interface Web.
Développeur ou développeuse pigiste : a besoin d’une pile Python fiable pour les projets Web de ses clients.
Étudiant ou étudiante en CS : cherche à faire le pont entre ses connaissances académiques en Python et les frameworks pratiques.
Développeur junior : réaliser des projets de portfolio pour décrocher un premier poste en développement backend.
Ce que nos apprenants disent
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 à changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...

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.

J'aime le contenu et la façon dont il est présenté ainsi que la transcription des vidéos, ce qui accélère le processus !

La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.

Formations principales
FAQ
Qui est Dedika?
Le certificat est-il valable au Canada ?
Les cours sont-ils gratuits?
Quelle est la charge de travail des 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 fonctionne?
Cours PDF




















