Innholdsfortegnelse
Siden oppstarten har objektorientering Det har vært en revolusjon i verden av programvareutvikling, siden visjonen om programmer som ligner ting i virkeligheten, gjør det veldig allsidig.Ved å bruke det til å bygge programmer, lar det oss implementere modulære metoder, slik at vi kan utvide funksjonaliteten til programmet ved å legge til nye moduler eller inkludere nye metoder i eksisterende moduler.
Objekter
Vi starter med objekter, siden det er en av enhetene vi vil bruke mest, kan vi definere objektet som en forekomst av en klasse, det vil si en enhet med attributtene til klassen allerede med verdier, med dette kan vi har mange forskjellige objekter, men en samme klasse, for eksempel en personklasse, to personer har forskjellige navn, forskjellige aldre, forskjellige høyder, men de kan gjøre de samme handlingene som å spise, gå, snakke, avhengig av nasjonalitet kan en person snakke Engelsk og den andre franskmannen, det vi nettopp gjorde er å instantiere to objekter.
I dette tilfellet er klassen en mal som vi kan lage objektene med når vi definerer en klasse i UML vi kan se det som en liste eller struktur som objektet skal opprettes under.
La oss se et eksempel med følgende graf:
Abstraksjon
Dette konseptet er veldig viktig, siden det lar oss bygge generelle klasser som vi kan gi liv til systemet vårt og spare arbeid med generering av påfølgende klasser.
Vi kan si at abstraksjon er definisjonen på en klasse med alle attributtene som virkelig er nødvendige og er det som gir klassen unikhet, det vil si attributter som en klasse ikke kan gjenspeile likheten i i virkeligheten.
Hvis vi ser på vårt forrige eksempel, ser vi at det er attributter uten som vaskemaskinklassen ville fortsette å definere en vaskemaskin, det vil si at de ikke endrer klassenes mening og betydning, når vi gjør denne analysen er vi gjør en abstraksjon av klasser.
Arv
Arv er et annet av punktene som gjør objektorientering så attraktiv, når vi gjør en god abstraksjon, sitter vi igjen med en ganske generell og bredspektret klasse, hva skjer hvis vi ønsker å detaljere noe mer spesifikt, skaper vi en ny klasse, men er det verdt å gjenta hvis denne klassen skal bære mange egenskaper fra vår generelle klasse?; Som du kanskje har trodd, er svaret nei, du trenger ikke å gjenta ting som allerede er gjort, for dette har vi arv der en klasse kan arve attributtene og metodene til en annen og på denne måten legge til sine egne attributter og metoder i for å oppnå sitt utmerkelse.
La oss se følgende bilde for å illustrere oss selv om saken: