9-Lekciya. Kotlin tilinde klass ha’m Obyektler
Reje:
1. Obyekt haqqinda baslanǵish tu’snikler
2. Obikettin’ tu’rleri ha’m onin’ qollaniliwi
3. Klass haqqinda maǵliwmatlar.
4. Ob'ekttiń wákilligi - bul klass.
5. Kotlin ortaliǵinda misallar menen ko’rip shiǵiw.
Obyekt – Obyektke jóneltirilgen programmalastırıw (OJP) programmalastırıw texnologiyasınıń eń tiykarǵı gilt túsinigi bolıp tabıladı. Átirapǵa qaran’, haqıyqıy turmısdaǵı bir neshe Obyektlerdi kóriwińiz múmkin:stol, úy, qálem, motosikil, televizor hám t.b
Olardıń hámmesiniń álbette qásiyetleri hám atqaratuǵın wazıypaları (funksiyaları) bar. Mısalı, Pıshıq qásiyetleri: reńi, qarni to'qligi, jası, jinsi; funksiyaları: awqat jewi, miyawlawi, júriwi, tıshqan tutıwı. Mashina qásiyetleri: tezligi, reńi, atı, bahası; funksiyaları : júriwi, toqtap qalıwı, ayna tazalaǵishinin' islewi, qapılardıń ashılıp jabılıwı hám t.b. Bul sıyaqlı turmıslıq mısallardıń qásiyetleri hám funksiyaların anıqlaw OJP kózqarasınan pikirlewdiń eń zor kórinisi bolıp tabıladı.
Bir minutaǵa toqtań hám házirde átirapingizdagi geypara zatlardı analiz etiń. Hár bir Obyekt ushın ózińizden so'ran': “Bul Obyekttiń qanday qásiyetleri bar?”, “Qanday wazıypalardı atqaradı?” sıyaqlı. hám baqlaw nátiyjelerińizdi jazıp alın’, sezgen bolsańız dúziletuǵın dizim Obyekttiń quramalılıǵına qaray kóbeyip baradı. Kompyuter indikatorining 2 qásiyeti bar óshiq hám janıq; funksiyaları bolsa janıw hám óshiw. Bul barlıq baqlawlar OJP dúnyasına ótkeriw múmkin.
Programmalastırıwdaǵı Obyekt.
Programmalastırıwdaǵı Obyekt (endigiden ápiwayı ǵana Obyekt dep aytiladi) haqıyqıy turmısdaǵı Obyektlerge uqsas: Olar qanday da qásiyetler hám atqaratuǵın funksiyalardan ibarat boladı. Obyekttiń qásiyetleri hár túrlı programmalıq ózgeriwshilerden ibarat boladı hám olardıń ózgertiw ushın qanday da funksiyalar atqarıladı. Bunday funksiyalar menen ózgeriwshilerdiń jaǵdayın jasırıw múmkin yaǵnıy áyne sol ózgeriwshin’ sırttan ózgertiw ushın álbette arnawlı funksiyadan paydalanıw kerek boladı. Bul process penen “Enkapsulatsiya” dep atalip, OJPnin’ eń áhmiyetli túsiniklerinen biri bolıp tabıladı.
Mashinanı OJPa sawlelendiriw,
Onı programmalastırıw Obyekti retinde modellestiremiz:
Onıń ózgeriwshileri (házirgi tezligi, qalǵan benzini, hám t.b) jáne onıń funksiyaları (toqtatıw, tezlikti asırıw, rolni burıw hám t.b.). Bul jerde onıń bakindaǵi benzini júriwi sebepli azayıp baradı sonday eken onıń ma`nisiniń ózgeriwi 0 den baktin’ sıyımlılıǵına shekem boladı, yamasa onıń tezligi de sol sıyaqlı aniq bolıp tabıladı funksiyalardıń ámelge asırılıwı arqalı ol da 0 den maksimal tezligine shekem ózgeriwi múmkin. Bulardan tısqarı mashinanıń bazi bir qásiyetleri bar olar ózgermeytuǵınlıǵı múmkin, mısalı reńi.
Sonday eken, kórinip turipti mashina da óz gezeginde bir neshe mayda obyeklardan ibarat boladı hám álbette olardı kodta jazǵanda da bólek Obyekt retinde ańlatıw kerek bul arqalı nelerge erisiw múmkin:
Bóleklilik: Hár bir Obyektke tiyisli bolǵan kodlar bólek-bólek, basqa obyeklarǵa baylanıslı bolmaǵan halda basqarıw múmkinshiligine iye bolamız. Bul hámmesi emes, OJPa sa’wlelendiriw mashina Obyektin ańlatiwshı kodtı bolmaytuǵin tek bir faylda ańlatpaladik; bul bolsa quramalılıǵına qaray júzlegen hátte mińlaǵan qatarlı kod bolıwı múmkin. Odan geypara zattı tawıp -ózgertrish talay qıyınshılıq boladı.
Qayta paydalanıw: Taǵı basqa paydalı tárepi biz bóleklegen mashinanıń detallarin basqa Obyektlerde de isletiwimiz múmkin. Mısalı, 2 qıylı mashina olardıń áyne birdey bólimleri bar, áne sol ushın eki ret bólek kod jazbastan, bir jazǵanimizni qayta isletiwimiz múmkin.
U'zilip-baylanisiw: bunı túsiniw ushın joqarıdaǵı mısaldan paydalanamız, aytayiq, mashinanıń qandayda bir bólegi islemey atir, al ne islemiz? Sol bólekti islep turǵan basqa ıqtıyat bólekke almastıramız, yamasa on'laymiz. Mashinanıń qandayda bir vinti buzilsa onı basqa islep turǵanı menen almastırasız yamasa dúzetamiz lekin mashinanı pútkilliginshe almastırmaymiz.
OJPnin' tiykarǵı túsinikleri
Obyekke jóneltirilgen programmalastırıw yamasa OJP - haqıyqıy turmıslıqqa tiykarlanǵan programmalastırıw usılı bolıp tabıladı. Taǵı proceduralı programmalastırıw tilleri (mısalı, Paskal, Basic, Fortan) da bar. OJP dıń odan tiykarǵı ayırmashılıǵı sonda, OJP tiykarınan Obyektlerge tiykarlanǵan halda islese, proceduralı programmalastırıw tilleri bolsa tiykarınan funktsiyalarǵa tiykarlanǵan boladı yaǵnıy bul usıldaǵı programmalastırıwda hár bir buyrıqlar qádembeqádem atqarılıp barıladı. Mısalı: fayldı ash, nomerdi oqi, 4 ke ko'beyit hám ekranǵa shıǵar.
OJPlardi qurawshilar olar:
• Object - Obyekt
• Class penen- Klass
• Inheritance - Miyraslar alıw
• Polymorphism - Kóp formalık
• Abstraction - Abstraktlıq
• Encapsulation - Enkapsulyatsiya (Kapsula ishine jaylastiriw)
Object - Obyekt klass penen túrindegi ózgeriwshi. Obyekt bul klass menen ayrıqsha túsinik esaplanadi. Obyekt biz jazǵan klassimizdagi hár túrlı qaǵıydalarǵa boysunatuǵın maǵlıwmat bolıp, ol operativ yadta saqlanadı, klass penen bolsa qattı diskta saqlanadı. Hár bir jasalǵan Obyekt operativ yaddıń málim bir bo’leklerine jaylasadı. Mısalı, kóp qabatlı imarat operativ yad dep qarasaq. Ol jaǵdayda jasawshı insanlar bolsa saqlanıwshı Obyektler bolıp. Eger biz Insannıń qásiyetleri, atqaratuǵın jumısları hám taǵı basqa qásiyetleri haqqındaǵı bilimlerdi qaǵazǵa tu’sirsek bul qaralamani klass penen dep qaralıwı múmkin eger ol texnikalıq usılda jazılmaǵan sonda da. Biz áne sol qaralamani klassimizda kompyuter túsinetuǵın tilge keltiremiz.
Class penen- OJPnin’ orayi esaplanadı hám ol hár túrlı kodlar, maǵlıwmatlar hám sol maǵlıwmatlar qaysı tárizde ózgeriwin ańlatiwshı qásiyetler saqlanadı. Basqashalaw etip aytatuǵın bolsaq turmıslıq Obyektlerdiń qanday xızmet kórsetiwi, nelerden ibarat ekenligi, qanday qásiyetlerge iye ekenligin xarakteristikalaytuǵın kishi bir hújjet retinde qaraw da múmkin. Javada hámme zat Klass penen ishinde júz boladı. Klass penen óz ishine ózgeriwshiler hám metodlar (funksiyalar) hám ma`nisi ózgermeytuǵın konstantalarni aladı. Taǵı sonı da atap ótiw kerek, hár bir klass penen bir ózgeriwshi túri bolıp da xizmet etedi. Tap Integer, String yamasa basqa túrler sıyaqlı hár bir klass penenda málim bir tur retinde qaralıwı múmkin.
1. data member - ózgeriwshiler
2. method - funksiya
3. constructor - kontruktor (Obyekt dáslepki jaǵdayında isleydi)
4. block - blok ({} qawıslar arası blok esaplanadı )
5. class penenand interface - klass penenhám interfeys
Ózgeriwshiler - Obyektlarimizni ózgeriwshi retinde de qarawımız múmkin bunda onıń bahaları ózgeriwi múmkin. Mısalı Insan classimizda insannıń júriw tezligi ózgeredi bunda onıń tezligi qanday da sanlarda ózgeredi mısalı júr () metodınan yugur () metodına ótkende yamasa toqta () metodına ótkende onıń tezligi ózgeredi. Sol hám soǵan uqsas Obyektler ózgeriwshiler dep júritiledi.
Do'stlaringiz bilan baham: |