Aller au contenu

320 : Programmer orienté objet

Compétences

  • Modéliser et implémenter orienté objet des applications et des interfaces, les tester et les documenter.

Objectifs opérationnels

  1. Analyser des problèmes d’application pour créer des programmes orientés objet.
  2. Modéliser et documenter des programmes orientés objet.
  3. Implémenter un design orienté objet.
  4. Vérifier l’exactitude et la qualité de l’implémentation.

Liens domaine de compétence opérationnels

Domaine de compétence

Domaine de compétence Développement d’applications
Objet Application avec 3 à 5 classes spécifiques
Attestation
Prérequis 319 : Concevoir et implémenter des applications
122 : Automatiser des procédures à l’aide de scripts
Nombre de leçons env. 40
Reconnaissance Certificat fédéral de capacité

Connaissances opérationnelles nécessaires

1 1.1 Connaître l’approche orientée objet avec les concepts fondamentaux de l’encapsulation, de l’héritage et de la polymorphie.
1.2 Connaître des procédures pour trouver des classes (p. ex. spécialisation et généralisation, modèle de domaine/événement, contexte borné [bounded context], principe de développement DRY [Don’t Repeat Yourself], principe de responsabilité unique SRP [Single Responsibility Principle]).
1.3 Connaître des concepts d’abstraction tels que des associations, classes, attributs et méthodes, des interfaces ainsi que des classes et des types de données abstraits (ADT [Abstract Data Type], collections, génériques).
2 2.1 Connaître des descriptions (p. ex. carte CRC) et des notations de diagrammes (p. ex. UML, TAM, 4+1) pour les aspects statiques et dynamiques du design orienté objet.
2.3 Connaître la manière de documenter à l’aide d’une infrastructure correspondante (p. ex. Javadoc).
3 3.1 Connaître la différence entre classes et objets.
3.2 Connaître un langage orienté objet et ses éléments et pouvoir mettre en œuvre le design.
3.3 Connaître le concept de liaison dynamique.
3.4 Connaître le concept de l’inversion de contrôle (injection de dépendance).
4 4.1 Connaître des procédures pour créer des cas de tests.
4.2 Connaître des méthodes de tests pour vérifier les composants d’une application (tests unitaires automatiques).