Objekt-orienteeritud programmeerimine

Objeckt

Objekt kirjeldab ära konkreetse loogilise kogumi

näiteks õues olev punane auto on üks objekt

selle taga olev roheline auto on teine objekt jne

Tavaliselt mõtleme me arvust kui ühest väärtusest (nt 7)

Objekt koosneb tavaliselt mitmest väärtusest

värv, mark, mudel, pikkus, registrimass jne

Klass

Klass kirjeldab ära srtuktuuri

näiteks autol on värv, pikkus jne

Klass (üldiselt) ei sisalda andmeid

Klass on andmetüüp

Samatüüpi andmed pärinevad kõik ühest klassist

punane auto on auto, roheline auto on auto jne

Kuigi meil on maailmas mitu autot (objekti), siis meil on ü auto

OOP

OOP on programmeerimise paradigma, mis kasutab objekte

Python on objekti-orienteeritud programmeerimiskeel

Pythonis kõik asjad on objektid

OOP tehnikad

Kapseldamine (encapsulation)

funktsionaalsus peidetakse

Modulaarsus (modularity)

programm jagatakse iseseisvateks tükkideks

Polümorfism (polymorphism)

alamklass saab meetodeid üle kirjutada

Pärimine (inheritance)

alamklass pärib omadused ja meetodid

Sõne

  • Sõne on objekt
  • Kui loote uue sõne, siis tegelikult luuakse uus objekt, mille tüüp on str.
  • Sõne “funktsioone” kutsutakse meetoditeks
  • Loome sõne s ja küsime selle tüübi. Tüüp on str klass
  • id tagastab objekti kohta unikaalse arvu. Kui id on erinev, siis on ka objekt erinev (st mälus erinevas kohas)
  • replace teeb uue sõne, seda näeme ka id-ga