Code & développementBachelor Développeur Java
Re skill - FORMATION EN LIGNE

Bachelor Développeur Java

Objectif de la formation

Vous souhaitez concevoir des sites internet et des applications web optimisées tout en maîtrisant les bonnes pratiques en Java ?

Cette formation vous permet d'acquérir les compétences pour devenir Développeur Java, l'un des langages les plus utilisés au monde. 

Vous serez ainsi former à développer le back-end d’applications web et des programmes en ligne de commande ou encore des web-services.

Vous serez capable de :

  • Maîtriser les fondamentaux du langage Java
  • Savoir faire de la programmation orientée objet en Java
  • Concevoir et développer une interface web ou mobile
  • Optimiser l'interaction entre l'interface et une ou plusieurs base de données
  • Manager un projet web
Logo Mon Compte Formation du gouvernement
Formation éligible CPF
Financez facilement votre formation avec Mon compte formation.
En savoir plus
  • Titre Professionnel
  • Niveau 6 (BAC +3)
  • Certificateur : Ministère du Travail, de l’Emploi et de l'Insertion
  • 500h de formation
  • De 9 à 18 mois
  • Formation 100 % en ligne
Double garantie !
  • Garantie réussite : prolongez gratuitement votre formation pendant 5 ans.
  • Garantie diplômé ou remboursé.
On vous rappelle gratuitement :
Demande de documentation

Programme

Conception et développement d'une interface
Détail du bloc de compétences
Maquetter une application
  • Comment et pourquoi se former à la conception et développement d'une interface 
  • Découverte d'un outil de maquettage (Adobe XD)
  • Créer une maquette avec Adobe XD
  • Les wireframes
  • La communication autour du projet
  • L’art d’animer des réunions efficaces
  • Le rôle de la note de cadrage
  • Interpréter une demande client
  • Les méthodologies agiles
  • Prise en compte des contraintes ergonomie / utilisabilité / solution
  • La connaissance des composants d'interface graphique
  • Les bonnes pratiques
  • Le droit du web 
  • La connaissance des principes de sécurisation d’une interface utilisateur 
Développer une interface utilisateur de type desktop
  • Ce qu'il faut connaître avant de développer une interface
  • La qualification technique d'un composant logiciel 
  • Les algorithmes et programmes
  • L'Utilisation d'un outil collaboratif de partage de fichiers
  • La planification et le suivie des tâches de développement
  • Comment et pourquoi se former à Gantt Project ?
  • Lancement de Gantt Project
  • Cadrer le projet : les paramètres généraux
  • Cadrer le projet : personnaliser le calendrier
  • La construction du plan de projet
  • Structurer les phases
  • Les dépendances : Création du réseau
  • Les dépendances : améliorer le réseau
  • Se déplacer
  • Modifier les affichages
  • Le chemin critique
  • Les références
  • Créer les ressources
  • Affecter les ressources 
  • Saisie du réalisé
  • Gérer les dérives
  • Imprimer et exporter
  • Introduction au JAVA
  • Les types primitifs
  • Les common objects
  • Le instructions conditionnelles
  • Les méthodes
  • Les exceptions
  • Les classes - construction
  • Les classes - Types de classes
  • Les classes - Utilisation dans un contexte POO
  • Les autres spécificités d'une classe java
  • Les collections
  • La manipulation des dates
  • Les patrons de conception (design patterns)
  • Les fonctions anonymes et leurs utilisations
  • Les tests fonctionnel sous Java
  • Les outils d’aide aux bonnes pratiques de développement
  • Les BDD H2 et Lombrok
  • La persistance de données sous Java desktop
  • La présentation de l'OWASP et du TOP10 des failles de sécurité
  • La mise en place d'une fonction d'authentification
  • La vérification d'authentification sur une API
  • La mise en place d'une fonction d'autorisation (par rôle)
  • La vérification d'authentification et d'autorisation sur une API
  • L'Utilisation d'outils d'analyse statique et dynamique de code
  • La gestion des bugs : stratégies générales
  • L'Utilisation des bibliothèques de composants graphiques
  • La Mise en œuvre d'un outil de génération d'état
  • Les notions de test unitaire et test fonctionnel
Développer des composants d’accès aux données
  • Ce qu'il faut connaître avant de développer des accès aux données
  • La connaissance d'un environnement de développement intégré
  • 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 programmation Orientée Objet : Design Patterns
  • La programmation Orientée Objet : L’encapsulation et la visibilité
  • La connaissance des modèles de conception relatifs aux accès aux données relationnelles ou non relationnelles
  • La connaissance de la gestion de l'intégrité des données et du concept de transaction
  • La connaissance du principe de connexion à une base de données à partir d'un logiciel d’interface (middleware)
  • La connaissance des principales attaques sur les bases de données
  • La connaissance des règles de sécurisation des composants d’accès aux données
  • Le code dans un langage objet dans un style défensif
  • L'utilisation des bibliothèques d'objets existants
  • Le code  sécurisée d'accès aux données relationnelles ou non relationnelles 
  • Fonder la sécurité des composants d’accès sur l’authentification et la gestion de la sécurité du SGDB
  • La réalisation de test et d'un jeu de tests unitaires
  • L'utilisation d'un outil de virtualisation ou de conteneurisation
  • La recherche d'une réponse pertinente 
Développer la partie front-end d’une interface utilisateur web
  • Ce qu'il faut connaître avant de développer la partie front-end
  • L'interface est conforme à la maquette de l'application et au dossier de conception technique
  • Les bonnes pratiques de développement web sont respectées
  • Introduction HTML et CSS
  • Syntaxe générale de HTML
  • L'organisation du texte
  • Un langage hypertexte
  • Le multimédia en HTML
  • Introduction à CSS3 : Hello world
  • 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ées 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
  • Accessibilité visuelle
  • Les pages web sont accessibles depuis un navigateur
  • Les tests garantissent que les pages web répondent aux fonctionnalités 
  • Les tests de sécurité suivent un plan reconnu par la profession
  • La mise en ligne d’applications web avec Heroku
  • La programmation événementielle en Javascript
  • Présentation React
  • La programmation AJAX
  • Le test de la sécurité du site avec un guide de test reconnu
  • Ce qu'il faut retenir pour développer le front end
Développer la partie back-end d’une interface utilisateur
  • Ce qu'il faut savoir pour la partie Back-end d'une application
  • La connaissance des bonnes pratiques de qualité et d’écoconception web
  • La connaissance des bases de la cryptographie et des mécanismes de sécurité du web
  • La connaissance du rôle de l’infrastructure et des protocoles réseau dans la sécurité d’une application web
  • 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 superglobables Get, Post et Files
  • Les superglobables Server, Env et Session
  • La sécurité
  • La sécurité et la gestion des utilisateurs
  • Le développement de la partie dynamique de l'application avec des composants serveurs, dans un style défensif, et éventuellement en asynchrone
  • L'appel des Web Services dans un composant serveur
  • La sécurisation des liaisons entre le client et le serveur web.
  • Gestion de la sécurité de l’application  dans la partie serveur
  • L'utilisation des composants d’accès aux données
  • Réaliser un jeu de tests de l'application web en précisant les tests ou en appliquant une stratégie de tests
  • Le test de la sécurité du site, avec un guide de test reconnu 
  • La publication de l'application développée sur un serveur web
  • La prise en compte un rapport de test d'intrusion et les corrections possibles pour traiter la vulnérabilité
Conception et déploiement d'une base de données sécurisée
Détail du bloc de compétences
Concevoir une base de données
  • Comment et pourquoi se former à la conception et déploiement d'une base de données sécurisée 
  • Introduction générale aux bases de données, notion de SGBDR
  • Introduction à la modélisation conceptuelle de données avec UML
  • 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
  • Introduction à MongoDB
Mettre en place une base de données
  • Connexion à la base de données en PHP
  • PHP/PDO : accès en lecture/écriture
  • Les requêtes 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
  • La recherche du compromis optimal entre normalisation, performance et efficacité 
  • Mettre en œuvre les utilitaires de sauvegarde et restauration sur un serveur de bases de données
  • L'organisation des données d’une base de données non relationnelles
  • La planification et le suivie des tâches de mise en place de la base de données
Développer des composants dans le langage d’une base de données
  • Ce qu'il faut savoir avant de développer des composants
  • Mysql Workbench
  • La programmation des fonctions, des procédures stockées et des déclencheurs (triggers) 
  • Le test des composants 
  • L'intégration des traitements sur les données dans une transaction
Conception et développement d'une application sécurisée
Détail du bloc de compétences
Collaborer à la gestion d’un projet informatique et à l’organisation de l’environnement de développement
  • Comment et pourquoi se former à la conception et développement d'une application sécurisée
  • Les spécificités du projet digital
  • La mise en œuvre des procédures de la démarche qualité
  • L'écosystème d'un projet digital
  • Définition des outils du Cloud à utiliser au sein de l'équipe de projet
  • La Participation à la planification et au suivi du projet au sein de l'équipe de projet
  • La Sécurisation des échanges dans l’équipe de projet
  • La conduite  de façon séquentielle d'un projet de conception et de développement
  • La Coordination de façon itérative et en mode collaboratif d'un projet de conception et de développement
  • Des présentations de résultats impactantes
  • La construction du planning
Concevoir une application
  • La connaissance des architectures logicielles multicouches réparties y compris avec des microservices
  • La connaissance du formalisme des diagrammes du langage de modélisation unifié UML
  • La connaissance du développement objet
  • La connaissance d'une démarche de développement logiciel pilotée par les modèles
  • La connaissance des outils principaux de conception et de réalisation du marché tels que logiciels et cadres d’applications
  • La connaissance des principes de l’analyse de risque
  • La connaissance des principales vulnérabilités et attaques contre les architectures multicouches réparties
  • La connaissance des principes de sécurité applicables à l’architecture multicouche répartie
  • La collecte des besoins des utilisateurs
  • La prise en compte une analyse de risque
  • L'analyse d'un cahier des charges en identifiant les limites du système, les acteurs et les messages
  • L'identification des besoins de sécurité de l’application
  • La traduction des besoins en diagrammes UML
  • La conception de la solution à partir des diagrammes UML
  • L'adaptation de l’architecture technique aux besoins des utilisateurs et aux besoins de sécurité
  • L'utilisation de patrons de conception (design patterns) et de patrons de sécurité (security pattern)
  • La Modélisation de l’architecture du système, en respectant les principes et patrons de sécurité
  • L'amélioration à des fonctionnalités constantes de la conception d’un code existant 
  • Ce qu'il faut retenir de la conception d'une application
Développer des composants métier
  • Ce qu'il faut savoir pour développer des composants métiers
  • L'utilisation de fonctionnalités de génération de code de l’outil de modélisation UML
  • Le codage de  composants dans un langage objet, avec un style de programmation défensif
  • La validation de la sécurité et l'utilisation de composants 
  • L'utilisation des moyens de gestion des identités et des certificats numériques
  • La production de tests unitaires, avec une double approche fonctionnelle et sécurité
  • L'utilisation  d'outils d’analyses statiques et dynamiques de code
  • La correction des erreurs et des vulnérabilités détectées
  • Ce qu'il faut retenir 
Construire une application organisée en couches
  • La connaissance du rôle de l’infrastructure et des protocoles réseau sur la sécurité d’une application multicouche répartie
  • La connaissance de l'architecture applicative multicouche répartie et des différents types de serveurs
  • La connaissance des architectures logicielles multicouches réparties
  • La connaissance de cadres d’applications (framework) ou de bibliothèques de composants de la couche persistance de données et de la couche présentation
  • La connaissance du processus et des outils d’intégration continue
  • L'utilisation de composants tiers et la vérification de l’efficience et la sécurité
  • L'utilisation d'une technologie de services distants
  • La sécurisation de chacune des couches logicielles et la communication entre les couches
  • L'utilisation des outils du Cloud de type PAAS (Platform As A Service)
Développer une application mobile
  • La connaissance d'une démarche de développement en approche de type Agile
  • La connaissance des normes réseaux liées au développement mobile
  • La connaissance des architectures d’application mobile 
  • La connaissance des formats normalisés d'échange de données
  • Le développement mobile Java sur Android APK
  • Les bases d'Android APK
  • Les fonctions Java sous Android APK
  • Les collections Java sous Android APK
  • Les structures de données Java sous Android APK
  • Les propriétés et méthodes Java sous Android APK
  • Les protocoles Java sous Android APK
  • La conception d'une application mobile Java sous Android APK
  • La gestion des états Java sous Android APK
  • La navigation et le passage de données Java sous Android APK
  • Les décorations et les animations Java sous Android APK
  • Les erreurs Java sous Android APK
  • Les abstractions et la composition Java sous Android APK
  • La programmation asynchrone Java sous Android APK
  • Structure d'une application Java sous Android APK
  • Les tests de l'application
  • Les requêtes à un webservice Java sous Android APK
  • Le codage des données Java sous Android APK
  • La persistance Java sous Android APK
  • Le déploiement sur Android 
  • Projet - Développer une application Java sous Android APK comportant une map et un espace de connexion
Préparer et exécuter les plans de tests d’une application
  • Ce qu'il faut savoir avant de préparer les tests
  • La préparation et l'exécution d'un plan de test de sécurité
  • La recherche des failles de sécurité par des tests aléatoires (fuzzing)
  • La pratique d'une analyse statique de l’application
  • L'exécution des tests en manuel, ou en automatique dans le cadre d’un processus d’intégration continue
  • L'analyse des résultats du test de charge et l'apport des corrections
  • L'analyse des résultats du test d’intrusion et l'apport des corrections
  • La rédaction du dossier de compte rendu de tests
Préparer et exécuter le déploiement d’une application
  • Ce qu'il faut savoir avant de tester le déploiement
  • Réalisation d'un diagramme de déploiement
  • Le déploiement de l’application ou le microservice
  • Prise en compte des dépendances vis-à-vis des composants externes du composant à déployer
  • La prise en compte des évolutions de versions de l’ensemble des composants externes
  • La gestion de la sécurité de l’application 
  • Planification et suivi de tâches de déploiement
Programmation en Java
Détail du bloc de compétences
Industrialiser un projet Java
  • Comment et pourquoi se former à la programmation avec Java
  • L'outil Maven - présentation
  • L'outil Maven - son utilisation
  • La librairie Spring - ses principes
  • La librairie Spring - springboot
  • La librairie Spring - Son utilisation avec une API
  • Les traces (log)
Maîtriser les tests Java par la pratique
  • Le standard openAPI / Swagger - Sa mise en place sur une API
  • Les méthodes de développement
  • Les tests unitaires / d'intégration avec JUnit / Mockito
  • Les tests d'intégration d'une fonctionnalité avec cucumber
Manipuler les bases de données avec Java
  • La persistance de données (DATA JDBC/JCPA)
Sécuriser son application en JAVA
  • La mise en place d'une fonction d'authentification
Inclus dans votre formation
+ de 50 formations aux logiciels métiers

Des centaines d’heures de screencasts vidéo pour maîtriser les logiciels essentiels en entreprise. Différenciez-vous et boostez votre employabilité !

Votre diplôme

Concepteur développeur d'applications

Admission

Pour entrer en formation préparant au Titre visé, le candidat doit :

  • Avoir validé un diplôme ou un Titre certifié de niveau 5 (Bac+2)

OU

  • Via un dossier VAPP retraçant l'expérience professionnelle (validation des acquis professionnels et personnels, sur étude par la direction pédagogique) : avoir validé un diplôme ou un Titre de niveau inférieur au niveau 5 (Bac+2) et justifier d’une expérience professionnelle de 2 ans minimum dans le domaine visé par le Titre

 

Pour toute autre situation, contactez un conseiller en formation qui étudiera votre profil pour étudier votre admissibilité.

Examen

Pour obtenir le Titre, le candidat sera évalué selon les modalités suivantes :

  • Les évaluations passées en cours de formation 
  • Un dossier de synthèse de pratique professionnelle
  • Une épreuve de synthèse basée sur une mise en situation professionnelle
  • Un entretien final avec le jury
  • Publié au JO
    17/04/2018
  • Certificateur
    Ministère du Travail, de l’Emploi et de l'Insertion
  • Lieu
    Paris, Montpellier, Bordeaux, Lyon
  • Inscription
    A tout moment de l'année
  • Dates d'examen
    Juin ou Décembre
Contactez-nous
La puissance de la formation en ligne et du réseau Digital Campus
Image
Coaching personnalisé
La relation est au cœur de nos dispositifs de formation : coaching, accompagnement vers l’emploi, communauté d’apprenants et de formateurs pour répondre à toutes vos questions.
Image
La formation qui vous suit partout
La culture "digital first" est dans notre ADN. Formez-vous partout et à tout moment avec les applications web et mobiles (Android et IOS).
Image
Plateforme Social Learning
Interagissez avec les autres apprenants, entraidez-vous, créez des communautés, likez, questionnez les formateurs directement. Vivez une formation 100% social learning.
Image
Diplômes reconnus et finançables CPF !
Nos formations débouchent sur des titres RNCP, des certifications professionnelles qui sont enregistrées au Répertoire Spécifique. Elles sont reconnues par les entreprises, l’État et sont finançables CPF !
Image
Garantie diplômé ou remboursé
Prolongez votre formation gratuitement pendant 5 ans avec la garantie réussite. En cas d'échec, nous vous remboursons.
En complément de votre formation, des + qui font la différence

Vous apprenez comme vous voulez, à votre rythme.

A vous de choisir et de composer selon votre personnalité et vos aspirations.

Découvrez, apprenez, approfondissez tout ce qui vous fait envie ou qui vous sera utile demain.

Un accès illimité durant 5 ans à des milliers de formations supplémentaires : culture digitale, logiciels métiers & bureautique, langues étrangères, développement personnel, soft skills...)

Découvrir
Options métier

Complétez votre cursus principal avec la spécialisation de votre choix.

L'occasion d'élargir vos domaines d'expertise parmi un choix de 36 options métier.

Découvrir
Evènements à venir