Nøkkelforskjellen mellom klassediagram og objektdiagram er at klassediagrammet representerer klassene og deres relasjoner mellom dem, mens objektdiagrammet representerer objektene og deres relasjoner mellom dem på et bestemt tidspunkt.
UML står for Unified Modeling Language. Det hjelper å modellere de objektorienterte konseptene for å utvikle programvareløsninger. UML-diagrammer gir ulike fordeler som å forstå forretningskrav og å få en forståelse på høyt nivå av systemfunksjonene. Det er to hovedtyper av UML-modellering. De er strukturell modellering og atferdsmodellering. Strukturert modellering beskriver de statiske egenskapene til systemet. På den annen side beskriver atferdsmodellering systemets dynamiske natur. Klassediagrammet og objektdiagrammet er to strukturelle UML-diagrammer.
Hva er klassediagram?
Et klassediagram representerer en statisk visning av systemet. Den beskriver attributtene og operasjonene til klasser. Klassediagrammer er det mest brukte modelleringsdiagrammet for objektorienterte systemer fordi de kan kartlegges direkte med objektorienterte språk.
Figur 01: Klassediagram
Ovenfor er et enkelt eksempel på et klassediagram. Det er et online bestillingssystem. Bruker, Kunde, Administrator, Ordre, Ordredetaljer er klasser. Hver klasse består av attributter og metoder. Attributter beskriver egenskapene mens metoder beskriver atferd eller operasjoner.
I et klassediagram representerer et rektangel klassen. Den deler seg videre i tre seksjoner. Den øverste delen er å skrive navnet på klassen. Den midterste delen er for attributter, og den siste delen er for metoder. Kundeklassen har attributter som navn, adresse, e-post, kunde-ID, kontosaldo og metoder som registrering, pålogging og kjøp.
Attributter og metoder
Attributtene og metodene har et symbol for å indikere synligheten. – representerer privat. De andre klassene har ikke tilgang til de private medlemmene. De er bare synlige for den spesifikke klassen. + representerer offentlig og andre klasser har tilgang til disse medlemmene. Vanligvis er klasseattributtene private, og metodene er offentlige. Det er en annen synlighet. Dette kalles beskyttet, og -symbolet representerer det. Bare de samme klasse- og underklassemedlemmene har tilgang til de beskyttede medlemmene.
Brukeren er den generelle formen for administrator og kunde. Disse to klassene kan ha attributtene og metodene til brukerklassen så vel som sine egne attributter og metoder. Brukerklassen er den overordnede klassen, mens kunde- og administratorklassen er underklassen. Dette konseptet kalles generalisering.
Kunden og bestillingen har sammensetningsforholdet. Ordreklassen kan ikke eksistere uten kundeklassen. Ordren og ordredetaljene har sammensetningsforholdet. Derfor kan ikke OrderDetails-klassen eksistere uten Order-klassen.
Klassediagrammet representerer også mangfold. Når det refereres til kunde- og ordreforholdet, kan kunden ha null eller mange bestillinger. På den annen side tilhører en ordre kun én kunde. Ordren og OrderDetails har 1 til 1 relasjon. En ordre kan bare ha én ordredetaljer. Dette er noen grunnleggende informasjon om klassediagrammer.
Hva er objektdiagram?
Et annet strukturdiagram er et objektdiagram. Det ligner på et klassediagram, men det fokuserer på objekter. De grunnleggende konseptene for objektdiagram ligner på et klassediagram. Disse diagrammene hjelper deg med å forstå objektadferd og deres relasjoner i et bestemt øyeblikk.
Figur 02: Objektdiagram
s1, s2 og s3 er studentobjekter, og de melder seg på c1 emneobjekt. l1 foreleserobjektet underviser i emnet c1. Foreleserobjektet l2 underviser i spesialkurset c2. Student s3 melder seg på c1 kurs samt c2 spesialkurs. Dette diagrammet illustrerer hvordan et sett med objekter forholder seg til hverandre. Tot alt sett representerer et objektdiagram den statiske visningen av et system, men spesifikt representerer det en statisk visning av systemet i et bestemt øyeblikk.
Hva er forskjellen mellom klassediagram og objektdiagram?
Et klassediagram er en type statisk strukturdiagram som beskriver strukturen til systemet ved å vise klassene, deres attributter, metoder og forholdet mellom klassene. Et objektdiagram er også en type statisk strukturdiagram som viser en fullstendig eller delvis oversikt over strukturen til et modellert system på et bestemt tidspunkt.
I tillegg definerer klassediagrammer klasser og viser hvordan de forholder seg til hverandre. Objektdiagrammer viser objektene og deres relasjoner. Klasser er tegningene og objekter er forekomster av klasser. Dette er hovedforskjellen mellom klassediagram og objektdiagram.
Videre, i et klassediagram, begynner klassenavnet med store bokstaver. f.eks. Student. I et objektdiagram er objektnavnet med små bokstaver, og det er understreket. f.eks. s1: Student
Sammendrag – Klassediagram vs objektdiagram
Både klasse- og objektdiagrammer representerer statiske trekk ved et system. Forskjellen mellom klassediagram og objektdiagram er at klassediagram representerer klassene og deres relasjoner mellom dem, mens objektdiagram representerer objektene og deres relasjoner mellom dem i et bestemt øyeblikk. Disse diagrammene hjelper deg med å få en forståelse av systemet på høyt nivå.