Objektinis programavimas: Skirtumas tarp puslapio versijų

Ištrintas turinys Pridėtas turinys
Šaltinis, papildyta
Vezhlys (aptarimas | indėlis)
S pataisymai
Eilutė 6:
Objektinis programavimas pagrįstas šiomis sampratomis:<ref>Turbo Pascal Version 5.5 Object-Oriented Programming Guide. 1989. [http://www.bitsavers.org/pdf/borland/turbo_pascal/Turbo_Pascal_Version_5.5_Object-Oriented_Programming_Guide_1989.pdf]</ref>
* [[Objektas (programavimas)|Objektas]] – programavimo vienetas, apimantis objektą aprašančią duomenų struktūrą bei darbui su ja skirtas funkcijas ([[Metodas (programavime)|metodus]]). Pati duomenų struktūra yra pirmasis šių funkcijų parametras. Daugelyje kalbų jis suprantamas savaime ir nerašomas, kitose (Python) rašomas kaip ''self''.
* [[Paveldėjimas (programavimas)|Paveldėjimas]]- Objektų organizavimas specializuojant egzistuojančius bendresnius tipus, papildant ar iš dalies pakeičiant funkcionalumą. Pavyzdžiui, galimas abstraktesnis objektas „vabzdys“ su vabzdžio elegesiuielgesiui ar išvaizdai modeliuoti skirtu kodu bei duomenų struktūromis. Jo pagrindu toliau gali būti kuriami objektai „musė“ ir „drugelis“ kur pridedama tik nedaug būtent šiam vabzdžiui specifinio kodo bei papildomų duomenų.
* [[Polimorfizmas (programavimas)|Polimorfizmas]] – galimybė dirbti su objektu nežinant jo tikslaus tipo bei struktūros. Pavyzdžiui, bet kokį vabzdį aprašantis objektas gali turėti funkciją (metodą) nupiešk, kurią iškvietus, priklausomai nuo objekto, ekrane bus atvaizduota musė, drugelis ar koks kitas vabzdys. Ši samprata dar vadimanavadinama „abstrakcija“, nes gali būti dirbama su „abstrakčiais objektais“. Patys objektai visgi turi apie save žinoti, kas jie yra. Techniškai objekto duomenų struktūroje būna jo tipą nusakantis laukelis.
* [[Inkapsuliacija]] (informacijos slėpimas) – užtikrina, kad objekto naudotojas negali pakeisti objekto būsenos nenumatytu būdu. Tik objekto vidiniai metodai turi galimybę keisti objekto būseną. Objektas pateikia [[interfeisas (programavimas)|interfeisą]] (sąsają), nusakančia galimybes manipuliuoti objektu.
* [[Klasė (programavime)|Klasė]] – konkretus objekto tipas. Pavyzdžiui, gali būti programa aprašanti 8000 bičių spiečių. Šiuo atveju kiekviena bitė gali būti objektas, turintis jam būdingas savybes (padėtis erdvėje, greitis). Visos jos gali būti vienos klasės (''Bitė'') objektai, ir kuo nors skirtis nuo kitus vabzdžius aprašančių klasių.