Ob'ektlik modeldi tuzishding asosiy printsiplari
Ob'ektke yo'naltirilgan yondoshuvding konceptual asli ob'ektlik model' hisoblanadi. Uni tuzishding asosiy printsiplari quyidagilar :
- abstraklastırıw (abstraction);
- inkapsulyaciya (encapsulation);
- modullik (modularity);
- ierarxiya (hierarchy).
abstraklastırıw - bu bazıbir ob'ektning boshqa ob'ektlardan ayirib turatuǵın eng muxim supatlamasın ajratib olish hisoblanadi. Abstraklastırıw ob'ektning muxim xususiyatlarine tavajjuh awdara o'tırıp tizimning murakkabligini boshqarishga imkoniyat beradi. Berilgan predmet sohasi uchun abstraktsiyalar yig'inini tanlov ob'ektke yo'naltirilgan dasturlashding boshli masalasi dir. Abstraklastırıw predmet sohasinan va bitta kontekste muxim bo'lgan narsa ikkinchi kontekste muxim bo'lmasliki mumkin degan ko'zlar tiyrasdan qaram bo'ladi. Ob'ektlar va sinflar - predmet sohasining asosiy abstraktsiyalari.
Inkapsulyaciya - bu ob'ektning tuzilishin va is harakatin aniqlovchi. bo'lak unsurlarini bitta biridan ajratish jarayoni. Inkapsulyaciya ob'ektning sirtqi is harakatin aks ettirishchi ob'ektning interfeysini, ob'ektning ichki ro'yobga oshirilishigan ajratib tashlash uchun xizmat etadi. Ob'ektlik yondoshuv ob'ektning shaxsiy buyum resurslarni uning o'zining operaciyaları foydalanadi va ular sırttan berkilgan bo'ladi. Abstraklastırıw va i inkapsulyaciya birini biri to'ldirishchi hisoblanadi :
• abstraklastırıw ob'ektning sirtqi xossalariga tavajjuh awdaradı, ol inkapsulyaciya bo'lsa ob'ekt -foydalanuvchilarga ob'ektning ichki qurilishini bilishlikga mumkinlik bermaydi. Misol uchun, bank tizimida bank hisobi na tegishli shukiy axborot hisob raqami, balans, uning egasining ismi va manzili, hisob turi, unga qo'shilatuǵın foizlar, hisobtı ochish datası bor bo'lsin deb uyǵarayıq. Hisob menen va shu asnodada mına amallar o'rinlanadi : ochish, yopish, bazıbir mablag' miqdorini hisobga qo'yish yoki hisobdan olish, hisob turini, yesin yoki manzilini o'zgartirish. Mana ushbu borlik axborot va amallar yaktan «esap» ob'ektiga inkapsulyaciya qilınadı. Shu tariqa hisob betlari bilan aloqador borlik o'zgarishlar bank tizimida faqatgina «esap» beti bilan ro'yobga oshiriladi.
• Modullik - bu tizimning uni dakompoziciyalaw mumkinligiga aloqador hususiyati bo'lib, shu tariqa bitta satr ichdan kuchli ilinisken biroq o'zlarara zaif aloqatagi hissa smodullerge ega bo'lamiz. Inkapsulyaciya va modullik abstraktsiyalar orasida bar'erlerdi o'rnatadi.
Ierarxiya - bu abstraktsiyalarding ranjirlengen yoki tartiblesken tizimsi. Murakkab tizimlarga qo'llanilishchi ierarxiyalıq tuzilmalariń asosiy turlari sinflar tuzilmasi va ob'ektlar tuzilmasi dir. Sinflar ierarxiyasınıń misollari sifatida oddiy va ko'ptúrli merosliktı, ol ob'ektlar ierarxiyası uchun agregaciyanı keltirsak bo'ladi.
3. 4. 1. Ob'ektlik modelding asosiy unsurlari
Ob'ektke yo'naltirilgan yondoshuvding asosiy tushunchalariga yotmoqlikchilar :
- ob'ekt ;
- sinf ;
- atribut ;
- operaciya;
- polimorfizm (interfeys );
- komponent ;
- aloqalar.
Ob'ekt seziletuǵın mangiz, predmet yoki hodisa turida aniqlangadi va aniq is harakatga ega bo'lani. Ob'ekt predmet sohasining yoki dasturiy tizimning bazıbir mańızınıń abstraktsiyasin ifoda etishi mumkin. Xohlagan ob'ekt ahўalga (state), is harakatga (o'zini tutishi ) (behavior) va individuallikka (identity) ega bo'lani.
Ob'ektning ahўalı - uning bor bo'lishi mumkin bo'lgan shartlarining biri, u yerda u yoshaydı va vaqt bo'yicha o'zgaradi. Ob'ektning ahўalı uning xususiyatlarining (atributlar ) mohiyatlari bilan va boshqa ob'ektlar bilan aloqalari qirg'oqlari aniqlangadi.
Is harakat (o'zini tutishi ) uning harakatlari va boshqa ob'ektlardan kelgan so'raunamalarga javob berishi bilan aniqlangadi. Boshqacha aytganda ob'ektning o'zini tutishi uning harakatlari bilan toliq aniqlangadi.
Harbir ob'ekt unikal indviduallıqqa ega va u uni boshqa ob'ektlardan ajratib turadi.
O'xshash ob'ektlarning tuzilishi va is harakati ular uchun umumiy sinftı aniqlaydi. Atamalar «klass ekzemplyarı» va «ob'ekt» ekvivalent hisoblanadi.
Sinf - bu ob'ektlar ko'pligi bo'lib, xususiyatlarining umumiylılıgi, is harakati, aloqalari va semantikası bilan aniqlangadi. Sinf o'ziga ma'lumotlarni (atributlar ) va is harakatlardi (operaciyanı) inkapsulyaciyalaydı (jipslashtiradi ). Sinf ob'ektning mavhum aniqlanishi dir va ob'ektlarni tuzish uchun shablon sifatida xizmat etadi.
UML tilida sinfning grafikalik ifodalanishi suuret. 3. 13 yoritilgan. Sinf 3 bo'lakke bo'lingan to'rtmúyeshlik turida rasmlanadi. Birinchi parchada sinf ismi yoziladi, ol ikkinchisida uning atributlari keltiriladi. 3 parchada sinfning operaciyaları beriladi va u uning o'zini tutishin ifoda etadi.
Xohlagan ob'ekt sinf ekzemplyarı (instance) hisoblanadi. Sinflarni va ob'ektlarni aniqlash ob'ektke yo'naltirilgan loyihalashtirishding eng murakkab masalalariniing biri hisoblanadi. Atribut - bu sinf menen bog'langan axborot unsuri dir.
Ma'ruza 8. Mavzu : Modellardi tuzishding va tahlillashding ob'ektke yo'naltirilgan metodlariga qisqacha sholıw.
Ayni vaqitda PT tahlillashding ob'ektke yo'naltirilgan tahlillash metodlaridan amaliyot tekshiruvidan o'tgan ellikdan ortig'i belgili. Ulardan bazıbir asosiylarini keltiramiz :
1. ob'ektke yo'naltirilgan sistemalik tahlil metodi OOAS (Object-Oriented system onalysis), u PT diń mańızların va ob'ektlarini ajratishga, ularning xususiyatlari va daxllarini aniqlashga mumkinlik beradi. Metodtıń asosida axborotlik model, matumotlar oqimini (dataflow) ifodalashchi ob'ektlar va jarayonlar ahўalları modeli tuziladi ;
2. ob'ektke yo'naltirilgan tahlillash metodi OOA (Object-Oriented onalysis), PT ge bo'lgan taqozolarni «mangiz -aloqa» (entity-relationship ER) yordamida shakllantirish va matumotlar oqimlari va mos jarayonlarding spetsifikatsiyalarini modellashtirishdi támiynleydi;
3. SD (Structured Dasign) tizimni, matumotlar va kiris matumotlarini sharq matumotlariga navlendiriwshi dasturlarni Djeksonnıń tuzilmalik xaritasi yordamida tuzilmalik loyihalashtirish metodi ;
4. ob'ektke yo'naltirilgan tahlil va loyihalashtirishding OOAD (Object-oriented onalysis and dasign) metologiyası, u PT diń ob'ektlik modelining mańızları va daxllarini ER-modellashtirishga asoslanadi, tizimning aniqlanishini va ma'lumotlarni tashkil etishdi tuzilmalik diagrammalar, «mangiz -aloqa» (entity-relationship ER) diagrammalari, axborotlikbasqarıw matricaları yordamida támiynleydi;
5. ob'ektlik modellashtirish texnalogiyasi OMT (Object Modelń Technique) o'zlar ichiga jarayonlardi (tahlillash, loyihalashtirish va amalga oshirishlik ), to'rt modellardi (ob'ektlik, dinamik, funkcionallıq va o'zlarara harakat ) ifodalash uchun notaciyalar yig'inini oladi ;
6. UML birlashtirilgan metodi, u o'zlar ichiga Gradi Buch metodining tushunchalarini va vositalarin (ob'ektlar, sinflar, superklasslar), meroslik prinsipin, polimorfizmdi va ob'ektlar haqidagi axborotni yashirishlikni oladi. Uning ichiga va shu asnodada PT masalalarini yechishda tizim ishiniing scenariylerin berish uchun Djekobsonnıń metodining foydalanish variantlari va Rumbauxa ob'ektlarning o'zlarara harakatlarin ko'rsatuvchi diagrammalik vositalari kiradi ;
7. CORBA ob'ektlik modeli asosida taqsimlangan ob'ektlarni aniqlash metodi va umumiy foydalanılatuǵın taqsimlangan risolalar muhitida ularning yumush ishlashin támiynlewshi servislik sistemalik komponentlar yig'ini ;
8. PT sem'yasınan tizimning bo'laklarini generaciyalaw metodi (generative). U muhayyo ob'ektlar, aspektler, komponentlar, ko'p marta qo'llanilishchi dasturlar, risolalar va tavsiflar modellari yordamida tizimning bo'laklarini generaciyalaydı.
PT diń eng ko'p qo'llaniladigan ob'ektlik modeli CORBA tizimida sodir qilingan. Modelding har bitta ob'ekti PT diń bazıbir mańızın inkapsulyaciyalaydı va uni amalga oshirishlikding bitta yoki bittaneshe servislarni (metodlarni ) aniqlaydi. Ob'ektke metodlarni chaqirishding bitta yoki bittaneshe operaciyaları mos keladi. Ob'ektlar tiplerge to'dalanadi, ol ularning ekzemplyarları hissa tiplerge/supertiplerge birlashadi.
Ular amalga oshirishlik metodlarini inkapsulyaciyalaydı, metodlar sirtqi interfeyste ko'rinmaydi, ya'ni OM tiptiń ro'yobga oshirilishiniing usullari haqida axborotni bermaydi, ol u xolos amalga oshirishlikding mavjudligin ifoda etadi. Sirtqi interfeyste operaciyalar joylashadi, ularni bajarish uchun ob'ektlar metodlari chaqiriladi. Tiptiń specializaciyası ohistalik menen ob'ektning strategiya, tahlil, loyihalashtirish va amalga oshirishlik etaplarında aniqlangadi. Ob'ektlarning o'zlarara harakatlarin ob'ektlik so'rovnomalar va operaciyalar brokeri o'rinlaydi.
Ob'ektke yo'naltirilgan metodlar turlarining keltiritgan umumiy tavsifnomasi ularning ko'pchilik umumiy xususiyatlari (masalan, ER-modellashtirish, Dataflow) hámde o'ziga tán xossalari barchasin ko'rsatadiki. Ob'ektke yo'naltirilgan tahlil metodining har bitta ishlab chiquvchisi zárur yangi tushunchalardi kiritdi, bu kóbinshe semantikalıq jihatdan boshqa metodlardagi o'xshash tushunchalarga mos keldi. Shuning uchun UML mualliflarda yagona UML ob'ektlik modellashtirish metodini yaratuv uchun o'zlarining yakkabosh ob'ektlik tahlil metodlarini (Buch, Yakobson háma Rambauhtıń) umumiylash fikri paydo bo'ldi.
3. 5. 1. PT ob'ektlik tahlillash metodlarining asosiy tushunchalari
PT di ob'ektlik onalilew metodlarining asosiy tushunchalariga quyidagilar kiradi.
PT ob'ekti - bu uniń tavsifnomasi va boshqa PT ob'ektlari bilan daxllar bilan belgilanarlik mavhum obraz.
Frege nazariyasina mos, ob'ektning spetsifikatsiyasi uchburchak turida muhokama mumkin :
< ob'ekt ismi > < koncept >,
bunda - identifikator, simvollardan va o'nlik sonlardan iborat satr ; < danotat> - identifikator PT diń haqiqiy dúniyası mańızın belgilaydi ; < koncept > modellashtiriladigan PT diń mańızın talxlanishiga mos danotat mohiyati (semantikalıq) hisoblanadi.
Ob'ektning ichki xossasi (uning tuzilishi, ichki tavsiflari ) sirtqi farqqa ta'sir qilmaydi va ob'ektlik modellashtirish uchun ahamiyatga ega emas.
Mangiz - bu semantikalıq yoqdan muxim ob'ekt yoki loyihada bor bo'lgan yoki abstrak tushincha bo'lgan ob'ekt turi bo'lib, u haqida ma'lumottı bilishlik yoki saqlash zurur. Mangiz ismi unikal bo'lishi zurur va ob'ektlarning tipin yoki sinfini bildiradi. Mangiz sinonimlarga ega bo'lishi mumkin va u " /" belgisi bilan yozilishi mumkin (misol uchun, aeroport/aerodrom).
Atribut - bu abstraktsiya bo'lib, unga mańızdıń borlik abstraktsiyalangan konceptleri ega bo'lani. Har bitta atribut koncept supatlaması chegaralarinda unikal bo'lgan ot menen belgilanadi. Atributlar guruhi sinfqa birlashishi mumkin va sinfning identifikatorına ega bo'lani.
Daxllar - bu aloqalar yig'ini abstraktsiyasi, daxllar PT diń har xil turdagi ob'ektlari orasida bo'ladi. Har bitta aloqa unikal identifikatorga ega bo'lani. Daxllar matnli yoki grafikalik bo'lishi mumkin. Bazıbir daxllar boshqa daxllarding bor bo'lishi sababinen kelib tuziladi.
Sinf - bu mushtarak hususiyatlarga, operaciyalarga, daxllarga va semantikaga ega ob'ektlar yug'urmasi. Har qanday ob'ekt - sinf ekzemplyarı. Sinf turli yo'llar bilan onglatıladı (masalan, ob'ektlar, operaciyalar, ahўallar ro'yxati bilan ). Sinf ekzemplyarlar, operaciyalar va t. b. bilan o'lshenedi.
Predmet sohasi - bu farqli tushunchalar (mańızlar, ob'ektlar ) va ular orasidagi daxllarni aniqlash uchun tahlil qilinadigan narsa. Ushbu tushunchalar ko'pliginde yechishdi avtomatlashtirish uchun muammolar aniqlangadi. shbu tushunchalar majmui asosida
PT fazosin ikkiga bo'lish mumkin muammolar fazosi (problem space) va yechimlar fazosi (solution space) deb.
Muammolar fazosi -PT diń mańızları, konceptleri, ol yechimlar fazosi ushbu fazolikte berilgan PTdiń masalalari va funkciyalarinıń yechimlarini támiynlewshi funkcional komponentalardı o'zlar ichiga olgan masalalarning dasturiy ro'yobga oshirılıwlarınıń ko'pligi.
PT modeli -bu tushunchalar, konceptler, ob'ektlar va ularning tavsiflarining aniq vasflari hámde ushbu tushunchalar orasidagi sinonimlar va tasniflangan mantiqlik aloqalar ko'pligi hisoblanadi.
Konceptual model - operaciyalıq muhitda PT masalalarini bajarishding dasturiy va texnik vositalarina e'tibor bermasdan yaratilgan PT diń modeli.
Model ob'ektlari uchun daxllar yoki aloqalar o'rnatiladi. Kamdan-kam o'zgararlik yoki o'zgarmas statik aloqalar va belgili ahўallarga ega bo'lgan va tizimning ishi davomida o'zgararlik dinamik aloqalar bor bo'ladi.
Ob'ektlar orasidagi aloqalar bo'lishi mumkin :
• baylanıslar birgalikda -bitta (1:1). Bu aloqa bazıbir sinfning ob'ektining bitta ekzemplyarı boshqa sinfning yolg'iz ekzemplyarı bilan bog'langan bo'lsa gina bor bo'ladi, ya'ni aloqata sinflardan bitta ekzemplyardan qatnashadi ;
• baylanıslar bitta -dan -ko'pke (1 : N). Ular bazıbir sinfning ob'ektining bitta ekzemplyarı ushbu sinfning yoki boshqa sinfning bitta vaqtda bitta yoki bittaneshe ekzemplyarları bilan bog'langan bo'lsa gina bor bo'ladi ;
• baylanıslar ko'pten ko'pke (M : N). bu aloqalar aloqalarda ikkita sinf ob'ektlarining bittaneshe ekzemplyarları qatnashganda bor bo'ladi, ya'ni birinchi sinfning bitta yoki bittaneshe ekzemplyarları boshqa sinfning bitta yoki bittaneshe ekzemplyarları bilan aloqata bo'ladi.
So'ng ola, yuqorida keltiritgan PT di ob'ektlik tahlillash metodlarining bazaviy tushunchalarini foydalana o'tırıp, PT di tahlillashding va modellardi tuzishding ob'ektlik modeli, modellashtirishding vizual metodi - UML va standartlar asosida tizimning arxitekturasini loyihalashtirish haqida bayon etiladi.
PT di quyidagi modellar bilan aks ettirish uchun moljallangan Shleer va Mellordıń OOAS metodi PT tahlillash metodlari orasida eng keng tarqalgan:
• sistemanıń axborotlik modeli ;
• sistemanıń axborotlik modelindegi ob'ektlar ahўalınıń modeli, is harakat qoidalari, ko'tsatishlar va fizik qonunlar bilan aniqlangadi ;
• processler modeli, tizimda bo'lg'usi jarayonlar va is harakatlardi aks ettirishchi va ahўallar modellarining umr tsikllari qirg'oqlari o'tishini támiynlewshi bo'lib - tizimdagi hodisalardi qabul qiladi, foyda qiladi va yo'qlar etadi.
Ushbu metodqa mos PT uchlar bosqichta tahlillanadi : axborotlik modellashtirish, ahўallardı modellashtirish, jarayonlardi modellashtirish. Ularni bajarish sababdan tizim ushbu modellarding birlashmasi turida tuziladi.
Axborotlik model PT di supatlamaları va atributlari bilan ob'ektlarning dúńyası turida aks qildiradi.
Bu bosqichtan ahўallardı modellashtirish bosqichina o'tganda axborotlik modelding ob'ektlari uchun ular orasidagi aloqalar va ularning is harakatlari aniqlangadi. Ahўallar modeli tuziladi, u tizim ob'ektlarining ahўallar dinamikasini va is harakatin rasmlaydi. Uchunchi bosqichta hádiseler hosil qilishchi harakatlar va jarayonlar aniqlangadi. Harakatlar funkcionallıq biror kishiga yaqin odamlartga ega bo'lani. Jarayonlardi modellashtirish maqsadi shundan iborat, jarayonlardi harakatlarga ajratish bo'lib, ularning hammasi yaktan tizimning funkcionallıq mazmunini tashkil etadi. Metodtıń modellarini to'lasiraq qarab o'tamiz.
Axborotlik model ma'lumotlarniń relyaciyalıq prinsipi bo'yicha tuziladi, ya'ni ma'lumotlarni ular orasidagi daxllar qirg'oqlari ifodalash bilan.
PT di tahlillash ob'ektlarni aniqlash, ularga predmet sohasining ma'noli tushunchalariga mos unikal va muxim otlarni berishdan iborat bo'ladi. Ob'ektlar sifatida manalar qaraladi :
• PT dúńyasınıń haqiqiy predmetlari, PT diń bor bo'lgan fizik ob'ektlarining abstraktsiyasi sifatida ;
• Rollarlar, tashkilotning bo'lagi bo'lgan odamning maqsadlari yoki vazifalarining abstraktsiyasi sifatida ;
• O'zlarara harakatlar - ob'ektlar, boshqa ob'ektlar yoki tizimning bo'laklari bilan daxllarni o'rnatish yo'li olinadi ;
• spetsifikatsiyalar, tizimda ob'ektlarni tatbiqding qoidalari, kriteriyaları va cheklashlarini ifodalash uchun foydalaniladi.
Solay etib, axborotlik modelding unsurlari ob'ektlar, ularning atributlari va identifikatorları, hámde ob'ektlar orasidagi aloqalar bo'lishi mumkin.
Har bitta atribut - bu ob'ektning bitta supatlamasınıń abstraktsiyasi va u ob'ektlar sinfining borlik vakillariga tán bo'ladi borlik ob odnoy xarakteristiki ob'ekta, kotoraya prisusha vsem predstavitelyam sinfa ob'ektov. Ob'ektlar sinfi uchun unikal ot tanlanadi, atributlar va aloqalar o'rnatiladi. Atribut sinf chegarasinda unikal nomga ega bo'lani. Atributlar tasvirlashchi, ko'rsatuvchi va yordamchi bo'lib ajıraladı.
Tasvirlashchi atribut haqiqiy supatlamanı belgilaydi va u mına usullarding biri bilan aniqlanishi mumkin :
• Sonlar diapazoni bilan berilishi qirg'oqlari ;
• Atribut qabul etishi mumkin mohiyatlardi sanab o'tishlik qirg'oqlari ;
• Hujjatga havola berish qirg'oqlari, hujjat mumkin bo'lgan mohiyatlardi aniqlaydi ;
• Ruxsat berilgan mohiyatlardi generaciyalaw qoidasini berish qirg'oqlari.
Ko'rsatuvchi atribut shaklni, vazifani, sanab o'tishni yoki havolani namoyish qiladi.
Yordamchi (qo'shimcha ) atribut ob'ektning atributi qabul etishi mumkin bo'lgan qo'shimcha mohiyatlardi beradi.
Ob'ektning identifikatorı bitta yoki bittaneshe atributlarni qamrab oladi, ol ularning mohiyatlari bo'lsa berilgan sinfda ob'ektning ekzemplyarın bitta manoda ajratishga mumkinlik beradi (masalan, xodimding tabel' raqami, pasport raqami ham boshqalar.).
Axborotlik modelda ob'ektlar orasidagi aloqalar bog'itlı strelkalar bilan ko'rsatiladi. Aloqata ishtirok etarlik ob'ektning ramkasi yonma-yon strelka chizig'inda ushbu ob'ekt qo'llaydigan roli ko'rsatiladi.
Aloqa 1:1 ikkitajaqqa yo'naltirilgan strelka bilan belgilanadi ;
Aloqa 1 : N ikkita uchtalari bor strelka bilan belgilanadi, strelkaning ikkita uchtalari bittaneshe aloqaqa ega ob'ektke qaratilgan bo'ladi va so'nggi aloqa strelkaning ikkita tarafidada ikkita uchtalari bor bo'lsa u yerda u N : M aloqani ifoda etadi. Strelka ustida aloqaniń ismi beriladi. Aloqalar shartli dalinedi agar u yerda sinf ob'ektlarining ayrim ekzemplyarları aloqata qatnashpasa, ol aloqani shartsiz daymiz agar sinf ob'ektlarining har bitta ekzemplyarları aloqata qatnashsa.
Axborotlik modelding masalan aloqalari bilan 3. 14. rasmte yoritilgan