• Aucun résultat trouvé

Concepteur Développeur d Applications

N/A
N/A
Protected

Academic year: 2022

Partager "Concepteur Développeur d Applications"

Copied!
12
0
0

Texte intégral

(1)

Concepteur Développeur d’Applications

Objectifs

Quels sont les objectifs de la formation ?

Le concepteur développeur d’applications conçoit et développe des services numériques

à destination des utilisateurs, en respectant les normes et standards de la profession et en

suivant l’état de l’art de la sécurité informa- tique à toutes les étapes.

La connaissance du métier du client, pour lequel il réalise l’application, peut être demandée. Il prend en compte les contraintes économiques et les exigences

de sécurité propres à son domaine d’intervention. Il peut être amené à intégrer les principes liés à la conception responsable

de services numériques.

Public

Quel public est concerné ?

Toute personne de niveau bac+2 souhaitant une reconversion dans les métiers du déve-

loppement

Tout demandeur d’emploi ayant une expérience de développeur

Toute personne souhaitant une montée en compétences dans le langage Java

Tout étudiant à bac+ 3 souhaitant rejoindre le haut

de la filière informatique.

TITRE PROFESSIONNEL DÉVELOPPEUR

D’APPLICATIONS

Environ 1010 h Au centre

800 h

En milieu professionnel 210 h

Niveau 5 (Européen) : Bac +3/4 Code CPF

288395 Code RNCP

31678 Code NSF

326t

Rome

M1805

(2)

Le métier de concepteur développeur d’applications

Le concepteur développeur d’applications conçoit et déve- loppe des services numériques à destination des utilisateurs en respectant les normes et standards reconnus par la profession et en suivant l’état de l’art de la sécurité informatique à toutes les étapes. La connaissance du métier du client pour lequel il réalise l’application peut être demandée. Il prend en compte les contraintes économiques, en termes de coûts et de délais, les exi- gences de sécurité propres à son domaine d’intervention. Il peut aussi être amené, à la demande du client, à intégrer les principes liés à la conception responsable de services numériques.

Pour concevoir et développer les interfaces utilisateurs de type desktop ou web, il élabore une maquette avec les en- chaînements d’écrans, qu’il fait valider à l’utilisateur. Il code les formulaires de saisie et de résultats, ainsi que les états, en programmant de manière sécurisée les événements utili- sateurs et en accédant aux données stockées dans une base.

Pour concevoir et mettre en œuvre la persistance des don- nées, il analyse un cahier des charges fonctionnel ou une demande utilisateur afin de modéliser et créer une base de données de type relationnel ou NoSQL (Not only SQL) ou d’adapter une base existante en l’optimisant ou en ajoutant des éléments et en veillant à ne pas introduire de vulnéra- bilité dans le système d’informations.

Pour concevoir et développer une application mul-

ti-couche répartie, il analyse la demande en s’appuyant sur une démarche permettant de construire les services nu- mériques en plusieurs couches correspondant aux couches présentation, métier et persistance.

Il s’adapte en continu aux évolutions technologiques et réglementaires de la filière Études et développement. Pour assurer cette veille, l’usage de la langue anglaise est souvent requis pour la lecture et la compréhension de documenta- tions techniques ainsi que pour assurer des échanges tech-

niques au moyen de textes courts avec des développeurs distants pouvant être de nationalités différentes.

Il agit avec autonomie et le cas échéant avec des respon- sabilités d’animation et de coordination, Ces projets font suite à des demandes formulées directement par un client, par une maîtrise d’ouvrage ou par l’intermédiaire d’un chef de projet.

Il peut travailler en tant que salarié d’une entreprise, pour un client de la société de services qui l’emploie, ou en tant qu’indépendant directement pour un client. Ses activités diffèrent selon la taille et l’organisation du projet.

Pour les projets de petite taille, il peut mener en autono- mie la conception et le développement de l’application.

Dans le cas de moyens et de grands projets, il travaille soit au sein d’une équipe hiérarchisée sous la responsabilité d’un chef de projet, soit en équipe pluridisciplinaire. Il applique et fait appliquer les normes de qualité de son entreprise ou de son prestataire de services. Il applique les recommandations de sécurité émises par l’Agence Natio- nale de la Sécurité des Systèmes d’Information (ANSSI).

Il fait preuve de capacités relationnelles avec des interlocu- teurs tels que la maîtrise d’ouvrage, les utilisateurs, le chef de projet, l’architecte logiciel, les testeurs, le responsable de la sécurité des systèmes d’information (RSSI) de son entreprise, de son client ou de son hébergeur, les Web desi- gner (UI et UX), les experts techniques et les autres déve- loppeurs, tout en conciliant des exigences contradictoires.

Assurant sa mission dans des entreprises et des contextes professionnels divers, il est mobile géographiquement et s’adapte aux nouveaux environnements de travail.

Pour faciliter le travail en équipe, il peut être amené à utili- ser des outils de travail collaboratif.

La formation

La formation est un cursus de développeur capable de générer du code informatique. Toutes les parties design web et création d’interface sont des matières qui appartiennent à d’autres cursus qu’il est préférable de suivre avant de se lancer dans cette formation de même que le Html/CSS, javascript et des notions de PHP doivent être acquises, par exemple dans le cursus DWWM. La formation CDA (Concepteur Développeur d’Applications) est de haut niveau, elle requiert beaucoup de travail personnel et repose sur des fondamentaux développement qui doivent être acquis.

Pré-requis

Point de HTML/CSS (utilisation de Bootstrap) dans cette

formation qui est avant tout une formation de développeur

à haut niveau, pas seulement dans le web mais également

pour développer tout type d’application dans des langages

structurés. La connaissance de PHP, de Javascript ainsi que

le développement d’applications mobiles sont nécessaires et

toutes les notions d’algorithmes seront exploitées.

(3)

Liste des activités types et des compétences professionnelles

1. 1. Concevoir et développer des composants d’interface utilisateur en intégrant les recommandations de sécurité

> Maquetter une application

> Développer une interface utilisa-

teur de type desktop

> Développer des composants d’ac-

cès aux données

> Développer la partie front-end

d’une interface utilisateur web

> Développer la partie back-end

d’une interface utilisateur web 2. Concevoir et développer la

persistance des données en intégrant les recommandations de sécurité

> Concevoir une base de données

> Mettre en place une base de

données

> Développer des composants dans

le langage d’une base de données

3. Concevoir et développer une ap- plication multi-couche répartie en intégrant les recommanda- tions de sécurité

> Collaborer à la gestion d’un projet

informatique et à l’organisation de l’environnement de dévelop- pement

> Concevoir une application

> Développer des composants

métier

> Construire une application orga-

nisée en couches

> Développer une application

mobile

> Préparer et exécuter les plans de

tests d’une application

> Préparer et exécuter le déploie-

ment d’une application

Ziggourat exerce une pédagogie en mode projet : les étudiants ont plusieurs temps pour réaliser en groupe un projet dont on leur fournit le cahier des charges. Ils doivent donc mettre en application l’ensemble des techniques apprises pendant la formation. Cette mise en situation est supervisée par un formateur mais les étudiants sont tout de même mis dans une situa- tion professionnelle d’autonomie.

En centre :

Vous disposerez d’un ordinateur avec l’ensemble des logiciels nécessaires au bon déroulé de la formation.

A distance :

Cette solution vous offre la possibilité de suivre la formation depuis le lieux de votre choix.

Vous travaillez, apprenez, évoluez dans les mêmes conditions qu’en présentiel, mais en classe virtuelle. Vous vous connectez à une interface qui vous permet de voir et d’en- tendre le formateur et les autres apprenants en classe. Vous communiquez et posez vos questions en temps réel, si besoin.

Ziggourat vous fournira un identifiant pour utiliser la suite Adobe ou tous autres logiciels nécessaires pendant la durée de la formation.

Il vous suffit d’avoir :

> Une bonne connexion internet

> Un casque avec micro

> Un endroit au calme pour profiter pleine-

ment des cours

> Un double écran n’est fortement recom-

mandé pour le confort

> Et des petits logiciels comme «capture

d’écran » « enregistreur vocale » bloc notes

Une fois le projet de formation validé par le financeur, vous recevez une convocation avec vos identifiants de connexion ainsi que le lien pour accéder à la session de formation.

Un portail formation est mis à votre disposi- tion, qui vous permet d’accéder en quelques clics à votre compte formation.

Moyens pédagogiques En centre ou à distance

Contenu de la formation

(4)

Ziggourat s’est fixé 2 objectifs concernant cette formation de développeur informatique :

Préparer les étudiants à l’entrée dans la vie professionnelle avec un excellent niveau de maîtrise

Préparer les étudiants à une réussite totale à l’examen du Titre Professionnel pratiqué depuis plus de 10 ans par les formateurs de Ziggourat

Les logiciels et technologies suivantes sont abordés dans la formation :

> Javascript

> Développement mobile hybride (Ionic, Angular, React native)

> PHP,

> Symfony

> Java (java hibernate ) java J2E spring, big data)

> Androïd Kotlin

Cette liste ne saurait être contractuelle Ziggourat, se réserve le droit de faire évoluer son parcours et les technologies enseignées, en fonction des évolutions du référentiel du ministère et du marché de l’emploi. 

Toute l’équipe des conseillers spéciali- sés de Ziggourat Formation est à votre service pour répondre à vos questions sur la définition de vos besoins en formation.

Chaque étape clef de votre projet de développement de vos compétences sera encadrée par un conseiller : de l’audit préformation, suivi de la réali- sation de vos objectifs professionnels, jusqu’au suivi post formation.

Notre premier métier est avant tout l’écoute et la compréhension de vos be- soins. Notre position stratégique nous

permet de faire la jonction entre les attentes des entreprises, des stagiaires et de l’évolution des métiers.

Notre expérience éprouvée en for- mation inter-entreprise et intra-en- treprise, notre pédagogie et nos innovations, le matériel de pointe, le recrutement qualitatif de nos consul- tants, notre réactivité, notre organisa- tion administrative sont autant d’élé- ments qui participent à notre capacité de créer un partenariat durable avec vous.

La formation se déroule en classe déportée, c’est-à-dire, que les étudiants travaillent dans l’environnement qui leur est le plus approprié (à domicile, au bureau, n’importe où en France et dans le monde). Avec une bonne connexion haut débit, ils accèdent à leur salle de cours en même temps que les autres étudiants et retrouvent leur formateur qui dispense son cours en visioconférence.

La plateforme LMS utilisée par Ziggourat permet toutes les interactions possibles : poser des questions, lever la main pour prendre la parole, partage des docu- ments, tableau blanc interactif, échange avec les autres participants, accessibilité aux supports de cours… Exactement comme dans une salle de cours en centre de formation.

Votre parcours sur mesure

Le dispositif de formation

Les parcours chez Ziggourat font près de 800 h de cours et environ 210 h de stage pratique en entreprise.

Chaque parcours est divisé en 2 périodes de 400 h ponctuées par une journée de tests

ou de révision ou d’ECF

(Évaluation en cours de formation)

En général

Chaque semaine de 5 jours est rythmée :

> 3 jours de cours

> 1 jour en travaux pratiques tutorés

(TP, complément de cours, Tuto etc)

> 1 jour de correction et finalisation du cours.

Chaque journée est généralement de 7h :

> 2h de cours théoriques

> 1 h de préparation à l’examen (exposé oral)

> 2h d’exercices sur le cours et 2h sur le

projet personnel ou sur des problématiques de développement spécifiques.

Dans l’ensemble chez Ziggourat, tous les ponts du calendrier sont pris en repos et tous les ans, il y a 1 semaine de vacances entre Noël et le jour de l’an, 1 semaine de vacances entre

le 1 et le 8 Mai (variable en fonction des années) et 1 semaine à

la mi-Août.

(5)

1 – Pour un candidat issu d’un parcours continu de formation A l’issue d’un parcours continu de formation correspondant au titre visé, le candidat est évalué par un jury composé de professionnels, sur la base des éléments suivants :

>

une mise en situation profession- nelle ou une présentation d’un projet réalisé en amont de la session, com- plétée par un entretien technique, un questionnaire professionnel, un questionnement à partir de produc- tion(s) si prévus au RC ;

>

l es résultats des évaluations passées en cours de formation ;

>

un dossier professionnel dans lequel le candidat a consigné les preuves de sa pratique professionnelle, complé- té d’annexes si prévues au RC ;

>

un entretien final avec le jury.

2 – Pour un candidat à la VAE Le candidat constitue un dossier de demande de validation des acquis de son expérience professionnelle justi- fiant, en tant que salarié ou bénévole, d’une expérience professionnelle d’un an en rapport avec le titre visé.

Il reçoit, de l’unité départemen- tale de la Direction Régionale des Entreprises, de la Concurrence, de la Consommation, du Travail et de l’Emploi (DIRECCTE), une notifica- tion de recevabilité lui permettant de s’inscrire à une session titre.

Lors de cette session, le candidat est évalué par un jury de professionnels, sur la base des éléments suivants :

>

une mise en situation profession- nelle ou une présentation d’un projet réalisé en amont de la session, com- plétée par un entretien technique, un questionnaire professionnel, un questionnement à partir de produc- tion(s) si prévus au RC ;

>

un dossier professionnel dans lequel le candidat a consigné les preuves de sa pratique professionnelle, complé- té d’annexes si prévues au RC ;

>

un entretien final avec le jury.

Pour ces deux catégories de candi- dats (§ 1 et 2 ci-dessus), le jury, au vu des éléments spécifiques à chaque parcours, décide ou non de l’attribu- tion du titre. En cas de non obtention du titre, le jury peut attribuer un

ou plusieurs certificat(s) de com- pétences professionnelles (CCP) composant le titre. Le candidat peut se présenter aux CCP manquants dans la limite de la durée de validité du titre.

Afin d’attribuer le titre, un entretien final se déroule en fin de session du dernier CCP, et au vu du livret de certification.

En cas de révision du titre, l’arrêté de spécialité fixe les correspondances entre les CCP de l’ancien titre et ceux du titre révisé. Le candidat se présente aux CCP manquants du nouveau titre.

En cas de clôture du titre, le candidat ayant antérieurement obtenu des CCP dispose d’un an à compter de la date de la fin de validité du titre pour obtenir le titre initialement visé.

3 – Pour un candidat issu d’un par- cours discontinu de formation ou ayant réussi partiellement le titre (formation ou VAE)

Le candidat issu d’un parcours composé de différentes périodes de formation ou ayant réussi partielle- ment le titre peut obtenir le titre par capitalisation des CCP constitutifs du titre.

Pour l’obtention de chaque CCP, le candidat est évalué par un jury com- posé de professionnels. L’évaluation est réalisée sur la base des éléments suivants :

>

une mise en situation profession- nelle ou une présentation d’un projet réalisé en amont de la session, com- plétée par un entretien technique, un questionnaire professionnel, un questionnement à partir de produc- tion(s) si prévus au RC ;

>

les résultats des évaluations passées en cours de formation pour les seuls candidats issus d’un parcours de formation ;

>

un dossier professionnel dans lequel le candidat a consigné les preuves de sa pratique professionnelle, complé- té d’annexes si prévues au RC.

Afin d’attribuer le titre, un entretien final se déroule en fin de session du dernier CCP, et au vu du livret de certification.

Modalite d’obtention du diplôme

Diplôme et

livret de certification

Un diplôme est attribué au candidat ayant obtenu le titre complet.

+

Un livret de certification est remis au candidat en réussite partielle.

Ces deux documents sont délivrés par le représentant territorial compétent du ministère du Travail.

Le système de certification du minis- tère du Travail est régi par les textes suivants :

>

Code de l’éducation notamment les articles L.335-5, L 335-6, R 335-7, R.335-13 et R.338-1 et suivants ;

>

Arrêté du 22 décembre 2015 relatif aux conditions de délivrance du titre profes- sionnel du ministère chargé de l’emploi ;

>

Arrêté du 21 juillet 2016 (JO du 28 juillet 2016 modifié par l’arrêté du 15 septembre 2016) portant règlement général des sessions d’examen pour l’obtention du titre professionnel du ministère chargé de l’emploi.

(6)

MISE A NIVEAU

HTML/ CSS

Bootstrap Révision et mise à niveau sur les techniques HTML/CSS incluant Bootstrap et un peu d’UX-UI design

Algorithme

Comment être développeur sans avoir des notions d’algorithme ?

Introduction

>

Qu’est-ce que l’algorithmique ?

>

L’algorithmique et la programmation

>

Avec quelles conventions écrit-on un algorithme ? Les variables

>

A quoi servent les variables ?

>

La déclaration et l’affectation

>

Les expressions et les opérateurs Les Tests

>

De quoi s’agit-il ?

>

La structure d’un test

>

Qu’est-ce qu’une condition ?

>

Les conditions composées

>

Les test imbriqués Les Boucles

>

De quoi s’agit-il ?

>

Les différents types de boucles

>

Les boucles imbriquées Les Tableaux

>

A quoi servent les tableaux ?

>

Les tableaux simples

>

Les tableaux dynamiques

>

Les tableaux multidimensionnels Le tri et la recherche

>

Le tri par sélection

>

Recherche à l’aide d’un flag

>

Le tri à bulles

La notion de complexité

>

La mesure asymptotique

>

Les différents types de notation

>

La complexité en temps et en mémoire Procédures et fonctions

>

La structure générale des fonctions

>

Les fonctions classiques

>

Les fonctions personnalisées Variables locales vs variables globales

>

Manipulation de fichiers

>

L’organisation des fichiers

>

Les types d’accès Les instructions

>

Les différents types de langage

>

Quel type de langage pour quel besoin ?

>

Les langages majeurs du marché

>

Avantages et inconvénients respectifs

>

Les langages de demain

(7)

MODULE PHP

PHP initiation PHP Bdd PHP avancé PHP Objet

Pendant environ 6 semaines, les stagiaires réalisent des projets WEB en connexion avec une base de données. Un dossier technique des applications est réalisé ainsi qu’un manuel utilisateur

>

Comprendre l’architecture d’un serveur Web avec un moteur PHP

>

Connaître la syntaxe du langage

>

Organisation des fichiers d’un site web développé en PHP

>

Utilisation d’un EDI (Outil de développement) pour développer en PHP

>

Comprendre les principales techniques Web et les interactions entre le serveur Web et les clients (navigateurs)

>

Utilisation de bibliothèques PHP existantes

>

Développement de ses propres bibliothèques

>

Configuration du moteur PHP pour le debuggage, la production et l’optimisation

>

PHP Objet et Framework PHP (Zend, Symfony ou CakePHP)

>

Comprendre les méthodes « classiques » de résolution de problème en PHP : Login, Template, validation de formulaire, .

..

Symfony

Symfony est un ensemble de composants PHP ainsi qu’un Framework MVC libre écrit en PHP. Il fournit des fonctionnalités modulables et adaptables qui permettent de faciliter et d’accélérer le

développement d’un site web.

Partie 1 : Présentation

>

Rappels : bibliothèques et frameworks

>

Architecture HTTP centrée, orientée objet et patron MVC

>

Résumé des évolutions entre Symfony 1 et Symfony 2

>

Pile technologique Symfony 2 Partie 2 : Configuration du serveur Web

>

Configuration du serveur

>

Présentation de la Web Debug Toolbar et du Profiler

>

Outils de développement Partie 3 : Projet

>

Application, bundles et arborescence des fichiers

>

Les environnements d’exécution Symfony 2

>

Configuration : YAML, XML, PHP et Annotations

>

Présentation de la console

>

Création d’un nouveau projet Symfony

>

Lancer un projet

>

Atelier : Créer un premier projet Symfony Partie 4 : Le contrôleur (Processus applicatif)

>

Contrôleurs et FrontController

>

Le système de routage

>

Communication entre les autres composants

>

Données contextuelles

>

Gestion des droits

Partie 5 : La vue (Rendu)

>

Communication entre vue et contrôleur

>

Génération d’url

>

Moteur de Template Twig

>

Extension, inclusion et surcharge de Template Partie 6 : Le modèle (Processus Métier)

>

Outils ORM, Doctrine2

>

Génération de la base

>

Classes entité

>

Gestion des relations et jointures

>

DQL et QueryBuilder

>

Présentation de Propel

>

Atelier : Préparer une base pour un projet Symfony Partie 7 : Formulaire

>

Form et FormBuilder

>

Composants de saisie avancés

>

Validation des données

>

Formulaires avancés (formulaire multiples, theming, CSRF...)

>

Atelier : contrôler les données saisies dans un formu- laire

Javascript JQuery

Apprendre la syntaxe du langage

>

Utilisation du langage en mode non intrusif : « Amélioration progressive » ou « Dégradation gracieuse »

>

Comprendre la notion de Fermeture (Closure) propre au Javascript

>

Manipulation du DOM

>

Développer des programmes utilisant AJAX

>

Utilisation des formats d’échange JSON et XML

>

Découverte de la bibliothèque jQuery

>

Création de plugins pour étendre jQuery

(8)

Node Js

Node Js MySQL Node Js MongoDB

Js est un environnement d’exécution JavaScript, c’est-à-dire qu’il permet d’exécuter du code Ja- vaScript en dehors des navigateurs, directement sur le serveur. Open-source et cross-platform, Node JS Windows donne la possibilité de construire entièrement une application web moderne

avec un seul et même langage

Architecture de Node.js

>

Asynchronisme

>

Programmation par callbacks

>

L’event loop

Modules et gestion de dépendances

>

L’approche modulaire

>

NPM et manipulation des modules

>

Le fichier package.json en détail

>

Modularisation de son code

>

Modules noyaux : console, process, os, fs, path et util

>

Publier un module sur NPM

Node et le Web : HTTP, Connect & Express

>

Périmètre du module HTTP

>

Connect et ses middlewares

>

Serveur Web avec Express

>

Générer un serveur Express generator

>

Router les requêtes

>

Gestion d’une requête et création d’une réponse

>

Utiliser un moteur de template

>

Ouverture à Passport et Hapi L’asynchrone en détails

>

Callback Hell & Pyramid of Doom

>

Le module async

>

Les promesses

>

Exemples d’enchaînement et de parallélisation

>

Gestion des erreurs

Communication temps réel

>

Intégration des WebSockets HTML5

>

Socket.io

>

Gestion des transports

>

Intégration côté client et côté serveur La gestion des streams

>

Description de Streams2

>

Buffers

>

Type de flux

>

Pipelining

>

Object mode

>

Les outils : through2, trumpet, JSONStream…

>

Gulp

Liaison avec la persistance des données

>

Approche via le driver ou un ORM

>

Intégration avec une base de données relationnelle

>

Modules d’abstraction SQL

>

Le module Sequelize

>

Intégration avec une base de données NoSQL

>

Le module Mongoose

Framework JS : REACT ou Vue.js ou Angular

Le choix d’un Framework est très personnel. Chaque formateur a sa préférence, c’est pourquoi les étu- diants verront l’un de ces 3 Framework

Dev mobile (React

native ou Ionic) Idem pour le dev mobile. Chaque formateur a sa préférence

(9)

TRONC COMMUN

UML

Comprendre la place de l’UML

>

Maîtriser les différents schémas du langage

>

Lire un schéma et le traduire en un programme informatique

>

Réaliser une spécification technique en utilisant UML

>

Comprendre la méthode associées à UML : Rational Unified Process

>

Manipuler des outils de génération automatique de code et de rétro-ingénierie

Méthodologie de production 35 heures

La bonne gestion d’un projet est une assurance qualité

Introduction

>

Qu’est-ce que l’agilité ? les limites des mé- thodes traditionnelles

>

Les 4 Valeurs et 12 principes définissant l’Agilité

>

Quand utiliser l’Agilité ? les arguments de choix entre une approche agile et traditionnelle

>

Quelques mythes sur SCRUM

>

Cadre et théorie SCRUM : les rôles, artéfacts et événements SCRUM

>

Les 3 piliers SCRUM : Transparence, Inspection et Adaptation

>

T our d’horizon de SCRUM : une cartographie des éléments intégrés à SCRUM - Backlogs, sprint, meetings, incréments

Organisation

>

Équipe SCRUM : limitée à 3 rôles, Product Owner, Scrum Master et l’équipe de dévelop- pement

>

Les autres parties prenantes : les liens entre clients, utilisateurs et l’équipe SCRUM

>

Product Owner : ses responsabilités, missions et compétences clés

>

Scrum Master : ses responsabilités, missions et compétences clés

>

Équipe de développements : ses responsabili- tés, missions et compétences clés

>

Revue de sprint : les règles à suivre pour une démonstration efficace

>

Rétrospective de sprint : comment animer la recherche d’amélioration par les techniques Lean

Les artéfacts

>

Incréments : l’évolution du produit, dé- montrable

>

Focus sur l’Incrément : Définition of Done, la définition d’un incrément terminé

>

Le Product Backlog : la liste des exigences

>

Les stories : la définition d’une exigence

>

Focus sur les stories : types, formalismes et caractéristiques et usage du TDD

>

Product BurnUp Chart : Tableau de suivi de la valeur du projet

>

Product BurnDown Chart : Tableau de suivi du reste à faire du projet

>

Sprint BurnDown Chart : Tableau de suivi du reste à faire d’un Sprint

>

Focus : quand arrêter un projet agile ? ou un pilotage par la valeur

Les événements

>

Nature des évènements : sprints, planification de sprint, daily scrum, revue et rétrospective

>

Sprint : la notion de Timebox issue d’XP, la mise en place d’un rythme de travail soutenable

>

Planifications : utilisation de l’outil visuel KANBAN

>

Daily SCRUM : débriefe quotidien de l’équipe pour l’équipe

>

Revue de sprint : la démonstration et l’incita- tion aux feedbacks utilisateur

>

Rétrospective de sprint : bilan du sprint et la recherche d’axe

Vie d’un Sprint

>

Scrum Meeting/Daily Scrum : les erreurs à éviter

>

KANBAN : le Work In Progress efficace, les erreurs à éviter

>

Product Backlog Grooming : la nécessité de revoir et nettoyer la backlog

(10)

MODULE PYTHON

PYTHON INIT PYTHON Avancé PYTHON Bdd PYTHON et le web

126 hueres

Bien commencer avec Python

Pourquoi utiliser Python ?

>

Exemples de projet en Python

>

Différences entre les versions de Python

>

Installation de Python (pré-requis, fichiers, arbores- cence détaillée)

>

Fonctionnement de l’interpréteur Python

>

Les apports de l’interpréteur interactif iPython

>

Un premier programme ...

>

Les bases de Python (types, syntaxe)

Organisation du code (modules, package, importations)

> Recommandations de nommage

> Les types de base (entier, chaîne, réel, ...)

> Erreurs classiques sur les types

> Boucles (for), opérateurs, tests (if/else)

> Définition et appel de fonction

> « Toute la syntaxe » dans un programme de synthèse

> La dimension objet dans Python

Définition et instanciation d’une classe

> Méthodes et propriétés d’une classe

> Exemples d’héritages

> Le mécanisme des exceptions

> Les classes incontournables

> Types de données évolués

Savoir choisir les bonnes structures de données

> Tuples, séquences et listes (append, extend, insert, ...)

> Fonctions utiles avec les listes (filter, map, reduce)

> Gestion des piles ou des files

> La puissance des dictionnaires (tableaux associatifs)

> Construire une liste sur la base d’une expression (compréhension)

> Compléments sur le langage Python

Générateurs et itérateurs

> Scripts exécutables

> Opérateurs associés aux listes

> Enchaînement de tests par rapport aux listes

> Comparer les séquences

Philosophie de Python avec les modules (standard, tiers, ...)

>

Tour d'horizon des modules standards

>

Module re (expressions rationnelles)

>

Modules os et sys (services du système d'exploitation)

>

Module csv (fichiers structurés par séparateur)

>

Comment trouver les modules ?

>

Installer des modules tiers (setuptools, EasyInstall)

>

Le dépôt central : Python Package index (Pypi)

>

Importer des modules

>

Mieux gérer son environnement avec Virtualenv

>

Accès aux données (fichiers, SGBD) Les objets de type File

>

La documentation

>

La spécification DB-API

>

Connexion à une base de données

>

Python et SQL

>

Introduction à sqlAlchemy

>

Python et le XML Principes

>

Parsing XML : les différentes techniques

>

La librairie elementtree

>

Python et SAX

>

Python et DOM (manipulation de l'arbre XML)

>

Maîtrisez votre environnement de développement Utiliser le plugin Eclipse pour Python (Pydev)

>

Rechercher des bugs avec PyChecker

>

Vérifier le respect des standards avec PyLint

>

Utiliser le guide de style PEP 8 (Python Enhancement Proposals)

>

Générer de la documentation

>

Comprendre l'intérêt et les outils de Tests (Doctests, Unit tests)

>

Programmation orientée par les tests

Présentation du TDD (Test Driven Developpement)

>

Doctest

>

Unittest

>

Amélioration des performances Profiling

>

Multithreading

>

Caching

>

Consommation mémoire

>

Travaux pratiques

(11)

MODULE PYTHON

DJANGO

Django est l’un des frameworks web les plus avancés au monde, alliant puissance et simplicité de mise en œuvre, en tirant notamment partie des qualités du langage Python.

35 heures

Les modèles avancés : Abstract

Proxy Mixins

Méthodes de requêtage : Aggregation, Lookups, Functions...

Personnalisation des querysets et managers Héritage de modèle, astuces et pièges

Personnalisation de l’interface d’administration Vues avancées

Les mixins de vues Les Middleware Formulaires avancés Écrire un champ personnalisé Écrire un widget personnalisé

Introduction au concept de Formset Templates avancés

Comprendre le workflow du moteur de template Quand et comment écrire un filtre personnalisé Quand et comment écrire un tag personnalisé Échappement et chaînes sécurisées

Context processor

Comment changer le moteur de template Gestion des utilisateurs avancée Modèle utilisateur remplaçable Groupes et permissions Créer ses propres permissions Localisation et internationalisation

Traduction et internationalisation des contenus Dans les fichiers Python

Dans les templates

Création, édition et compilation de fichiers de traductions Changement de langue dynamique

Localisation d’URL Gestion des timezones

Travaux pratique : ajouter une notion internationale à son application Django

Signaux

Le concept de signal

Présentation des principaux signaux natifs Quand et comment écrire un signal personnalisé Travaux pratique : faire une action à la sauvegarde d’un modèle

Optimisation des performances

Accès à la base de données et bonnes pratiques ORM Savoir quand les requêtes sont exécutées : select_related, prefetch_related, Prefetch

Gestion du cache (vues, templates, modèles)

Déceler les requêtes lentes et les optimiser : Django Debug Toolbar

Travaux pratique : optimiser une vue en utilisant le cache et les bonnes pratiques

Commandes d’administration Utilisation des commandes existantes

Création de commandes personnalisées pour Django Travaux pratique : créer une commande

Tests

Introduction aux tests de modèles, vues et formulaires Organisation et lancement des tests

Méthodes de tests avancés : factory_boy, Faker Travaux pratique : écrire ses premiers tests

Déploiement Logging

Différents moyens : Apache / mod_wsgi

gunicorn / uwsgi ,Circus / Chaussette WSGI Server, Nginx pour remplacer Apache

(12)

Les examens se déroulent chez Ziggourat 32 rue de Paradis 75010 Paris - 01 44 61 96 00 contact@ziggourat.com

www.ziggourat.com

La préparation et le nettoyage des données (jointure, filtre, transformation, traitement des données manquantes avec pandas, numpy et scipy)

La data visualisation

Présentation des principes de la data visualisation

Quelques graphiques simples avec matplotlib : scatter plot, box plot, histogrammes…

Présentation de visualisation plus avancées

Utilisation de Bokeh pour des visualisations interactives

Introduction au machine learning : présentation des principes de l’apprentissage automatique

Préparation des données avec la bibliothèque scikit-learn Cas pratiques en machine learning

La prévision en marketing

L’extraction d’informations pertinentes Les k-means pour la compression d’images

Les k-plus proches voisins pour la prévision de scores Le traitement de données textuelles

La classification d’image avec le deep learning

L’automatisation et la mise en production de traitements avec python (pipeline) Les bibliothèques pour le big data et le deep learning

pyspark keras

PYTHON et le BIG DATA 70 heures

PYTHON ANDROÏD KIVY

70 Heures

Kivy est une bibliothèque d’interface utilisateur graphique multi-plateformes à source ouverte, écrite en Python , qui permet le développement d’applications tactiles pour une large sélection de périphériques.

Dans cette formation les participants apprendront comment installer et déployer Kivy sur différentes plates- formes, personnaliser et manipuler des widgets, planifier, déclencher et réagir à des événements, modifier les graphiques avec des contacts multiples, redimensionner l’écran, créer des packages d’applications Androïd, et plus.

Lles participants seront en mesure de

Reliez le code Python et le langage Kivy .

Avoir une solide compréhension du fonctionnement de Kivy et de l’ Kivy de ses éléments les plus importants, tels que les widgets, les événements, les propriétés, les graphiques, etc.

Développez et déployez de manière transparente des applications Android en fonction de différentes exi- gences métier et de conception.

Références

Documents relatifs

Les élèves ne disposant pour l’instant que d’informations qualitatives sur l’énergie potentielle et l’énergie cinétique d’un système, le but de

marge brute – remise – prix d’achat net – prix de vente hors taxe – coût d’achat prix de vente toute taxe comprise – prix d’achat net – frais d’achat – prix

Les réactifs sont les ions Ag + et le cuivre métallique car les courbes correspondantes ont un coefficient directeur négatif.. Les produits sont le métal Ag et les ions Cu 2+ car

Un régulateur est dit à action proportionnelle (P) lorsque la valeur de sa tension de sortie est proportionnelle à l’erreur détectée .Quand l’erreur a été corrigée,

Une brique homogène ayant la forme d’un parallélépipède rectangle reste en équilibre sur un plan incliné faisant un angle de 30° avec l’horizontale... Quel est le nom

3- Ne cessant d’améliorer notre commande, nous avons constaté qu’un phénomène d’oscillation de l’eau autour d’un niveau provoque de nombreux démarrage et arrêt

Elle est d’autant plus importante que la masse de la charge est grande et s’oppose à la mise en mouvement. Elle est caractérisée par le moment d’inertie J, qui s’exprime en

Scénario pédagogique : après un rappel de 6h (réparties dans la semaine) sur les schémas physiques de données, sur les règles de gestion des données dans les principaux SGBD, et