Objektinis programavimas

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Peršokti į: navigaciją, paiešką

Objektinis programavimas, trumpiau OOP (angl. Object-Oriented Programming) – programavimo paradigma, kompiuterinių programų architektūroje naudojanti objektus ir jų sąveikas. Beveik visos dabartinės programavimo kalbos turi patogias OOP programavimo galimybes. Kai kurios yra pilnai sukurtos šiuo pagrindu, pavyzdžiui, Java, Smalltalk, C++, Delphi ar C#.

Objektiškai programuoti galima bet kuria kalba, tik jei nėra specialiai tam skirtų priemonių, gali būti žymiai sunkiau rašyti kodą ir jį suprasti.

Pagrindinės koncepcijos[taisyti | redaguoti kodą]

  • Objektas – duomenų ir susijusio funkcionalumo talpinimas į vientisus vienetus; objektai padeda pasiekti moduliškumą ir nusako objektinės programos struktūrą.
  • Abstrakcija – galimybė programuoti nežinant konkrečių detalių apie informaciją.
  • 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 interfeisą (sąsają), nusakančia galimybes manipuliuoti objektu.
  • Polimorfizmas – objektiškai orientuotos kalbos nekviečia paprogramių, bet siunčia pranešimus, todėl konkretus į pranešimą reaguojantis metodas priklauso nuo objekto, ne nuo siuntėjo. Tai leidžia dirbti su bendresnio tipo objektais (pvz., paukštis), nežinant konkretaus tipo (pvz., strutis ar pingvinas), dėl to nereikia kiekvienam konkrečiam tipui rašyti atskiro kodo.
  • Paveldėjimas- Objektų organizavimas specializuojant egzistuojančius bendresnius tipus, papildant ar iš dalies pakeičiant funkcionalumą.