La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Développement d’applications interactives

Présentations similaires


Présentation au sujet: "Développement d’applications interactives"— Transcription de la présentation:

1 Développement d’applications interactives
Cours 3

2 Plan Retour sur le TD Les exceptions UML Patrons de conception
Modificateurs d’accès Ex: propriétés, private vs protected Javadoc Héritage, interfaces, classes abstraites, polymorphisme Les exceptions UML Patrons de conception

3 Une interface ou l’interface?

4 Les exceptions Erreurs se produisant à l’exécution, ne peuvent être décelées par le compilateur Les exceptions se propagent(remontent) la hiérarchie d’appel Try, catch, finally 2 types Vérifiées (Checked) Non-vérifiées (Unchecked) Documentation avec Javadoc! Seulement les Celles que vous générez ou que vous attrapez pour les propager sous une autre forme Ex: Un paramètre reçu peut générer NullPointerException, mais vous retournez InvalidArgumentException(“Le paramètre X ne peut être null”)

5 Les exceptions vérifiées
FileNotFound Les méthodes expriment explicitement si elles génèrent une exception: throws Le code appelant a la responsabilité d’attraper l’exception ou de la propager On peut attraper différentes exceptions, mais l’ordre des catch est important

6 Les exceptions non-vérifiées
NullPointerException Ne sont pas exprimée explicitement Le code appelant ne doit pas nécessairement l’attraper

7 Les exceptions personnalisées
Il est possible d’hériter de la classe Exception pour implémenter des exceptions personnalisées throw CustomException(“Context and description of the exception”) Si on crée une exception personnalisée suite au catch d’une autre exception, il faut privilégier le constructeur: new CustomException(“Message”, otherException) Permet de conserver le context initial

8 Les exceptions Piège à éviter:

9 Les exceptions

10 Les exception: Exercice
Ajouter des exceptions personnalisées dans le TD setName -> EmptyNameException setAge -> negativeAgeException

11 UML Unified Modeling Language
1995: Rumbaugh, Jacobson, Booch Standard pour la modélisation et représentation des composants et systèmes logiciels Géré par l’OMG, approuvé par ISO V2.5, SysML Sous-ensemble d’UML spécialisé pour la conception système (processus, intéractions etc.)

12 UML La modélisation permet de concevoir le logiciel avant la codification, tout comme un architecte fait un plan avant de construire une maison Vue d’ensemble Planifier la robustesse, sécurité et maintenabilité Facilite les échanges Les modèles doivent être maintenus à jour Réduit le risque d’échec ou du moins sa portée...

13 UML Explique, documente, visualise le système/logiciel
Indépendant de la technologie utilisée Supporte la modélisation orientée objet ou procédurale Possible de générer le code suite à la modélisation, mais les outils sont coûteux! Indépendant de la méthodologie/processus de développement Peut être intégré facilement dans un processus existant

14 Diagrammes UML Comportement Structure Ce doit doit se passer
Processus opérationnel ou d’affaires Activity, State Machine, Use Case Interactions Interactions entre les objets/composants Sequence, Communication, Timing, Interaction Overview Structure Architecture du système Représente les éléments présents dans le système, sans relation avec le temps Class, Object, Component, Composite Structure, Package, Deployment

15 Diagrammes UML

16 Diagramme des cas d’utilisation (Use Case)
Une unité de fonctionnalité Les besoins fonctionnels de système et leurs relations entre eux OU les acteurs (utilisateurs) Vue d’ensemble ou seulement d’un sous- ensemble des fonctionnalités Qui fait quoi ou ne fait pas quoi Vocabulaire Acteurs Use case: verbe, chronologie de haut en bas Extend: ajout de fonctionnalité Include: Réutilisation de fonctionnalité Héritage: relation est un, est comme

17 Diagramme de classes Structure et relations entre les entités
Modèle du domaine: haut niveau Diagramme d’implémentation: classes logicielles

18 Diagramme de classes Relations: static est souligné
abstract est italique <<interface>> sont annotées Classe contient: Nom Membres Méthodes Modificateurs d’accès +, public -, private #, protected ~, package (default en Java) /, dérivé Hiérarchie Multiplicités:


Télécharger ppt "Développement d’applications interactives"

Présentations similaires


Annonces Google