Bonnes pratiques et anti-patterns de développement logiciel

Inter-company training

Who is the training for?

Développeurs

Duration

5,00 day(s)

Language(s) of service

EN FR

Prerequisites

Maîtrise de la programmation orientée objets (Java, C#, PHP)

Goals

Acquérir les bonnes pratiques de conception objet - Apprendre les anti-patterns de développement logiciel

Contents

Maîtriser les principes SOLID

Présentation des principes SOLID
Principe de la responsabilité unique (SRP)
Principe de l'ouverture-fermeture (OCP)
Principe de substitution de Liskov (LSP)
Principe de la ségrégation des interfaces (ISP)
Principe d'inversion des dépendances (DIP)

Appliquer les bonnes pratiques

Style de code et mesure
Profiling et performance
Calcul de métriques: longueur de classe,de méthode, nombre de paramètres, de champs, complexité (cyclomatique, NPATH)
Bonnes pratiques de codage:

  • Limiter autant que possible les retours par fonction
  • Éviter les instructions en cascade
  • Éviter les instructions break et continue
  • Éviter les conditionnelles négatives
  • Remplacer les nombres et les chaînes par des constantes

Règles de conception:

  • Patterns à appliquer
  • Substituer les instructions switch par du polymorphisme
  • Éviter les champs protégés dans les classes final
  • Couplage: typer par des interfaces

Documentation du code: langue, génération et maintien

Découvrir des anti-patterns de développement

Anti-pattern: définition, types (architectural, organisationnel, développement)
Panorama d'anti-patterns:

  • The Blob (God Class)
  • Singleton
  • Poltergeist
  • Hard coding
  • ContinuousObsolescence
  • Lava Flow
  • AmbiguousViewpoint
  • FunctionalDecomposition
  • Dead End
  • Input Kludge
  • WalkingthroughaMinefield
  • MushroomManagement
  • Boat Anchor
  • Object cesspool
  • Golden hammer
  • Premature optimization
  • Spaghetti code
  • Magic numbers
  • Copy-and-PasteProgramming
  • Yo-yo problem
  • Accidental complexity

Teaching methods

Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.

Evaluation

Contrôle continu

Certificate, diploma

Attestation de fin de stage mentionnant le résultat des acquis

Organization contact details

Dawan - Service commercial

These courses might interest you

EN
Day
Computer science - Computerisation - Computer project management - Agile software development