OBYEKTGA YOʻNALTIRILGAN DASTURLASH TARIXI VA QOʻLLANISH SOHASI
MAVZU: OBYEKTGA YO NALTIRILGAN DASTURLASH ʻ TARIXI VA QO LLANISH SOHASI ʻ MUNDARIJA: KIRISH I BOB. OBYEKTGA YO’NALTIRILGAN DASTURLASH 1.1. Oyd asosiy tushunchasi 1. 2. Oyd qo’llash sohalari II. OYD TARIXI VA RIVOJLANISHI 2.1. 2.1. OYD rivojlanish tarixi. 2.2. Yangi versiyalarning davriy chiqarilishi. XULOSA FOYDALANILGAN ADABIYOTLAR RO’YXATI 1
KIRISH Obyekt nima? Obyekt Obyektga yo'naltirilgan dasturlash(OYD) texnologiyasining eng asosiy kalit tushunchasidir. Atrofga qarang, haqiqiy hayotdagi bir necha obyektlarni ko'rishingiz mumkin: stol, uy, it, mushuk, televizor va h.k. Ularning barchasining albatta hususiyatlari va bajaradigan vazifalari (funktsiyalari) bor. Masalan, Mushuk hususiyatlari: rangi, qorni to'qligi, yoshi, jinsi; funktsiyalari: ovqat yeyishi, myovlashi, yurishi, sichqon tutishi. Mashina, hususiyatlari: tezligi, rangi, nomi, narxi; funktsiyalari: yurishi, to'xtashi, oyna artgichlarining ishlashi, eshiklarning ochilib yopilishi v.h.k. Bu kabi hayotiy misollarning hususiyatlari va funktsiyalarini aniqlash OYD nuqtai nazaridan fikrlashning eng zo'r ko'rinishidir. Bir daqiqaga to'xtang va hozirda atrofingizdagi biror narsalarni analiz qiling. Har bir obyekt uchun o'zingizdan so'rang: "Bu obyektning qanday hususiyatlari bor?" , "Qanday vazifalarni bajaradi?" kabi. Va kuzatish natijalaringizni yozib oling, sezgan bo'lsangiz tuziladigan ro'yxat obyektning murakkabligiga qarab ko'payib boradi. Kompyuter indikatorining 2 ta hususiyati bor o'chiq va yoniq; funktsiyalari esa yonish va o'chish. Bu barcha kuzatishlar OYD dunyosiga o'tkazish mumkin. 2
Dasturlashdagi obyekt. Dasturlashdagi obyekt(bundan keyin oddiygina obyekt deb ketiladi) ham haqiqiy hayotdagi obyektlarga o'xshash: Ular ham qandaydir hususiyatlar va bajaradigan funktsiyalardan iborat bo'ladi. Obyektning hususiyatlari har xil dasturiy o'zgaruvchilardan iborat bo'ladi va ularning o'zgartirish uchun qandaydir funktsiyalar bajariladi. Bunday funktsiyalar bilan o'zgaruvchilarning holatini berkitish mumkin ya'ni aynan o'sha o'zgaruvchini tashqaridan o'zgartirish uchun albatta maxsus funktsiyadan foydalanish kerak bo'ladi. Bu jarayon " Enkapsulatsiya " deb atalib, OYDning eng muxim tushunchalaradian biridir. Hech e'tibor berganmisiz dorilarda ham shu termin ishalitladi ya'ni kapsula(ustidan maxsus modda bilan o'ralgan dorilar), buni misolni Enkapsulatsiya jarayoni esda yaxshi qolishi va tushunarli bo'lishi uchun keltirdim. Mashinani tasavvur qiling, Uni dasturlash obyekit sifatida modellashtiramiz: Uning o'zgaruvchilari( hozirgi tezligi, qolgan benzini, va h.k) va uning funktsiyalari(to'xtatish, tezlikni oshirish, rulni burish, va h.k.). Bu yerda uning bakidagi benzini yurishi tufayli kamayib boradi demak uning qiymatining o'zgarishi 0dan bakning sig'imigacha bo'ladi, yoki uning tezligi ham shu kabi aynan qaysidir funktsiyalarning amalga oshirilishi orqali u ham 0 dan maksimal tezligigacha o'zgarishi mumkin. Bulardan tashqari mashinaning ba'zi hususiyatlari borki ular o'zgarmasligi mumkin, masalan, rangi. Demak, ko'rinib turiptiki mashina ham o'z navbatida bir necha mayda obyeklardan iborat bo'ladi. Va albatta ularni kodda yozganda ham alohida obyekt sifatida ifodalash kerak bu orqali nimalarga erishish mumkin: 1. Qismlilik: Har bir obyektga tegishli bo'lgan kodlar alohida-alohida, boshqa obyeklarga bog'liq bo'lmagan holda boshqarish imkoniyatiga ega bo'lamiz. Bu hammasi emas, tasavvur qiling mashina obyektini ifodalovchi kodni bo'lmasdan 3
faqat bitta faylda ifodaladik; bu esa murakkabligiga qarab yuzlab hatto minglab qatorli kod bo'lishi mumkin. Undan biror narsani topib-o'zgartrish ancha mashaqqat bo'ladi. 2. Qayta foydalanish: Yana boshqa plyus tarafi biz bo'laklagan mashinaning detallarini boshqa obyektlarda ham ishlatishimiz mumkin. Masalan, 2 xil mashina ularning shunday qismlari borki aynan bir xil, ana o'shalar uchun ikki marta alohida kod yozmasdan, bitta yozganimizni qayta ishlatishimiz mumkin. 3. Uzib-ulanuvchanligi: buni tushunish uchun yuqoridagi misoldan foydlanamiz, aytaylik, mashinaning biror qismi ishlamayapti, xo'sh nima qilinadi? yoki ishlab turgan boshqasiga almashtiramiz, yoki tuzatamiz. Mashinaning biror bolti buzilsa uni boshqa ishlab turgani bilan almashtirasiz yoki tuzatamiz lekin mashinani almashtirmaymiz. 4
I BOB. OBYEKTGA YO’NALTIRILGAN DASTURLASH 1.1. Oyd asosiy tushunchasi Obyektga yo’naltirilgan dasturlash – bu funksiyalar yoki mantiq emas, balki obyektlar va ma’lumotlar o’rtasida o’zaro aloqa qiluvchi patternlar to’plamidir. Boshqacha qilib aytganda, ma’lumotlar hamda mantiq obyektlarga kiritilgan va obyektga yo’naltirilgan dasturlash katta dasturlarni kichikroq, shuningdek, qayta foydalanish mumkin bo’lgan qismlarga ajratishga yordam beradi. Obyektga yo’naltirilgan dasturlash tillariga C#, Java, Python, C++, Visual Basic.Net va JavaScript kiradi. Apple asoschisi Stiv obyektga yo’naltirilgan dasturlash haqida quyidagicha tushuntiradi. Nima Uchun Bizga Obyektga Yo’naltirilgan Dasturlash Kerak? Obyektga yo’naltirilgan dasturlash fikrlash jarayoniga va ularni manipulyatsiya qilish uchun zarur bo’lgan mantiqqa emas, balki ishlab chiaruvchining manipulyatsiya qilmoqchi bo’lgan narsani amalga oshirishiga qaratilgan bo’ladi. Obyektga Yo’naltirilgan Dasturlashning Afzalliklari Masshtabli va yangilanishi mumkin – barcha ma’lumotlarni bir joyda saqlash mumkin. Xavfsizlik – inkapsulyatsiya va abstraktsiya yordamida murakkab kod yashiringan bo’ladi, texnik xizmat ko’rsatish osonroq va protokollar himoyalangan. Samaradorlik — kodni saqlash va qayta foydalanishni osonlashtiradi. Modullilik – inkapsulyatsiya obyektlarni avtomatik ravishda saqlashga imkon beradi hamda hamkorlik va muammolarni bartaraf etish uchun aniq modulli tuzilmani ta’minlaydi. Qayta foydalanish imkoniyati – komponentlar qayta ishlatilishi mumkin, bir xil kod bir necha marta moslashtirilishi va o’zgartirilishi mumkin. 5