Programme d'enseignement

CHAPITRE 1 : DEVELOPPER UNE APPLICATION CLIENT-SERVEUR

UX DESIGN

Le cours d’UX Design vise à acquérir les principes clés d’une approche de conception d’interface centrée sur l’utilisateur.

Les grandes lignes :

  • Comprendre l'UX-Design : principes, méthodes et bonnes pratiques,
  • Différences entre UI-Design et UX-Design,
  • La notion de « usability »,
  • Le taux de rétention et comment accrocher l'utilisateur,
  • Se centrer sur l'utilisateur : construire et mesurer l’expérience utilisateur,
  • La notion de persona,
  • Comprendre le principe d’affordance,
  • Le Design Thinking en UX-Design,
  • Le prototypage et les wireframes.

PHP, MySQLi, ALGORITHMIE, MERISE, POO, MVC

Il s’agit dans ce cours de développer la maîtrise des moyens nécessaires à la création de plateforme informatique (client-serveur) fonctionnant avec des bases de données.

Les grandes lignes - PHP :

  • Présentation de PHP / MySQLi,
  • En ligne vs Local (installation et utilisation de wampserver),
  • Variables et constantes,
  • Affichage (echo, print, var_dump),
  • Fonctions et fichier de fonctions, les inclusions,
  • Alternatives, récursives et répétitives,
  • Les tableaux,
  • Les cookies,
  • Les sessions et leur utilisation pour un back office, pour un panier e-commerce,
  • Le travail sur les chaînes de caractères,
  • Formulaires (récupérer, nettoyer, utiliser des données),
  • Upload de fichiers, utilisation de la librairie GD pour la manipulation d'images
  • Formulaire de contact et pièces jointes
  • Les dates et générer un agenda
  • Manipulation des fichiers (lecture, écriture, suppression)
  • Création de fichiers XML bien formés et de fichiers XML valides, création d'un parser XML en PHP
  • Génération de fichier PDF avec PHP
  • Les éléments de sécurisation d'une application PHP / MySQLi

Les grandes lignes - MySQLi :

  • PhpMyAdmin, créer une base de donnée et des tables, se connecter à une BDD,
  • Manipuler les données (SELECT, INSERT, UPDATE, DELETE) via un back-office développé sur mesure,
  • Les principales fonctions MySQLi,
  • Les requêtes complexes : les jointures, les fonctions agrégées et scalaires, les requêtes imbriquées...,
  • Le cryptage des mots de passe en BDD,
  • Générer un résumé, une pagination automatique...

Les grandes lignes - Algorithmie, Merise, POO, MVC :

  • Algorithmie : présentation et définition, input, output, transformation, alternatives, récursives, répétitives,
  • Découverte de la méthode Merise et maîtrise de son Modèle Conceptuel de Données pour la création de l'architecture de la Base de Données : entités, associations, cardinalité,
  • Initiation à la POO en PHP MySQLi : création de classes, les attributs (public, private, protected), les méthodes, l'instanciation d'une classe, l'appel des méthodes, l'injection de dépendance, l'héritage...,
  • Initiation à UML,
  • Initiation aux méthodes Agile,
  • Reprise d'applications développées en cours en séquentiel et passage en orienté objet,
  • Initiation au design pattern Modèle Vue Contrôleur : création et structuration d'une petite application MVC en PHP.

CHAPITRE 2 : DEVELOPPER UNE APPLICATION WEB

HTML, CSS & WEBMARKETING

Les principaux fondamentaux du webdesign (HTML, CSS, Webmarketing) sont utilisés dans ce cours, durant les TD et Workshops (Rappel : avant d’entrer dans la formation Développeur Web, le candidat effectue un test « HTML / CSS / Responsive Design » ; le candidat ayant des prérequis insuffisants en « HTML / CSS / Responsive Design » doit préalablement suivre une mise à niveau en « Webdesign »). L’enjeu est de développer les connaissances clés de l’étudiant en termes de standards du web pour lui permettre de développer des sites et plates-formes web performantes, pour optimiser le référencement d’un site web, développer la notoriété et l’image d’une marque ou d’un produit, suivre la relation client et générer du trafic sur un site.

Les grandes lignes :

  • HTML / CSS,
  • Photoshop pour le web et design d'interface,
  • Qu'est-ce que le SEO, SEA, SEM, SMO ?,
  • Renforcement des compétences en SEO,
  • Webmarketing : définition et contours, les actions et leurs évaluations, les outils...,
  • Le cas particulier de l'utilisation des réseaux sociaux dans le monde professionnel,
  • Introduction au Community management.

JAVASCRIPT & JQUERY (RAPPELS SUR L'ANIMATION ET LA PROGRAMMATION), AJAX & RIA

Ce cours vise à développer les compétences permettant d’enrichir des pages HTML avec des animations, applications et fonctionnalités développées en JavaScript.

Les grandes lignes - JavaScript et jQuery :

  • Rappels sur l'animation et la programmation,
  • Présentation et syntaxe du JavaScript, principe d'algorithmie,
  • Variables, fonctions avec passage d'arguments, conditions, boucles...,
  • Les événements,
  • Le Document Object Model (DOM) et compatibilité multi-navigateurs,
  • Naviguer dans le code HTML et le manipuler,
  • Éditer et manipuler CSS,
  • Créer des animations et gérer les appels récurrents (setTimeout et clearTimeout),
  • Rappel sur la librairie jQuery (cibler les éléments, manipuler HTML, manipuler CSS, les effets, l'animation...),
  • Création d'animations complexes,
  • Découverte de quelques widgets jQuery UI.

Les grandes lignes – AJAX et RIA

  • Définition des Rich Internet Application et de la visualisation de données,
  • Définition et présentation d'Ajax,
    • Objet xhr et connexion,
    • Les méthodes d'envoi de la requête,
    • La gestion des états et les messages d'erreurs,
    • La récupération de la réponse,
    • La compatibilité multi navigateurs,
    • jQuery Ajax.
  • Les Google Charts,
    • Utilisation, paramétrage et interactions,
    • Interfaçage avec une base de données MySQLi.

CMS E-COMMERCE

Il s’agit d’un cours visant à acquérir les compétences spécifiques à l’utilisation d’un système de gestion de contenu de type e-commerce (Prestashop ou Magento selon l'expertise du formateur).

Les grandes lignes :

  • Installation et Paramétrage du CMS,
  • Présentation de l’interface Back et Front Office,
  • Créer et gérer des profils (rédacteur, administrateur, droits...),
  • Réaliser les « pages » et menus du site,
  • Gérer les produits (catégories et fiches produits, déclinaisons...),
  • Gérer la logistique (stocks, fournisseurs, transporteurs...),
  • Le panier, les commandes,
  • Les autres fonctionnalités du CMS (statistiques par ex.),
  • Intégrer des solutions de paiement en ligne (paypal, banques...),
  • Charger, utiliser et personnaliser un nouveau templat,
  • Theming : se libérer des templates existant et créer un thème sur mesure pour le CMS (sur la base de la charte graphique d'un client fictif ou réel).

INITIATION À UN FRAMEWORK PHP / SYMFONY 3

Durant ce cours, l’étudiant a pour objectif d’apprendre à développer des applications web avec un framework PHP (par exemple Symfony3).

Les grandes lignes :

  • Présentation générale du framework et de ses outils,
  • Installation d’une « Distribution Standard Symfony »,
  • Architecture d’un projet Symfony (application, bundles, librairies, configuration etc.),
  • Comprendre la notion d’environnement (développement, production et test),
  • Conventions de codage et de nommage des fichiers,
  • Traitement d’une requête HTTP avec Symfony,
  • Définition d’une classe de contrôleur et des méthodes d’action,
  • Associer une URL à un contrôleur grâce aux annotations,
  • Introduction au moteur de rendu Twig,
  • Introduction aux formulaires,
  • Sécuriser l'accès à certaines pages,
  • Comprendre le déploiement en ligne.

INITIATION AU DEVELOPPEMENT MOBILE

L’enjeu de ce cours est d’appréhender le développement d’application de mobilité numérique (maquette graphique, développement et déploiement d’application mobile). Il pourra s’agir de développement hybride (IONIC par exemple) ou natif (SDK ou Androïd).

Les grandes lignes :

  • Installer et configurer un environnement de développement,
  • Structure d'une application mobile,
  • Gérer contenus, navigations, interactions,
  • La persistance des données utilisateurs,
  • Interagir avec les fonctionnalités du smartphone,
  • Déployer l'application.

ANGLAIS

L’objectif de ce cours est de permettre à l’étudiant d’utiliser l’anglais dans un cadre professionnel technique. Afin d'être opérationnel dans l'emploi, et par rapport au cadre européen commun de référence pour les langues, utiliser l'anglais au niveau B1 en compréhension de l'écrit, au niveau A2 en compréhension de l'oral, et au niveau A2 en expression écrite et orale.

Les grandes lignes :

  • Apprentissage du vocabulaire technique lié à la profession et aux missions de Développeur Web,
  • Mises en situation: présentations orales (entretien de recrutement) et écrites (CV et lettre de motivation) face à un recruteur,
  • Rédaction de l'abstract nécessaire pour le PFE (Projet de Fin d’Etudes),
  • Préparation à la présentation orale prévue pour le PFE.

CHAPITRE 3 : PREPARATION DU PROJET DE FIN D’ETUDES

Enjeux la session d’examen du Titre Professionnel « Développeur Logiciel »

Ce module vise à présenter les modalités de l’évaluation spécifiques prévues par le référentiel de certification du Titre Professionnel Développeur Logiciel. Cette approche pédagogique est organisée pour un cursus de Développeur Web visant préparer la session d’examen du Titre Professionnel dans sa globalité (les sessions d’examen de CCP sont spécifiques et les attendus un peu différents). Lors du jury, le candidat présente un Dossier Professionnel (DP) et un projet.

Il s’agit d’un cours de méthodologie permettant de conseiller le candidat dans la rédaction du Dossier Professionnel, dans la structuration des livrables du projet attendu par le jury de certification. Le détail des attendus pour la sessions d’examen est détaillé dans le Référentiel de Certification.

Les grandes lignes :

  • Présentation des référentiels (REAC – Référentiel Emploi Activités Compétences et RC – Référentiel de Certification) du titre professionnel et du livret DP (DP – Dossier Professionnel),
  • Mise en évidence des compétences des 2 CCP composants la certification,
  • Conseils méthodologiques de rédaction du DP,
  • Présentation des principes du projet : dossier de projet et déroulement de l’entretien du jury,
  • Supervision pédagogique du candidat portant sur l’ensemble des compétences techniques nécessaires à la mise en œuvre du projet.

Les spécificités de la session d’examen

Application Web / Application Client Serveur Si l'utilisation d'un CMS reste un atout en terme de productivité pour une agence Web, elle ne permet pas de confronter l'ensemble des compétences acquises par le stagiaire. Sans avoir recours à un CMS, le stagiaire devra donc concevoir et développer une application Web ou une plate-forme Web administrable. Cette réalisation lui permettra de conforter et de faire la démonstration des compétences acquises tout au long de l'année.

Exemple de projets déjà réalisés par le passé et permettant de valider le Titre Professionnel (en dehors de la compétence « Développer une application simple de mobilité numérique ») :

  • Développement d'une plate-forme sécurisée permettant d'informatiser son dossier médical, ses prises de médicaments, ses RDV médecins...,
  • Développement d'une plate-forme e-learning actuellement commercialisée,
  • Développement d'un extranet pour un service Qualité Sécurité (répertorier des anomalies, associer des acteurs, lancer des alertes, suivre l'état des correctifs...),
  • Développement d'un extranet de suivi de projets entre une agence et ses clients,
  • Développement d'un extranet de type Bug Tracker permettant d'optimiser le SAV d'une agence lors de la livraison de sites ou applications Web,
  • Développement d'une plate-forme de co-voiturage (mises en relations entre particuliers) pour monter en stations de ski ou grimper en milieux naturels,
  • Développement d'une plate-forme de rencontres Underground.