- I-Object-oriented Programming (OOP) ihlela ikhodi ibe yizinto, yenza kube lula ukusetshenziswa futhi nokugcinwa.
- Amakilasi nezinto ziyisisekelo, lapho amakilasi echaza izakhiwo nezinto eziyisibonelo salezo zigaba.
- Imiqondo efana nefa, i-encapsulation, kanye ne-polymorphism ivumela ukumodela okungcono kokuziphatha nezici zento.
- Idizayini efanele yekilasi ithuthukisa ukufundeka kwekhodi nokugcinwa, kukhuthaze ukubambisana phakathi kwabahleli bohlelo.
Ingabe umusha ezinhlelweni noma ufuna nje ukwandisa amakhono akho ePython? Bese usendaweni efanele. Lesi sihloko sigxile ku-Python egxile entweni, indlela yokuhlela eyenza kube lula ukuhlela ikhodi nokudala izinhlelo zokusebenza eziqinile nezingakala. Sizofaka imiqondo eyisisekelo efana namakilasi, izinto, ifa kanye ne-encapsulation, ukuhlukanisa ulimi lobuchwepheshe ukuze lufinyeleleke kwabaqalayo. Ekupheleni kwalesi sihloko, uzoba nokuqonda okuqinile kwezisekelo futhi ulungele ukungena kumaphrojekthi ayinkimbinkimbi.
Iyini i-Object Oriented Programming?
I-Object-oriented Programming (OOP) iyipharadigm noma indlela yokuhlela eyimodeli yezinto zomhlaba wangempela njengezinto. Lezi zinto zinesimo, ukuziphatha, kanye nezakhiwo ezizichazayo.
I-OOP ikuvumela ukuthi udale ikhodi ehleleke kakhudlwana, eyimojuli, nelondolozekayo ngokupakisha idatha nokusebenza kuleyo datha ezintweni. Futhi kwenza kube nokwenzeka ukusebenzisa kabusha ikhodi phakathi kwamaphrojekthi ngefa lekilasi.
Kuyinsika eyisisekelo ekuthuthukisweni kwesoftware ngezinga elikhulu, lapho izigidi zemigqa yekhodi kufanele zihlelwe kahle ukuze amaqembu abahleli bohlelo akwazi ukusebenzisana ngokuphumelelayo.
I-Python ulimi olusekela i-OOP futhi lunikeza i-syntax elula necacile yokusebenzisa izici ezigxile ezintweni.
Object Oriented Python Basics
Ukuze uqonde ukuthi i-OOP isebenza kanjani, kuyadingeka ukwazi imiqondo ethile ebalulekile:
Amakilasi nezinto
Isigaba sichaza izakhiwo nezindlela ezijwayelekile kuzo zonke izinto zohlobo oluthile. Kufana nepulani noma isifanekiso okwakhiwa ngaso izinto.
Into iyisibonelo esisodwa sekilasi, esizuza njengefa zonke eziguquguqukayo nemisebenzi echazwe ekilasini. Into iqukethe idatha yangempela.
Isibonelo, ikilasi Lomuntu lizoba nezakhiwo ezifana negama, iminyaka, ubungcweti. Into ethile yesigaba somuntu izomela umuntu wangempela onedatha ephathekayo yalezo zakhiwo.
Isifinyezo
Kuyinqubo yokunciphisa into ibe nezici zayo ezibalulekile. Ukuziba imininingwane engabalulekile, sigxila kuzibaluli ezibalulekile nokuziphatha kwaleyo nto.
Amakilasi asebenza ukuze akhiphe izici ezibalulekile zohlobo lwento, ahlukanise ukusebenzelana komphakathi nemininingwane yokusetshenziswa eyimfihlo.
Ukugoqa
Kubhekiselwa kudatha yokupakisha nezindlela ezisebenza kuleyo datha ngaphakathi kweyunithi eyodwa noma ikhepsuli. Lokhu kufihla imininingwane yangaphakathi yokusebenzisa yento kwezinye izinto.
I-encapsulation ivikela ubuqotho bedatha ngokuvimbela ukufinyelela okuqondile kuyo futhi ivumele ukusebenzisana kuphela ngesixhumi esibonakalayo sekilasi.
Ifa
Kuyindlela evumela ukumodela ubudlelwano bezikhundla phakathi kwamakilasi, okubavumela ukuthi babelane ngokuziphatha okufanayo phakathi kwabo.
Ingane noma ikilasi elitholiwe lizuza njengefa izibaluli nezindlela zomzali noma isigaba sesisekelo. Lokhu kukhuthaza ukusetshenziswa kabusha kwekhodi kanye nobungcweti bekilasi.
I-Polymorphism
Kuyikhono lokusebenzisa isixhumi esibonakalayo esivamile sezinto zezinhlobo ezahlukene noma amakilasi. Ivumela umlayezo ofanayo ukuthi uthunyelwe ezintweni zezinhlobo ezahlukene.
Into ngayinye iphendula umlayezo ngendlela efanele isigaba sayo. Isibonelo, amakilasi ahlukene angasebenzisa indlela "yokukhuluma".
Ukudala amakilasi nezinto kuPython
Ake sibone ukuthi le miqondo ihumusheka kanjani kukhodi yePython:
I-syntax yekilasi
Ichazwa ngegama elingukhiye class kulandele igama lekilasi elinohlamvu lokuqala olubhalwe ngosonhlamvukazi. Igcina ngamaphuzu amabili futhi umzimba uhlehliswe.
class NombreClase: # atributos y métodos
umakhi
Kuyindlela ekhethekile __init__() okwenziwa lapho ikilasi liqiniswa ukudala into entsha. Isetshenziselwa ukuqalisa idatha yento.
class Persona:
def __init__(self, nombre, edad):
self.nombre = nombre
self.edad = edad
Ukudala izinto
Isibonelo sekilasi senziwa kusetshenziswa igama lekilasi. Amanani adluliswa kumapharamitha omakhi.
juan = Persona("Juan", 30)
Ukufinyelela izibaluli nezindlela
I-syntax yamachashazi isetshenziselwa ukufinyelela kuzimpawu nezindlela zento, njenge objeto.atributo.
# "Juan" juan.caminar() # ejecuta el método caminar
Izimiso zokuklama kwekilasi
Ngokungeziwe ku-syntax, kunezimiso nezinqubo ezinhle okufanele zisetshenziswe lapho kuklanywa amakilasi:
Ukugoqa
Memezela izimfanelo eziyimfihlo nge-underscore ephindwe kabili __. Ama-Getters nama-setter avumela ukufinyelela okulawulwayo.
Isifinyezo
Faka kuphela izibaluli ezibalulekile nezindlela. Fihla imininingwane yokusetshenziswa kumsebenzisi wekilasi.
Ukubumbana
Amakilasi kufanele abe nesibopho esisodwa, esichazwe kahle. Gwema amakilasi “kaNkulunkulu” anemisebenzi eminingi engahlobene.
Ukuhlanganisa okuphansi
Nciphisa ukuncika phakathi kwamakilasi. Xhumana kuphela ngezixhumi ezibonakalayo ezichazwe kahle.
Ifa lapho kufanele khona
Ifa kuphela uma kukhona ubudlelwano "bokuthi" phakathi kwamakilasi. Khetha ukwakheka kunefa elijulile.
Izinzuzo ze-OOP
Ikhodi eqondiswe kahle eqondiswe entweni inezinzuzo eziningi:
- Ikhuthaza ukusetshenziswa kwamaphethini wokuhlela kanye nezinqubo ezihamba phambili.
- Ikhodi efundeka kakhudlwana okulula ukuyiqonda, ukuyigcina nokuyilungisa.
- Izinto zihlanganisa ubunkimbinkimbi bangaphakathi.
- Ikhodi ingasetshenziswa kabusha phakathi kwamaphrojekthi ngokusebenzisa ifa lekilasi.
- Izixhumi ezibonakalayo zento ziyahambisana futhi zivame ukusetshenziswa.
- Ivumela abahleli bohlelo ukuthi basebenze ezingxenyeni ezihlukene zekhodi ngokuzimela.
- Ukukhomba nokuhlukanisa izimbungulu kulula uma zimbozwe ezintweni.
Ukuhlela okugxile entweni kubalulekile ekuthuthukisweni kwesofthiwe yobungcweti namuhla. Ngale mibono eyisisekelo ungaqala ukusebenzisa izinzuzo zayo kumaphrojekthi akho ePython.
Sicela wabelane ngale ndatshana uma ukuthole iwusizo ekuqaliseni emhlabeni wePython egxile entweni.