Accueil Finances personnelles En généralisant en UML 2 - des nuls

En généralisant en UML 2 - des nuls

Vidéo: UML Diagrammes de Cas d'utilisation Tutoriel 2025

Vidéo: UML Diagrammes de Cas d'utilisation Tutoriel 2025
Anonim

Il est naturel de classer les objets dans des catégories et d'organiser les catégories en sous-catégories. Si vous cherchez un endroit où vivre, vous vous trouvez à classer une unité d'habitation comme une maison, un appartement, une maison en rangée, une copropriété, un manoir, et ainsi de suite. Les maisons peuvent, à leur tour, être davantage organisées par des styles tels que ranch, split-level, colonial, et saltbox. UML vous fournit une notation pour capturer ces types de classifications - également connues sous le nom de généralisation et spécialisation - et les utilise comme modélisateur et programmeur.

Certains développeurs orientés objet vont faire de grands efforts pour économiser un peu de travail. Quand ils peuvent modéliser quelque chose et le réutiliser, ils sont intéressés. S'ils peuvent écrire une méthode (code de programme pour une opération) pour une classe seulement une fois et l'utiliser plusieurs fois, alors inscrivez-les pour une productivité plus élevée. Si vous voulez gagner du temps en spécifiant une fois les attributs et les opérations, puis en les réutilisant plusieurs fois, lisez la suite.

Lorsque vous définissez des classes, vous pouvez remarquer que certaines classes ont les mêmes attributs ou les mêmes opérations. Lorsque c'est le cas, vous placez ces fonctionnalités communes (attributs, opérations, etc.) dans une classe plus générique appelée superclasse . Les classes qui partagent les caractéristiques communes sont appelées sous-classes de la superclasse. Par exemple, la longueur du matériel enregistré sur une bande vidéo, une bande audio, un disque compact ou un film cinématographique est un attribut des quatre types de supports enregistrés. Ces classes peuvent également partager d'autres attributs, tels que leurs dimensions physiques et la date à laquelle chacun a été utilisé pour effectuer un enregistrement. Dans ce cas, la superclasse serait RecordedMedia, les sous-classes seraient Videotape, Audiotape, CompactDisc et MovieFilm, et certains attributs partagés pourraient inclure recordedLength et totalLength.

Ce processus de recherche d'attributs ou d'opérations similaires entre classes est connu sous le nom de généralisation . Par exemple, vous généraliser l'attribut recordLength dans une classe plus générique appelée RecordedMedia. Le processus pour montrer une généralisation en UML est simple:

1. Identifiez les sous-classes.

Recherchez des classes ayant les mêmes attributs et / ou opérations. Ces classes sont vos sous-classes.

2. Créer une superclasse.

Fournir une superclasse pour contenir les attributs communs et / ou les opérations des sous-classes. Donnez à la superclasse un nom qui catégorise toutes les sous-classes. Placer la superclasse au-dessus des sous-classes dans le diagramme facilite la lecture mais n'est pas nécessaire.

3. Ajoutez des fonctionnalités communes à la superclasse.

Supprimez les attributs communs et les opérations des sous-classes et placez-les (une fois) dans la superclasse.

4. Dessinez une relation de généralisation.

Vous tracez une ligne de généralisation de chaque sous-classe vers la superclasse. En UML, la ligne de généralisation est représentée par une ligne continue avec une pointe de flèche vide à l'extrémité de la superclasse. En UML, une ligne avec la pointe de flèche vide qui connecte une sous-classe à une superclasse s'appelle une relation de généralisation.

Après avoir créé une super-classe avec les caractéristiques communes telles que les attributs et les opérations, les sous-classes héritent de ces entités de la super-classe. De cette façon, il vous suffit d'écrire les caractéristiques communes une fois dans la superclasse au lieu de plusieurs fois dans chacune des sous-classes.

Vous pouvez dire si vous avez une généralisation en regardant la langue que vous (ou d'autres) utilisez pour décrire la relation entre les classes. Notez que dans la description des supports enregistrés et de ses différents types tels que la bande vidéo plus haut dans cette section, l'expression "quatre types de supports enregistrés" est apparue. Si vous vous trouvez en utilisant des expressions telles que «type de» ou «type de», alors vous avez une généralisation sur vos mains.

Supposons qu'un de vos clients se soucie de garder la trace des documents dans une archive. Ce client a accumulé différents types de supports d'enregistrement tels que des bandes vidéo et des bandes audio. En tant que modélisateurs, vous devez capturer les différences entre ces médias ainsi que leurs similitudes. Le diagramme de la figure 1 montre les débuts de plusieurs généralisations, organisées dans une hiérarchie d'héritage .

Figure 1: Hiérarchie d'héritage simple.

Les développeurs utilisent le terme de généralisation ou d'héritage pour désigner le même concept de réutilisation des attributs et des opérations partagés que vous affichez dans une superclasse et que vous réutilisez dans des sous-classes. La généralisation fait référence au concept de généralisation des spécificités (les sous-classes) au générique (la superclasse). L'héritage fait référence à l'effet de la généralisation sur les sous-classes.

Lorsque vous voyez une relation généralisation entre classes, sa signification est très différente de celle d'une relation association entre classes. Une association est finalement une relation parmi plusieurs objets - certaines instances d'une classe ont une relation (lien) avec les instances de l'autre classe. Dans une relation de généralisation entre classes , la relation concerne vraiment les classes. Le mieux que vous puissiez dire est qu'un objet créé à partir d'une sous-classe contient toutes les caractéristiques de la sous-classe et de la superclasse.

Vous n'avez qu'un objet d'une classe dans une relation de généralisation. Même si vous montrez deux classes, la sous-classe et la super-classe, vous n'avez qu'un objet créé. Vous pouvez penser à un objet de la classe Videotape étant également un objet de la classe RecordedMedia en raison de l'héritage. La figure 2 montre un objet créé à partir de la classe Videotape avec tous ses attributs.(L'instance d'une classe est représentée comme un symbole d'objet.) Vous n'avez pas deux objets différents (un pour RecordedMedia et un pour Videotape), juste un objet. Lorsque l'objet vtu83-1023 a été créé, toutes les valeurs de ses attributs ont été définies. L'enregistrement sur la bande est de 57 minutes. La longueur totale de la bande physique est de 60 minutes. Le ruban est une vidéocassette Umatic d'une hauteur de 10 pouces, d'une largeur de 7 pouces et d'une profondeur de 1,5 pouces. L'enregistrement est analogique et un journal du contenu de la bande est attaché à la bande pour que l'archiviste puisse s'y référer.

Figure 2: Une instance montrant tous les attributs hérités.

Vous n'avez qu'une seule instance définie par une sous-classe et sa superclasse. La sous-classe et la superclasse peuvent avoir une opération de constructeur (pour créer l'instance) et une opération de destructeur (pour détruire l'instance). Lorsque votre logiciel s'exécute et que vous créez une instance d'une sous-classe, le constructeur de la superclasse est exécuté en premier, suivi du constructeur de la sous-classe. Quand vient le temps d'éliminer l'instance que vous avez créée, le destructeur de la sous-classe est appelé en premier, suivi du destructeur de la superclasse. Si les choses sont plus complexes parce que vous avez des sous-classes de sous-classes, souvenez-vous simplement que: Les constructeurs sont invoqués du haut de la hiérarchie d'héritage au bas; les destructeurs sont appelés dans l'ordre de la sous-classe la plus basse jusqu'à la superclasse la plus élevée.

En généralisant en UML 2 - des nuls

Le choix des éditeurs

: Utilisation de l'équation du cercle standard - dummies

: Utilisation de l'équation du cercle standard - dummies

Si vous avez une question SAT Examen de mathématiques qui vous donne l'équation d'un cercle, vous aurez probablement besoin de convertir cette équation à l'équation du cercle standard. Les questions pratiques suivantes vous donnent l'équation d'un cercle et vous demandent de trouver son rayon et son centre. Questions d'entraînement Questions 1 et ...

SAT Pratique Mathématiques Questions: Séquences arithmétiques et géométriques - mannequins

SAT Pratique Mathématiques Questions: Séquences arithmétiques et géométriques - mannequins

Mathématiques implique parfois de reconnaître des schémas et de voir où ces modèles mènent. Le SAT vous demande parfois de jouer au mathématicien avec deux types de motifs: arithmétique et géométrique. Le mot mathématique pour le motif, en passant, est la séquence. Découvrez cette séquence arithmétique: 2, 5, 8, 11, 14 ... Notez que chaque nombre est ...

SAT Exercice de maths-FOIL Operations - mannequins

SAT Exercice de maths-FOIL Operations - mannequins

L'examen de mathématiques SAT vous posera quelques questions Vous devez savoir comment exécuter une opération FOIL, où vous multipliez un polynôme dans l'ordre: Premier, Extérieur, Intérieur et Dernier. Les questions de pratique suivantes vous demandent de trouver le produit de deux binômes et la valeur d'une variable en utilisant ...

Le choix des éditeurs

Prier le Rosaire et méditer sur les Mystères - mannequins

Prier le Rosaire et méditer sur les Mystères - mannequins

Selon la pieuse tradition catholique, au 13ème siècle Marie, la Mère de Dieu, est apparue à saint Dominique de Guzman, lui a donné un chapelet et a demandé qu'au lieu de prier les Psaumes sur des perles ou des noeuds, les fidèles prient l'Ave Maria, Notre Père et la Gloire soit. Quinze décennies ont constitué l'origine dominicaine ...

Dix choses à savoir sur le pape Benoît XVI - Paroisse

Dix choses à savoir sur le pape Benoît XVI - Paroisse

Le pape Benoît XVI a été élu en 2007 par le Collège des Cardinaux, et il a démissionné en 2012. Les controverses faisaient partie de son mandat. Il était le 265e pape de l'histoire de l'Église catholique romaine et le premier à démissionner en près de 600 ans.

La Réforme et l'Église Catholique - mannequins

La Réforme et l'Église Catholique - mannequins

Au Moyen Âge, la philosophie grecque (incarnée par Platon et Aristote ) a été utilisé pour aider à développer un chrétien, qui est devenu partenaire de la théologie sacrée. La langue latine était connue et utilisée - principalement dans des contextes religieux et juridiques. Les arts libéraux et les sciences religieuses ont été les principaux piliers de l'éducation universitaire et de la chrétienté ...

Le choix des éditeurs

Comment fonctionne BPaaS dans le monde réel du Cloud Computing - les nuls

Comment fonctionne BPaaS dans le monde réel du Cloud Computing - les nuls

Si vous avez décidé de utiliser BPaaS (Business Process as a Service) dans un modèle de cloud hybride en tant que plate-forme de prestation de services, vous devez comprendre comment combiner des services en fonction des processus que vous souhaitez exécuter. Comme le montre la figure suivante, un service de processus métier peut être lié à divers ...

Développer un environnement Cloud hybride sécurisé - des mannequins

Développer un environnement Cloud hybride sécurisé - des mannequins

Une approche réfléchie de la sécurité peut réussir à atténuer de nombreux risques de sécurité dans un environnement de cloud hybride. Pour développer un environnement hybride sécurisé, vous devez évaluer l'état actuel de votre stratégie de sécurité ainsi que la stratégie de sécurité proposée par votre fournisseur de cloud. Évaluer votre état actuel de sécurité Dans un environnement hybride, la sécurité ...

Gestion des charges de travail dans un modèle de cloud hybride - mannequins

Gestion des charges de travail dans un modèle de cloud hybride - mannequins

Modèle de nuage. La gestion, dans ce contexte, fait référence à la manière dont les ressources sont affectées pour traiter les charges de travail. Les affectations peuvent être basées sur la disponibilité des ressources, les priorités métier ou la planification d'événements. Dans l'ère de l'informatique mainframe unifiée, la gestion de la charge de travail était assez simple. Quand une tâche ...