Handledning för UML klassdiagram: Abstrakt klass med exempel

Vad är klass i UML-diagram?

A Klass i UML diagram är en ritning som används för att skapa ett objekt eller en uppsättning objekt. Klassen definierar vad ett objekt kan göra. Det är en mall för att skapa olika objekt och implementera deras beteende i systemet. En klass i UML representeras av en rektangel som innehåller rader med klassnamn, attribut och operationer.

Vad är klassdiagram?

A Klassdiagram i mjukvaruteknik är en statisk struktur som ger en översikt över ett mjukvarusystem genom att visa klasser, attribut, operationer och deras relationer mellan varandra. Detta diagram inkluderar klassnamn, attribut och operation i separata avsedda fack. Klassdiagram hjälper till att konstruera koden för programutvecklingen.

Klassdiagram definierar typerna av objekt i systemet och de olika typer av relationer som finns mellan dem. Det ger en överblick över en applikation på hög nivå. Denna modelleringsmetod kan köras med nästan alla objektorienterade metoder. En klass kan hänvisa till en annan klass. En klass kan ha sina objekt eller kan ärva från andra klasser.

Fördelar med klassdiagram

  • Klassdiagram Illustrerar datamodeller för även mycket komplexa informationssystem
  • Den ger en översikt över hur applikationen är uppbyggd innan man studerar själva koden. Detta kan lätt minska underhållstiden
  • Det hjälper för bättre förståelse av allmänna scheman för en applikation.
  • Gör det möjligt att rita detaljerade diagram som framhäver kod som måste programmeras
  • Till hjälp för utvecklare och andra intressenter.

Väsentliga delar av ett UML-klassdiagram

Väsentliga delar av UML klassdiagram är:

  1. Klassnamn
  2. attribut

Klassnamn

Klassnamn i UML

Namnet på klassen behövs endast i den grafiska representationen av klassen. Den visas i det översta facket. En klass är ritningen av ett objekt som kan dela samma relationer, attribut, operationer och semantik. Klassen återges som en rektangel, inklusive dess namn, attribut och operationer i speratfack.

Följande regler måste beaktas när du representerar en klass:

  1. Ett klassnamn ska alltid börja med stor bokstav.
  2. Ett klassnamn ska alltid stå i mitten av det första facket.
  3. Ett klassnamn ska alltid skrivas in nål format.
  4. UML abstrakt klassnamn ska skrivas i kursivt format.

attribut

Ett attribut kallas egenskap för en klass som beskriver objektet som modelleras. I klassdiagrammet är denna komponent placerad precis under namnfacket.

Attribut i UML

Ett härlett attribut beräknas från andra attribut. Till exempel kan en elevs ålder lätt beräknas från hans/hennes födelsedatum.

Attribut i UML

Attribuerar egenskaper

  • Attributen skrivs vanligtvis tillsammans med synlighetsfaktorn.
  • Offentlig, privat, skyddad och paketerad är de fyra synligheterna som betecknas med +, -, #, respektive ~-tecken.
  • Synlighet beskriver tillgängligheten för ett attribut för en klass.
  • Attribut måste ha ett meningsfullt namn som beskriver användningen av det i en klass.

Förhållanden

Det finns huvudsakligen tre typer av relationer i UML:

  1. beroenden
  2. Generaliseringar
  3. Föreningar

Dependency

Ett beroende betyder förhållandet mellan två eller flera klasser där en förändring i den ena kan framtvinga förändringar i den andra. Det kommer dock alltid att skapa en svagare relation. Beroende indikerar att en klass beror på en annan.

I följande exempel på UML-klassdiagram har Student ett beroende av College

Relationer i UML

Generalisering:

Relationer i UML

En generalisering hjälper till att koppla en underklass till dess superklass. En underklass ärvs från sin superklass. Generaliseringsrelation kan inte användas för att modellera gränssnittsimplementering. Klassdiagram tillåter ärvning från flera superklasser.

I det här exemplet är klassen Student generaliserad från Personklass.

Förening:

Denna typ av relation representerar statiska samband mellan klasserna A och B. Till exempel; en anställd arbetar för en organisation.

Här är några regler för föreningen:

  • Association är mest verb eller en verbfras eller substantiv eller substantivfras.
  • Den ska namnges för att ange vilken roll klassen spelar i slutet av föreningsvägen.
  • Obligatorisk för reflexsammanslutningar

I det här exemplet visas förhållandet mellan student och högskola vilket är studier.

Relationer i UML

Mångfald

Relationer i UML

En multiplicitet är en faktor som är associerad med ett attribut. Den anger hur många instanser av attribut som skapas när en klass initieras. Om en multiplicitet inte är specificerad, betraktas en som standard som en standard multiplicitet.

Låt oss säga att det finns 100 studenter på en högskola. Högskolan kan ha flera studenter.

aggregation

Aggregation är en speciell typ av association som modellerar ett hel-delförhållande mellan aggregat och dess delar.

Relationer i UML

Till exempel består klasshögskolan av en eller flera elever. Sammantaget är de inneslutna klasserna aldrig helt beroende av behållarens livscykel. Här kommer högskoleklassen finnas kvar även om eleven inte är tillgänglig.

Sammansättning:

Relationer i UML

Sammansättningen är en speciell typ av aggregering som betecknar starkt ägande mellan två klasser när en klass är en del av en annan klass.

Till exempel, om college består av klasser student. Högskolan skulle kunna innehålla många studenter, medan varje student bara tillhör en högskola. Så om högskolan inte fungerar tas alla elever också bort.

Aggregation vs. sammansättning

aggregation Sammansättning
Aggregation indikerar ett förhållande där barnet kan existera separat från sin föräldraklass. Exempel: bil (förälder) och bil (barn). Så, om du tar bort bilen, finns barnbilen fortfarande. Composition display relation där barnet aldrig kommer att existera oberoende av föräldern. Exempel: Hus (förälder) och Rum (barn). Rum kommer aldrig att separeras i ett hus.

Abstrakta klasser

Det är en klass med en operationsprototyp, men inte implementeringen. Det är också möjligt att ha en abstrakt klass utan några operationer deklarerade inuti den. En sammanfattning är användbar för att identifiera funktionaliteterna över klasserna. Låt oss betrakta ett exempel på en abstrakt klass. Anta att vi har en abstrakt klass som kallas en rörelse med en metod eller en operation deklarerad inuti den. Metoden som deklareras i den abstrakta klassen kallas a flytta ().

Denna abstrakta klassmetod kan användas av alla objekt som en bil, ett djur, robot, etc. för att ändra den aktuella positionen. Det är effektivt att använda denna abstrakta klassmetod med ett objekt eftersom ingen implementering tillhandahålls för den givna funktionen. Vi kan använda det på vilket sätt som helst för flera objekt.

I UML har den abstrakta klassen samma notation som klassens. Den enda skillnaden mellan en klass och en abstrakt klass är att klassnamnet strikt är skrivet i kursiv stil.

En abstrakt klass kan inte initieras eller instansieras.

Abstrakt klassnotation
Abstrakt klassnotation

I ovanstående abstrakt klassnotation, det finns den enda abstrakta metoden som kan användas av flera objekt i klasser.

Exempel på UML klassdiagram

Att skapa ett klassdiagram är en enkel process. Det handlar inte om många tekniska detaljer. Här är ett exempel:

Uttagsautomater är mycket enkelt eftersom kunder måste trycka på några knappar för att få kontanter. Det finns dock flera säkerhetslager som alla ATM-system måste klara. Detta hjälper till att förhindra bedrägerier och tillhandahåller kontanter eller behovsinformation till bankkunder.

Nedan ges ett exempel på ett UML-klassdiagram:

Exempel på UML-klassdiagram

Exempel på UML-klassdiagram

Kontrollera också: - UML-diagram: Historik, typer, egenskaper, versioner, verktyg

Klassdiagram i mjukvaruutvecklingslivscykeln

Klassdiagram kan användas i olika programvaruutvecklingsfaser. Det hjälper till att modellera klassdiagram i tre olika perspektiv.

1. Konceptuellt perspektiv: Konceptuella diagram beskriver saker i den verkliga världen. Du bör rita ett diagram som representerar begreppen i den domän som studeras. Dessa begrepp relaterade till klass och det är alltid språkoberoende.

2. Specifikationsperspektiv: Specifikationsperspektiv beskriver mjukvaruabstraktioner eller komponenter med specifikationer och gränssnitt. Den ger dock inte något åtagande till ett specifikt genomförande.

3. Implementeringsperspektiv: Denna typ av klassdiagram används för implementeringar i ett specifikt språk eller applikation. Implementeringsperspektiv, användning för mjukvaruimplementering.

Bästa metoder för utformning av klassdiagrammet

Klassdiagram är de viktigaste UML-diagrammen som används för utveckling av mjukvaruapplikationer. Det finns många egenskaper som bör beaktas när man ritar ett klassdiagram. De representerar olika aspekter av en mjukvaruapplikation.

Här är några punkter som du bör tänka på när du ritar ett klassdiagram:

  • Namnet på klassdiagrammet måste vara meningsfullt. Dessutom bör den beskriva den verkliga aspekten av systemet.
  • Relationen mellan varje element måste identifieras i förväg.
  • Ansvaret för varje klass måste identifieras.
  • För varje klass ska minsta antal fastigheter anges. Därför kan oönskade egenskaper lätt göra diagrammet komplicerat.
  • Användaranteckningar bör inkluderas när du behöver definiera någon aspekt av diagrammet. I slutet av ritningen måste det vara begripligt för mjukvaruutvecklingsteamet.
  • Slutligen, innan du skapar den slutliga versionen, måste diagrammet ritas på vanligt papper. Dessutom bör den omarbetas tills den är klar för slutlig inlämning.

Slutsats

  • UML är standardspråket för att specificera, designa och visualisera artefakter av mjukvarusystem
  • En klass är en ritning för ett objekt
  • Ett klassdiagram beskriver typerna av objekt i systemet och de olika typer av relationer som finns mellan dem
  • Det möjliggör analys och design av den statiska vyn av en mjukvaruapplikation
  • Klassdiagram är de viktigaste UML-diagrammen som används för utveckling av mjukvaruapplikationer
  • Väsentliga delar av UML klassdiagram är 1) Klass 2) Attribut 3) Relationer
  • Klassdiagram ger en översikt över hur applikationen är uppbyggd innan man studerar själva koden. Det minskar definitivt underhållstiden
  • Klassdiagrammet är användbart för att kartlägga objektorienterade programmeringsspråk som Java, C++Rubin, PythonEtc.

Kontrollera också: - Handledning för UML-diagram för nybörjare: Lär dig UML online GRATIS

Sammanfatta detta inlägg med: