Innehållsförteckning
Sedan starten har objektorientering Det har varit en revolution i mjukvaruutvecklingen, eftersom dess vision om program som liknar saker i verkligheten gör den mycket mångsidig.Genom att använda det för att bygga program, tillåter det oss att implementera modulära metoder, så att vi kan utöka programmets funktionalitet genom att lägga till nya moduler eller inkludera nya metoder i befintliga moduler.
Föremål
Vi börjar med objekt, eftersom det är en av de enheter som vi kommer att använda mest, kan vi definiera objektet som en förekomst av en klass, det vill säga en enhet med klassens attribut redan med värden, med detta kan vi har många olika objekt men en samma klass, till exempel en personklass, två personer har olika namn, olika åldrar, olika höjder, men de kan göra samma handlingar som att äta, gå, prata, beroende på deras nationalitet kan en person tala Engelska och de andra fransmännen, det vi just gjorde är att instansera två objekt.
I det här fallet är klassen en mall med vilken vi kan skapa objekten när vi definierar en klass i UML vi kan se det som en lista eller struktur under vilket objektet kommer att skapas.
Låt oss se ett exempel med följande graf:
Abstraktion
Detta koncept är mycket viktigt, eftersom det tillåter oss att bygga allmänna klasser som vi kan ge liv åt vårt system och spara arbete med generering av efterföljande klasser.
Vi kan säga att abstraktion är definitionen av en klass med alla attribut som verkligen är nödvändiga och är det som ger klassen unikhet, det vill säga attribut utan vilka en klass inte kan återspegla sin liknelse i verkliga livet.
Om vi tittar på vårt tidigare exempel ser vi att det finns attribut utan vilka tvättmaskinsklassen skulle fortsätta definiera en tvättmaskin, det vill säga att de inte ändrar klassens mening och betydelse, när vi gör denna analys är vi gör en abstraktion av klasser.
Arv
Arv är en annan av de punkter som gör objektorientering så attraktiv, när vi gör en bra abstraktion sitter vi kvar med en ganska allmän och bredspektrumklass, vad händer om vi vill detaljera något mer specifikt, vi skapar en ny klass, men om denna klass kommer att bära många attribut för vår allmänna klass, är det värt att upprepa?; Som du kanske har trott är svaret nej, du behöver inte upprepa saker som redan är gjorda, för detta har vi ett arv där en klass kan ärva attributen och metoderna för en annan och på detta sätt lägga till sina egna attribut och metoder i för att få dess åtskillnad.
Låt oss se följande bild för att illustrera oss själva i frågan: