Contactez un conseiller en formation pour étudier votre admissibilité.
Vous souhaitez concevoir des applications web en utilisant le langage de programmation Python et le framework Django ?
Cette formation vous permet d'acquérir les compétences nécessaires pour devenir Développeur d'applications avec Python, l'une des compétences les plus demandées aujourd’hui en programmation.
Vous serez ainsi chargé de créer des logiciels en utilisant le langage de programmation Python, mais vous serez également responsable de l’architecture des applications (back-end).
Conception et spécification d'une solution digitale
Analyser les besoins client et identifier les solutions adaptées
- La veille et l'innovation
- Les modes d'innovation
- Les entreprises et l'innovation
- La créativité moteur de l'innovation
- Panorama des techniques de créativité
- L'écosystème d'un projet digital
- Étude comparative, le benchmark des solutions existantes
- Définir la cible de la solution digitale
- Les principaux acteurs d’un projet digital : la maîtrise d’oeuvre
- Les principaux acteurs d’un projet digital : la maîtrise d’ouvrage
- Identifier les parties prenantes
- Etablir la gouvernance du projet, définir les rôles et les responsabilités
- Comprendre les enjeux et les retombées d’un projet
- Le cahier des charges : l'expression du besoin
Définir les options techniques de la solution digitale
- Les spécificités du projet digital
- Le recueil de l'analyse des besoins
- Définir la solution et le projet cibles
- Définir les objectifs et faire valider l’opportunité du projet
- Le choix technologique de la solution
- Le cahier des charges technique : détailler la mise en œuvre
- Le cahier des charges technique : du besoin à la solution technique
- Le cahier des charges technique : description fonctionnelle et technique
- La présentation et la validation de sa solution
- L'utilisation en interne du CDC
Découvrir Adobe XD
- Présentation générale
- Gestion des documents
- Les outils de dessin vectoriel
- Les textes
- Importation de fichiers et d'images
- Les différents effets graphiques
- Création d'éléments répétés
- Redimensionnement réactif
- Utilisation des composants
- Utilisation et gestion des Actifs
- Le mode Prototype
- Plug-ins
- Partage de designs et de prototypes
- Les différents types d'export
Utiliser l'éditeur de graphiques Figma
- Présentation de l'application
- L'application Figma
- Importation et exportation de fichiers, utilisation de modèles
- Conception avancée : menu déroulant, incrustation d'écran, personnaliser le design
- Créer un prototype, partager et exporter
Définir la méthodologie, la roadmap, les ressources et les livrables
- Introduction à l'organisation d'un projet digital
- Méthodologie pour piloter un projet digital : une démarche itérative
- Le rôle du chef de projet digital
- Les modes de gestion de projet dits "classiques"
- Les méthodologies agiles
- Les processus et les disciplines de la gestion de projet selon le PMBOK
- Les acteurs et les ressources du projet
- La première découpe du projet
- La construction du planning
- La gestion du budget du projet
- La gestion des risques
- La communication autour du projet
Concevoir une solution digitale
- La réalisation d'une étude d'opportunité
- Le rôle de la note de cadrage
- L'étude de faisabilité
- L'analyse des risques
- L'analyse fonctionnelle
- Proposer une solution optimale en termes de coût
- Proposer une solution optimale en termes de délais de production
- Proposer une solution optimale en termes de performance attendue
- Proposer une solution optimale en termes de pérennité
- L'utilité du suivi de la performance
- Les indicateurs de suivi selon les objectifs
- La construction d'un tableau de bord opérationnel
Découvrir les méthodologies de gestion de projets agiles
- Les méthodologies agiles
- Introduction à la méthode Scrum
- Comprendre Kanban
- Présentation du diagramme de Gantt
Concevoir l’architecture logicielle de la solution
- L’architecture en appels et retours
- L’architecture en couches
- L’architecture centrée sur les données
- L’architecture en flot de données
- L’architecture orientée objets
- L’architecture orientée agents
Comprendre la spécification fonctionnelle
- Comprendre les objectifs de la spécification fonctionnelle
- Comment rédiger une spécification fonctionnelle
Elaborer un cahier des charges fonctionnel
- Le cahier des charges fonctionnel : le contexte du projet et ses enjeux
- Le cahier des charges fonctionnel : la portée de la solution
- Le cahier des charges fonctionnel : les contraintes
- Le cahier des charges fonctionnel : les parcours utilisateurs
- Le cahier des charges fonctionnel : les fonctionnalités clés et les spécifications
- Le cahier des charges fonctionnel : l'approche créative
- Le cahier des charges fonctionnel : l'organisation du projet
Définir les objectifs SMART de sa solution digitale
- Le recueil et l'analyse des besoins
- La validation de la solution
- Le droit du web
- Définition du droit numérique
- Les responsabilités des intervenants
- Le droit pénal de l'informatique
- L'informatique sur le lieu de travail
- La législation comparée
- L'informatique et droit public
- Le cadre juridique du e-commerce
- Les textes de référence
Gestion, pilotage et testing d'une Solution Digitale
Manager et piloter les tâches avec ses équipes projet grâce à TRELLO
- L'application Trello
- Création du compte
- Découverte de l'interface
- Découvrir le contenu d'un projet
- Le travail collaboratif : les membres
- Le travail collaboratif : les équipes
- Les tableaux
- Les listes
- Les cartes
- Les checklists
- Les utilitaires
- Les Power-ups
Manager et piloter les tâches avec ses équipes projet grâce à JIRA
- Découvrir JIRA
- Apprendre JIRA
- Les méthodologies agiles avec JIRA
- JIRA pour les équipes
- JIRA pour les administrateurs
- Utiliser JIRA avec Gitlab
Gérer son projet avec GanttProject
- Apprendre à utiliser Gantt project
- Cadrer le projet
- Construire le plan de projet
- Création des dépendances
- Gérer les affichages
- Le réseau du projet
- Gérer les ressources
- Le suivi de projet
- Les outils d'impression et d'exportation
- Application - Gestion de projet - GanttProject
Comprendre la modélisation UML
- Introduction à la modélisation conceptuelle de données avec UML
- Les diagrammes de classes
- Les diagrammes d'objets
- Les diagrammes de composants
- Les diagrammes de déploiement
- Les diagrammes des paquets
- Les diagrammes de structure composite
- Les diagrammes de profils
- Diagrammes de cas d'utilisation UML (UML use case diagram)
- Les diagrammes états-transitions
- Les diagrammes d'activité
- Les diagrammes de séquence
- Les diagrammes de communication
- Les diagrammes global d'interaction
- Les diagrammes de temps
Utiliser l'outil Agile : Scrum
- Comprendre les différents cycles de vie des projets en méthode Agile
- Définir le cadre de la solution digitale
- La préparation du backlog
- La notion de travail en sprint
- Les retours et les feedbacks
- La réitération en fonction des feedbacks
- Le rôle du Scrum Master
- Le rôle du product owner
Utiliser l'outil Agile : Kanban
- L'application Smartsheet
- La plateforme Monday
Tester son application Web
- L’examen des exigences
- Les tests d’usabilité
- Les tests unitaires
- Les tests d’intégration
- Les tests des composants
- Les tests de bout en bout (End to End)
- Les tests d’acceptation
- Les tests de régression
- Intégration continue
- Le déploiement continu (CD)
Réaliser des tests fonctionnels
- Les notions de test unitaire et test fonctionnel
- Les tests unitaires avec PHPUnit
- Les tests fonctionnels avec WebTestCase et Panther
- Les tests unitaires avec les mocks
- Le Test Driven Development
- Les services
- L'Ajax avec Axios et Symfony
- Tests d'intégration et recette fonctionnelle
- Mesurer son application
- A/B testing
Proposer des solutions suite à un audit
- La résolution d'une situation critique pour la survie du projet
- Le suivi des indicateurs qualité et amélioration continue
- La conception de la solution grâce au Design Thinking
- Design Thinking : La phase d’empathie, la compréhension du besoin
- Design Thinking : Définir la problématique
- Design Thinking : La phase d’idéation
- Design Thinking : La phase de prototypage de la solution
- Design thinking : La phase de test de la solution
Développement d’une solution digitale avec Python
Piloter la production de contenus digitaux
- Comment et pourquoi se former à la production de contenus digitaux ?
- Introduction à la production de contenus digitaux
- La création de contenu digital en adéquation avec sa cible
- L'orientation artistique et le brief créatif
- La gestion de la production de contenus digitaux
- La mise en place opérationnelle de sa stratégie de production de contenus
- La proposition de production de contenu
- Application - Piloter la production de contenus digitaux
Créer un site web avec HTML, CSS et le Framework Bootstrap
- Introduction HTML et CSS
- Syntaxe générale de HTML
- L'organisation du texte
- Un langage hypertexte
- Le multimédia en HTML
- Introduction au CSS
- CSS3 : Le stylage du texte
- La structuration logique en HTML5 et le modèle de boîtes en CSS3
- Les sélecteurs CSS
- La mise en page avec CSS
- La création de tableaux
- La création de formulaires
- Layout avec CSS Grid
- Les effets avancés de CSS
- Utiliser des documentations CSS
- Le responsive design
- Valider la qualité de son site
- L'installation et la prise en main du framework Bootstrap : Hello world
- La grille bootstrap
- Les éléments bootstrap
- Les composants bootstrap
- Ouverture vers d'autres framework CSS
- SASS
- Le référencement des sites Web
- Déployer son site sur le Web
Dynamiser vos sites web avec JavaScript
- La programmation événementielle en JavaScript
- Le formulaire HTML et JavaScript
- Initiation aux objets et aux classes
- L'API DOM
- Présentation de la librairie JQuery
- Les bases de JQuery
- La programmation AJAX
- Les promesses et l'API Fetch
- L'utilisation de JSON
- L'API Canvas en JavaScript
Développer des sites web dynamiques avec PHP
- PHP et HTML (sorties)
- Les types de données, les variables et les constantes
- Les opérateurs de comparaison et les expressions booléennes
- Les fonctions
- Les tableaux
- Les conditions
- Les boucles
- Créer ses propres fonctions
- L'organisation des fichiers PHP
- Les superglobales Get, Post et Files
- Les superglobales Server, Env et Session
- La sécurité
- La manipulation des dates
- La manipulation des fichiers en PHP
- Les expressions régulières
- Utiliser la documentation PHP et Standard de codage PHP
- La préparation de l'environnement de travail
- La programmation Orientée Objet : concepts de base
- La programmation Orientée Objet : concepts avancés
- La gestion des erreurs
- La programmation Orientée Objet : Design Patterns
- La programmation Orientée Objet : L’encapsulation et la visibilité
- Le modèle MVC
Créer et administrer une base de données relationnelle
- Introduction générale aux bases de données, notion de SGBDR
- Modèle conceptuel de données et modèle logique de données
- Les diagrammes fonctionnels
- Le diagramme de classe
- Introduction au passage UML-Relationnel
- Création et alimentation de bases de données SQL
- L'interrogation de bases de données SQL
- Découvrir un autre SGBDR : PostgreSQL
- Connexion à la base de données en PHP
- PHP/PDO : accès en lecture/écriture
- Les requetes SQL
- Les fonctions SQL
- Les jointures SQL
- Gérer les accès des utilisateurs au niveau PHP et BD
- Découverte d'un ORM PHP
- Projet : Créer et administrer une base de données
- Introduction NOSQL
- Introduction à MongoDB
Créer et administrer une base de données non relationnelle
- Introduction NOSQL
- Introduction à MongoDB
Développer une application web avec Python
- L'interpréteur de commande Python
- Environnements de travail
- Variables et types de données
- Portée des variables et notion de référence
- Conditions en Python
- Boucles en Python
- Les structures de données en Python
- Structure d'un programme - fonctions
- Améliorer la qualité du code
- Structure d'un programme - modules
- Améliorer la qualité du code - les tests unitaires
- Notions théoriques de classe
- Constructeur et mot-clé self
- Les méthodes spéciales
- L'héritage
- La notion de décorateur en Python
- Chaîne de caractères en Python
- La gestion du temps en Python
- Mathématiques en Python
- Plus loin en mathématiques
- Visualiser des données sous formes de graphiques
- Gestion des fichiers en Python
- Requêtes HTTP
- Les bases de données relationnelles et Python
- Notion d'ORM (object-relational mapping)
- Cadre théorique de Flask
- Le moteur de template Jinja
- Déploiement en ligne du site Flask
- Cadre théorique de Django
- Les modèles en Django
- Les vues en Django
- API REST en Python
- La data visualisation avec Python
- La présentation des données et des librairies
- La librairie numpy
- La librairie pandas : première approche
- Aller plus loin avec la librairie pandas
- La librairie matplotlib
- La librairie Seaborn
- La librairie Bokeh
- La data visualisation avancée avec Streamlit
- Des présentations de résultats impactantes
Développer une application mobile avec React Native
- Le développement Mobile
- Introduction à React Native : l'outil Expo
- Les bases de React Native
- Les composants React Native
- Les props et les states
- Style et mise en page avec Flexbox
- Du code différent en fonction de la plateforme
- L'utilisation de Redux
- Les extensions de Redux
- L'organisation d'une application React Native
- La navigation avec React Native
- Les différents types de navigators
- L'animation avec React Native
- Installer les émulateurs
- Utiliser une base données locale : SQLITE
- Les APIs React Native et modules natifs
- Le debugging
- Le déploiement d'une application sur les stores
- Créer une application React Native sans Expo
- Projet - développer une application mobile avec React Native
Concevoir une API
- Présentation des API
- Concevoir une API
- Gérer les accès à une API
Utiliser des API
- Les API d'authentification (OAuth, ..)
- Les API Google / AWS
- Les API de paiement
Utiliser un outil de gestion de version de code source
- Introduction à la ligne de commande
- Introduction à Git et Github
- Les bases
- Les interactions avec le dépôt distant
- Naviguer dans l'historique
- La gestion des branches
- Les branches avec Git - Rebaser
- Les bonnes pratiques
- Projet - Utiliser Git et Github pour gérer son code source
- Introduction à Gitlab
Maintenir et documenter son projet
- La documentation de l'architecture et du code
- Améliorer sa solution
- La documentation pour l'utilisateur
- Le pentest
- Gestion de la dette technique