Ushbu tamoyillar markaziy o'rinni egallaydi, chunki ularning birortasi bo'lmasa, model haqiqatan ham ob'ektga yo'naltirilgan bo'lmaydi.
Abstraktsiya ob'ektning tashqi xususiyatlariga e'tibor qaratadi va xatti-harakatlarning eng muhim xususiyatlarini ahamiyatsizlardan ajratish imkonini beradi. Berilgan domen uchun to'g'ri abstraktsiyalar to'plamini tanlash ob'ektga yo'naltirilgan dizayndagi asosiy muammo hisoblanadi.
Barcha abstraktsiyalar ham statik, ham dinamik xususiyatlarga ega. Masalan, fayl ob'ekt sifatida ma'lum bir qurilmada ma'lum hajmdagi xotirani talab qiladi, nomi va mazmuniga ega. Bu atributlar statik xususiyatlardir. Ro'yxatga olingan xususiyatlarning har birining o'ziga xos qiymatlari dinamik bo'lib, ob'ektdan foydalanish jarayonida o'zgaradi: faylni ko'paytirish yoki kamaytirish, uning nomi va mazmunini o'zgartirish mumkin.
Abstraktsiya va inkapsulyatsiya bir-birini to'ldiradi: abstraktsiya ob'ektning kuzatiladigan xatti-harakatiga e'tibor qaratadi, inkapsulyatsiya esa ichki qismlar bilan shug'ullanadi.
Ko'pincha, inkapsulyatsiya ma'lumotni yashirish, ya'ni tashqi xatti-harakatlarga ta'sir qilmaydigan barcha ichki tafsilotlarni maskalash bilan to'ldiriladi. Ob'ektga yondashuv faqat ob'ektning o'zi usullari bilan boshqarilishi mumkin bo'lgan mahalliy resurslar tashqi komponentlardan yashirinligini nazarda tutadi.
Ob'ektga yo'naltirilgan dizaynda siz loyihaning mantiqiy tuzilishini tashkil etuvchi sinflar va ob'ektlarni jismoniy ajratishingiz kerak. Ushbu ajratish barcha yangi loyihalarda ilgari yozilgan modullar kodini qayta ishlatish imkonini beradi. Ushbu kontekstdagi modul alohida manba fayliga mos keladi. Ba'zi tashqi sharoitlar modullarga bo'linishni tanlashga ham ta'sir qilishi mumkin. Dasturlarni hamkorlikda ishlab chiqishda ishlarni taqsimlash odatda modulli tarzda amalga oshiriladi va loyihani to'g'ri taqsimlash ishtirokchilar o'rtasidagi aloqani minimallashtiradi.
Shunday qilib, abstraktsiya, inkapsulyatsiya va modullik tamoyillari bir-birini to'ldiradi. Ob'ekt ma'lum bir abstraktsiya chegaralarini mantiqiy ravishda belgilaydi va inkapsulyatsiya va modullik ularni jismoniy o'zgarmas qiladi.
Belgilangan ob'ektlar bilan siz sinflarni aniqlashni boshlashingiz mumkin. Sinflar ko'pincha asta-sekin, oddiy ota-onalar sinflaridan murakkabroqlarga qadar quriladi. Jarayonning uzluksizligi merosga asoslanadi. Har safar oldingi sinfdan keyingi sinf yaratilganda, olingan sinf ota-ona sifatlarining bir qismini yoki barchasini meros qilib oladi va ularga yangilarini qo'shadi. Tugallangan loyiha o'nlab yoki yuzlab sinflarni o'z ichiga olishi mumkin, lekin ko'pincha ularning barchasi bir nechta ota-onalar sinflaridan kelib chiqadi.
Ob'ektga yo'naltirilgan dasturlash (OOP) - bu dasturni ob'ektlar to'plami sifatida ko'rsatishga asoslangan dasturlash metodologiyasi , ularning har biri ma'lum bir sinfning namunasi bo'lib , sinflar meros ierarxiyasini tashkil qiladi [1] .
Mafkuraviy nuqtai nazardan, OOP axborot ob'ektlarini modellashtirishda dasturlashning yondashuvi bo'lib, u tizimli dasturlashning asosiy vazifasini yangi darajada hal qiladi : ma'lumotni boshqarish imkoniyati nuqtai nazaridan tizimlashtirish [2] , bu modellashtirish jarayonining o'zini boshqarish imkoniyatini sezilarli darajada yaxshilaydi; Bu esa, o‘z navbatida, yirik loyihalarni amalga oshirishda alohida ahamiyatga ega.
Ierarxik tizimlar uchun boshqaruv ma'lumotlarning ortiqcha miqdorini minimallashtirishni nazarda tutadi ( normalizatsiyaga o'xshash ) va ularning yaxlitligi, shuning uchun yaratilgan narsa qulay tarzda boshqariladi - tushunish oson bo'ladi.