Software craftsmanship · TDD par Human Coders
Lieu(x)
À distance
Durée
Total : 14 heures
Financement
Demandeur d’emploi
Salarié
Prix
Nous contacter
Cette formation vous intéresse ?
Description générale
Le programme dépend énormément des attentes des participants est va donc varier !
Voici une structure globale sur laquelle le programme se basera. Il sera possible d'étayer certaines parties en fonction des attentes des participant e s.
Jour 1 : Agilité, Tests, TDD
Aperçu rapide de l'Agilité
Ecriture de User
- stories
ATDD : écrire les tests d'acceptances avec le métier
Les différents types de tests
Principe du TDD
La pratique du pair
- programing
Le Clean
- Code
Les principes SOLID
Mise en pratique : 70% du temps sera dédié à des atelier pratiques
Jour 2 : Refactorer du code legacy
Qu'est ce que le code legacy ?
Ecrire des tests sur du code legacy
Casser des dépendances
Refactorer
Relire du code
Repérer les Bad
- Smells
Mise en pratique : 70% du temps sera dédié à des atelier pratiques
Voici une structure globale sur laquelle le programme se basera. Il sera possible d'étayer certaines parties en fonction des attentes des participant e s.
Jour 1 : Agilité, Tests, TDD
Aperçu rapide de l'Agilité
Ecriture de User
- stories
ATDD : écrire les tests d'acceptances avec le métier
Les différents types de tests
Principe du TDD
La pratique du pair
- programing
Le Clean
- Code
Les principes SOLID
Mise en pratique : 70% du temps sera dédié à des atelier pratiques
Jour 2 : Refactorer du code legacy
Qu'est ce que le code legacy ?
Ecrire des tests sur du code legacy
Casser des dépendances
Refactorer
Relire du code
Repérer les Bad
- Smells
Mise en pratique : 70% du temps sera dédié à des atelier pratiques
Objectifs
Mettre en oeuvre plusieurs pratiques issues de l'eXtreme Programming, et de l'Agilité (TDD, pair
- programming, intégration continue, automatisation des tests ...)
Comprendre l'importance des tests dans la production de logiciels et le développement
Repenser des applications existantes grâce à l'ajout de tests en vue de l'amélioration continue
Se baser sur les tests pour faire emerger l'architecture de ses applications
Sensibiliser aux "softs
- skills" et à l'importance de la communication dans l'équipe et avec l'extérieur
- programming, intégration continue, automatisation des tests ...)
Comprendre l'importance des tests dans la production de logiciels et le développement
Repenser des applications existantes grâce à l'ajout de tests en vue de l'amélioration continue
Se baser sur les tests pour faire emerger l'architecture de ses applications
Sensibiliser aux "softs
- skills" et à l'importance de la communication dans l'équipe et avec l'extérieur
Secteur(s)
Métier(s)
- Analyste cogniticien / cogniticienne informatique
- Analyste concepteur / conceptrice informatique
- Analyste d'application
- Analyste d'étude informatique
- Analyste de gestion informatique
- Analyste décisionnel - Business Intelligence
- Analyste développeur / développeuse
- Analyste en cybersécurité
- Analyste fonctionnel / fonctionnelle informatique
- Analyste organique informatique
- Analyste responsable d'application informatique
- Analyste réseau informatique
- Analyste télématique
- Analyste-programmeur / Analyste-programmeuse d'étude informatique
- Analyste-programmeur / Analyste-programmeuse de micro-informatique
- Analyste-programmeur / Analyste-programmeuse en informatique industrielle
- Analyste-programmeur / Analyste-programmeuse gestion informatique
- Analyste-programmeur / Analyste-programmeuse informatique
- Analyste-programmeur / Analyste-programmeuse scientifique informatique
- Assistant / Assistante chef de projet informatique
- Chef de groupe logicien informaticien
- Chef de projet TMA - Tierce Maintenance Applicative
- Chef de projet maîtrise d'oeuvre informatique
- Chef de projet étude et développement informatique
- Concepteur / Conceptrice d'application informatique
- Concepteur / Conceptrice informatique
- Concepteur / Conceptrice logiciel informatique
- Didacticien / Didacticienne informatique
- Développeur / Développeuse Big Data
- Développeur / Développeuse back-end
- Développeur / Développeuse d'application
- Développeur / Développeuse de logiciel de simulation optique et réalité virtuelle
- Développeur / Développeuse de sécurité des systèmes d'information
- Développeur / Développeuse décisionnel - Business Intelligence
- Développeur / Développeuse front-end
- Développeur / Développeuse full-stack
- Développeur / Développeuse informatique
- Développeur / Développeuse jeux vidéo
- Développeur / Développeuse logiciel de réalité augmentée
- Développeur / Développeuse multimédia
- Développeur / Développeuse web
- Développeur / Développeuse web mobile
- Homologateur / Homologatrice logiciel
- Informaticien / Informaticienne analyste
- Informaticien / Informaticienne d'application
- Informaticien / Informaticienne de développement
- Informaticien chargé / Informaticienne chargée d'étude
- Ingénieur / Ingénieure analyste en système d'information
- Ingénieur / Ingénieure analyste informatique
- Ingénieur / Ingénieure d'analyse et de programmation en informatique de gestion
- Ingénieur / Ingénieure d'application informatique
- Ingénieur / Ingénieure d'intégration applicative
- Ingénieur / Ingénieure d'étude en applications scientifiques informatiques
- Ingénieur / Ingénieure d'étude en informatique de gestion
- Ingénieur / Ingénieure d'étude et développement informatique
- Ingénieur / Ingénieure d'étude informatique
- Ingénieur / Ingénieure d'étude logiciel informatique
- Ingénieur / Ingénieure de conception informatique
- Ingénieur / Ingénieure de développement informatique
- Ingénieur / Ingénieure de réalisation informatique
- Ingénieur / Ingénieure développement logiciel informatique
- Ingénieur / Ingénieure en développement d'applications
- Ingénieur / Ingénieure informatique développement en temps réel
- Ingénieur / Ingénieure logiciel informatique
- Ingénieur / Ingénieure programme informatique
- Ingénieur analyste-programmeur / Ingénieure analyste-programmeuse
- Ingénieur concepteur / Ingénieure conceptrice informatique
- Ingénieur informaticien / Ingénieure informaticienne
- Intégrateur / Intégratrice d'application informatique
- Lead programmeur / programmeuse - jeux vidéo
- Paramétreur / Paramétreuse logiciel ERP
- Programmeur / Programmeuse d'applications
- Programmeur / Programmeuse d'études
- Programmeur / Programmeuse de maintenance informatique
- Programmeur / Programmeuse informatique
- Programmeur / Programmeuse jeux vidéo
- Programmeur / Programmeuse logiciel de base informatique
- Programmeur industriel / Programmeuse industrielle
- Responsable d'application informatique
- Responsable d'atelier de génie logiciel
- Responsable d'étude informatique
- Responsable de gestion de configuration
- Responsable de projet informatique
- Responsable des développements informatiques
- Scrum Master
- Technicien / Technicienne programmation
- Testeur / Testeuse informatique
- Webmaster
- Webmaster développeur / développeuse
Compétence(s)
- Algorithmique
- Animation d'instances agiles (mêlée, démonstration, rétrospective, …)
- Architecture d'applications
- Architecture des systèmes d'information
- Architecture propriétaire
- Architecture web
- Business Intelligence (BI) / Informatique décisionnelle
- Comptabilité générale
- Finance
- Formalisation de processus de gestion
- Gestion commerciale, relation clients
- Gestion de configuration
- Gestion de production
- Gestion de projet
- Gestion des Ressources Humaines
- Informatique de gestion
- Informatique industrielle
- Informatique scientifique et technique
- Langage informatique ASP.NET
- Langage informatique Ada
- Langage informatique Apache
- Langage informatique AutoItScript
- Langage informatique Basic
- Langage informatique C#
- Langage informatique C/C++
- Langage informatique CSS
- Langage informatique Cobol
- Langage informatique Delphi
- Langage informatique Fortran
- Langage informatique HTML
- Langage informatique J2EE
- Langage informatique J2ME
- Langage informatique Java
- Langage informatique Lisp
- Langage informatique PHP
- Langage informatique Pascal
- Langage informatique Perl
- Langage informatique Prolog
- Langage informatique Python
- Langage informatique Ruby
- Langage informatique SQL
- Langage informatique Script Shell
- Langage informatique VB.NET
- Langage informatique Visual Basic
- Langage informatique WLangage
- Langage informatique XML
- Langages de programmation informatique
- Marketing / Mercatique
- Matériel de contrôle embarqué
- Modélisation informatique
- Méthode AGILE
- Méthodologie SAFe
- Méthodologie Scrum
- Principes d'intégration de matériels et de logiciels
- Process et procédures d'achats
- Procédures d'appels d'offres
- Produits multimédia
- Progiciels de Gestion Intégrée (PGI) / Enterprise Resource Planning (ERP)
- Programmation informatique
- Programmation logicielle
- Protocoles et normes télécoms
- Publication Assistée par Ordinateur (PAO)
- Règles de sécurité Informatique et Télécoms
- Réseaux informatiques et télécoms
- Système KANBAN
- Système LEAN
- Système embarqué
- Systèmes d'exploitation informatique
- Technologies de l'accessibilité numérique
Formation proposée par : Human Coders
À découvrir