|
§ 9. 2. Programmalıq támiynattı modellestiriw wazıypaları
|
bet | 70/136 | Sana | 18.02.2023 | Hajmi | 0,93 Mb. | | #912444 |
| Bog'liq 11-kitap perevod
§ 9. 2. Programmalıq támiynattı modellestiriw wazıypaları
Programmalıq támiynattı modellashtirilayotganda, programmalıq támiynat elementleri hám alar arasındaǵı munasábetler xarakterlenedi. UML kóp qallarda modellestiriwdiń obektke jo'neltirilgen tili retinde qollanıladı, sal sebepli bunday jantasıwda quram tapqan programmalıq támiynat strukturalıq qisimlarining hasası bolıp klasslar hám alar arasındaǵı munasábetler esaplanadı. Programmalıq konstruksiyalardı modellestiriw wazıypasıları :
- Programma atqarılıwı waqtında obektler arasındaǵı baylanıslar strukturası ;
- Maǵlıwmatlardı saqlaw strukturası ;
- Programmalıq kod strukturası ;
- Qosımsha daǵı komponentler strukturası ;
- Óz-ara tásirlashuvchi bólimlerden ibarat quramalı obektler strukturası ;
- Jaybar daǵı artefaktlar strukturası ;
- Paydalaniletuǵın esaplaw resursları strukturası.
- Programma atqarılıwı waqtındaǵı obektler ortasındaǵı baylanıslar strukturası.
Obektke jo'neltirilgen programmalastırıw paradigmasında programma atqarılıwı procesi programma obektleri bir-biri menen, xabarlar almasingan túrde óz-ara tásirlashuvidan ibarat. Járiyalawıw eń kóp tarqalǵan tipi bolıp bir klass obekt metodın basqa klass obekti metodınan shaqırıw esaplanadı. UMLda baylanıslar strukturasın modellestiriw ushın klasslar diagrammasındaǵı awqamlar munasábetlerinen paydalanıladı.
Maǵlıwmatlardı saqlaw dúzilmesiniń programmalıq támiynatı kompyuter yadsudagi maǵlıwmatlarǵa qayta isley aladı. Obektke jo'neltirilgen programmalastırıw paradigmasında programma atqarılıwı waqtında maǵlıwmatlardı saqlaw ushın klasslar atributilari qaratngn. Biraq jumıs júrgiziwdi avtomatlastırıw ushın mo'lsherlengen qosımshalar úlken bo'legi sanday tuzulganki, tek málim belgilengen maǵlıwmatlar (xammasi emes) kompyuter yadında nafaqta qosımsha seansı waqtında, bálki turaqlı, yaǵnıy seanslar arasında saqlanıwı kerek.
Programmalıq támiynat konstruktsiyalarini modellestiriw máselesi programmalıq qosımshalar ushın birinshi dárejeli esaplanadı. Biraq bul máseleni sheshiwdiń “moxiyat-baylanıs” sıyaqlı isenimli metodları bar. Bul metodlar (belgilewler anıqlıǵına shekem) qutiblar márteligi ko'rsetilgen awqam formasında UML de de qollanıladı.
Programmalıq támiynat konstruktsiyalari úlkenligi boyınsha júdá sezilerli parıqlawıwı sır emes - úlken hám kisi programmalıq támiynat konstruktsiyalari baladı. Kisi programmalıq támiynat konstruktsiyalari ushın kod strukturası derlik axamiyatga iye emes, úlkenleri ushın bolsa kerisinshe derlik sheshiwshi axamiyatga iye. UML programmalastırıw tili bolmaǵanlıǵı ushın, model kod strukturasın tikkeley anıqlamaydi, biraq struktura modeli tikkeley bolmaǵan usıl menen kod dúzilmesine sezilerli tásir ko'rsetedi. Ko'pshilik instrumentler bir yamasa bir neshe ádetde obektke jo'neltirilgen programmalastırıw tilleri ushın koddıń yarım avtomatıkalıq generetsiyani támiyinleydi. Kóp qallarda model klassları maqsetli til (yamasa oǵan ekvivalent konstruksiyalar ) klasslarına translatsiya etiledi. Bunnan tısqarı, kóp instrumentler modelde paketler strukturasın esapqa aladı jáne onı maqsetli programmalıq támiynat konstruktsiyalari uyqas klass ústi strukturalarına translatsiya etedi. Sanday etip, eger kod avtomatıkalıq generatsiyası quralı háreketke túsirilse, al túrde model degi klasslar hám paketler strukturası qosımsha kodı strukturasın derlik tolıq modellestiredi.
Bir komponentke iye qosımsha modellashtirilishi shárt bo'lmaga trivial (ápiwayı ) komponentler strukturasına iye. Lekin kóp zamanago'y qosımshalar proyetlestiriwtiriw basqıshında kóp komponetlar (xatto alar bo'listirilmegen bolsada ) óz-ara baylanısın ko'rsetip beredi. Komponentali struktura eki taraw xarakteristikaın ańlatadı : birinshiden, klasslardıń komponentler boylap qanday bo'listirilgenligi, Ekinshiden, komponentler qaysı tárzde (qanday interfeysler arqalı ) bir- biri menen óz-ara tásirlesedi. Bul eki tarawlar UML komponentleri diagrammaları járdeminde modellestirıledi.
Óz-ara tásirlashuvchi bólimlerden ibarat quramalı obektler strukturasın modellestiriw ushın UML - klassifikaciyalaytuǵın ishki strukturası diagramması jańa quralı qollanıladı. Berilgen diagramma klass hám komponentler ishki strukturasın xarakteristikalsh ushın paydalanıladı. Kóp bólimler óz-ara tásirlashuvini xam xarakteristikalawǵa jol qo'yatuǵın taǵı bir moxiyat xam bar bolıp tabıladı. Bul mánis koomperatsiya dep júritiledi hám málim konteksdagi óz-ara tasirlashuvni súwretlew ucun xızmet etedi. Ishki struktura kózqarastan kooperatsiyanıń klass hám komponentten tiykarǵı ayırmashılıǵı sanda, kooperatsiya óz qisimlarining iyesi esaplanbaydı hám koomperatsiya bólimleriniń baylawları asotsasiya ko'rinistegi ayqın ańlatpaǵa iye bolmawları múmkin. Biraq klass hám komponentler sıyaqlı kooperatsiyalarda orınlaw waqtında funksiyalasatuǵın nusqalar bolıwı múmkin.
Programmalıq támiynat konstruktsiyalaridagi artefaktlar strukturasınıń eń ápiwayı qosımshaları bir artefakt - programma atqarılatuǵın kodınan dúziledi. Real qosımshanıń ko'bisi o'nlab, júzlegen hám mińlaǵan túrli komponentkarni óz quramına esaplaydı : atqarılatuǵın egilik faylları, resurs faylları, birge juretuǵın túrli hújjetler, maǵlıwmat beretuǵın fayllar, maǵlıwmatlı fayllar hám x. k. Úlken qosımsha ushın tekǵana barlıq artefaktlar anıq hám tolıq kestege ıyelew, bálki sistema anıq nusqasına áyne qaysılarikirishini ko'rsetiw de múmkin. Gáp sanda, úlken qosımshalar ushın liyihada bir rtefaktning túrli versiyaları bar. Túrli tipdagi artefaktlarni xarakteristikalaw ushın standart sterotiplar názerde tutılǵan UML komponentler hám jaylastırıw diagrammalri menen tolıq tárzde modellestirıledi. Deskriptlarning eń muhum tipi klassifikatorlar (klassifikaciyalovchilar) esaplanadı. Klassifikaciyalaytuǵın (classifier) - bul, bir tipli obektler kompleksi deskriptorlari. Klassifikaciyalovchining tiykarǵı hám xarakteristik klassifikaciyalaytuǵın (tikkeley yamasa tikkeley bolmaǵan ) nusqalarǵa ıyelewi múmkin. UML de klassifikaciyalovchilar:
- Ámel etiwshi shaxs (actor); Paydalanıw variant (use case).
- Artefakt (artifact); maǵlıwmatlar tipi (data type);
- Assotsiatsiya - awqam (assostion); awqam klası (association class);
- Interfeys (interfase); klass (class);
- Kooperatsiya (collaboration); komponent (component);
- Túyin (node).
Klassifikaciyalawshınıń jeti eń zárúrli o'zgesheliklerin xarakteristikalaymız:
- Birinshiden, klassifikaciyalovchilar atlarǵa iye. At model elementin indentifikatsiya qılıw ushın hizmat etedi hám sal sebepli berilgen atlar ortalıqında unikal (kem ushraytuǵın ) bolıwı kerek.
- Ekinshiden, aldın aytılǵanı sıyaqlı, klassifikaciyalaytuǵın nusqalargabega bolıwı múmkin. Nushalar tikkeley hám tikkeley bolmaǵan baladı. Eger qaysı bolıp tabıladı obekt tikkeley A klassifikaciyalovchisi konstruktorı yotdamida yaralgan bolsa, al túrde bul obekt klassifikaciyalovchining tikkeley yamasa tuwrı nusqa (dipect inctance) si dep júritiledi. Eger A klassifikaciyalaytuǵın B klassifikaciyalaytuǵın awqamı esaplansa yamasa tap sanday, B klassifikaciyalaytuǵın barlıq nusqaları A klassifikaciyalaytuǵın tikkeley bolmaǵan nusqaları esaplanadı. Berilgen qasiyet tranzit esaplanadı : eger A klassifikaciyalaytuǵın B klassifikaciyalaytuǵın ulıwmalasqansı esaplansa hám B klassifikaciyalaytuǵın C klassifikaciyalaytuǵın ulıwmalasqansı bolsa, C klassifikaciyalaytuǵın barlıq nusqaları sonıń menen birge A dıń tikkeley bolmaǵan nusqaları esaplanadı.
- Úshinshiden, klassifikaciyalaytuǵın mavxum yamasa anıq bolıwı múmkin. Mavxum (abstract) klassifikaciyalaytuǵın tikkeley nusqalarǵa iye bala almaydı jáne bul halda onıń atı menen ajratıladı. Anıq (concrete ) klassifikaciyalaytuǵın tikkeley nusqalarǵa iye bala aladı jáne bul túrde onıń atı tuwrı shrift penen jazıladı. Mavxum klassifikaciyalaytuǵın - bul sanday obektler kompleksi deskriptoriki, al jaǵdayda elementler tikkeley xarakteristikası bolmaydı, lekin bul xarakteristikalaytuǵın basqa klassifikaciyalovchilar menen ulıwmalasqan munasábeti menen baylanıslı hám alar nusqaları jıynaqları birlespesi berilgen mavxum klassifikaciyalaytuǵın nusqaları kompleksi esaplanadı. Basqa sóz benen aytqanda, jıynaq tikkeley emes, kisi gruppalar jıyındısı arqalı anıqlanadı. Mısalı, interfeys kelesi abstrakt klass tikkeley nushalarga iye bala almaydı, biraq onı realizatsiya etiwshi klass yamasa interfeys klassifikaciyalaytuǵın esaplanadı.
- Tórtinshiden, klassifikaciyalaytuǵın ko'riniske iye. Ko'rinis (visibility) bir klassifikaciyalaytuǵın quraytuǵın basqa klassifikaciyalovchida paydalana alıw múmkinligin anıqlaydı. Eger málim konteksda qandayda bir múmkin bo'las hám qanday de tárzde paydalanıw múmkin bolsa, al halda al ko'rinetuǵın (bul konteksda) esaplanadı. Eger al ko'rinetuǵın bolmasa al túrde odan paydalanıp bolmaydı. Ko'rinis tórt mánisten birine ıyelewi múmkin:
Ashıq (+ belgisi yamasa public gilt sózi menen belgilenedi);
Ximoyalangan (# belgisi yamasa protected gilt sózi menen belgilenedi);
Jabıq (- belgisi yamasa private gilt sózi menen belgilenedi);
Paket (~ belgisi yamasa package gilt sózi menen belgilenedi).
- Besinshiden, klassifikaciyalaytuǵın qurawshıları háreket tarawine iye. Háreket tarawi (scope ) nusqalarda klassifikaciyalaytuǵın quraytuǵınsı ózin qanday nomoyon etiwin anıqlaydı, ya/ni quraytuǵın óz bahalarınıń nushalariga iye yamasa bir má;noni qospa tárzde paydalanıladı. Háreket tarawi múmkin bolǵan eki bahaǵa iye:
- Nusqa (instance) - xechqanday arnawlı belgilenmaydi, sebebi default forması alınadı ;
- Klassifikaciyalaytuǵın (classifier) - klassifikaciyalaytuǵın quraytuǵınsı xarakteristikası tıyıne sızıp qo'yıladı.
Eger quraytuǵın háreket tarawi nusqa esaplansa, al halda klassifikaciyalaytuǵın nushasi óz quraytuǵın ma'nisine iye baladı. Bul hár bir obekt - klass nushasi - basqa obektler berilgen atributı, sal klass nushalari bahalarınan ǵárezsiz tárzde o'zgera alatuǵın atribut óz hususiy ma'nisine iye. Eger quraytuǵındıń háreket tarawi klassifikaciyalaytuǵın esaplansa, al túrde klassifikaciyalaytuǵın barlıq nusqaları birgelikte quraytuǵındıń bir ma'nisinen paydalanıladı. Mısalı, konstruktr háreket tarawi, ádetde klassifikaciyalaytuǵın (klass) baladı, sebebi al bul klass barlıq nusqaları ushın ulıwma ámeliyat (procedura ) esaplanadı.
Modeller talaplar injiniringi processinde sistema ushın talaplardı payda etiwde paydalanıladı. Siz ámeldegi sistemalardıń modelin hám islep shıǵarılıp atırǵan sistemanıń modelin dúziwińiz múmkin.
1. Ámeldegi sistema modelleri talaplar injiringi dawamında paydalanıladı. Alar ámeldegi sistemanıń ne jumıs orınlawın anıqlawtiradi hám sistemanıń kúshli hám kúshsiz táreplerin talqılawǵa tiykar baladı. Bul jańa sistema ushın talaplar islep shıǵıwǵa alıp keledi.
2. Jańa sistema modelleri talaplar injiniringi dawamında járdem beriw ushın isletiledi. Injinerlar dizayn boyınsha usınıslardı talqılawda modellerden paydalanadı. Sistema modeliniń eń zárúrli tárepi sanda al jaǵdayda sistema haqqındaǵı tolıq maǵlıwmatlar tastap ketiledi. Model úyrenilip atırǵan sistemanıń abstrakt ko'rinisi bolıp tabıladı. Siz sistemanı hár qıylı ko'rinislerin ko'rsetiw ushın hár qıylı modellerdi islep shıǵıwıńız múmkin. Mısalı :
1. Sırtqı ko'rinis, sistemanıń konteksti yamasa ortalıǵın modellestiriw. 2. Óz-ara munasábetler ko'rinisi, sistema menen ortalıq yamasa sistema
komponentalari ortasındaǵı óz-ara munasábetti modellestiriw.
3. Strukturalıq ko'rinis, sistema tárepinen ishlov berilip atırǵan maǵlıwmatlar strukturası yamasa sistema sho'lkemin modellestiriw.
4. Xatti harakatlar ko'rinishi, sistemaning dinamik xatti harakatlari va hádiyselerge Qanday juwap beriwin modellestiriw.
Sistemaning turli xil modellarini yaratish uchun UML bir nechta diagrammalarǵa iye.
1. Iskerlik diagrammaları, processdagi xızmetlerdi ko'rsetedi.
2. Paydalanıw holati diagrammari, sistema va uning muhiti o'rtasidagi munasábetti ko'rsetedi.
3. Izbe-ızlıq diagrammaları, shaxs hám sistema hám sistema komponentalari arasındaǵı munasábetlerdi ko'rsetedi.
4. Sinf diagrammalari, sistemadagi obyektlar sinflari va olardıń o'zara munasábetin ko'rsetedi
5. Jaǵday diagrammari, sistemanıń ishki hám sırtqı hádiyselerge tásirin ko'rsetedi.
UML (Unified Modeliń Language) - birlesken modellestiriw tili programmalıq támiynat sistemaların modellashda 13 hár qıylı diagramma túrlerinen paydalanadı.
UML programmalıq támiynat sistemaların modelin jaratıwda standart jantasıw dep qabıl etilgen.
Do'stlaringiz bilan baham: |
|
|