2.3. Объектга йўналтирилган дастурлаштириш (ОЙД) – дастури ҳар бири аниқ синф нусҳасидан иборат бўлган, синфлар эса мерослаш иераахиясини ташкил этадиган объектлар йиғиндиси сифатида тасвирлашга асосланган дастурлаштириш методологиясидир.
Ушбу таърифнинг қуйидаги муҳим қисмига диққатни жалб этиш зарур: 1) ОЙД асосий мантиқий конструктив элементлар сифатида алгоритмлар эмас, балки объектлар фойдаланилади; 2) ҳар бир объект аниқ синфнинг нусҳасидан иборат; 3) синфлар иерархиялар ташкил этадилар. Фақат юқоридаги учта талаб бажарилгандагина дастур объектга йўналтирилган бўлади. Хусусий ҳолда, мерослашни фойдаланмайдиган дастурлаштириш, объектга йўналтирилган эмас, балки абстракт турдаги маълумотлар ёрдамидаги дастурлаштириш дейилади.
ОЙД ғояси маълумотларни қайта ишлашни процедураларнинг бир бутун – объектга боғлашга интилишдан иборат. Объектга йўналтирилган тиллар қаторига C#, Java, С++, Smalltalk, Visual Basicва бошқа дастурлаш тиллар киритиш мумкин бўлиб, улар ОЙД объектларга янги хусусият берадиган учта: инкапсуляция, мерослаш ва полиморфизм каби асосий тамойилларга бўйсинадилар.
Инкапсуляция – маълумот ва шу маълумотларни қайта ишлаш алгоритмини бир бутунликка боғлаш ҳоссасидир.
Мерослаш – объектларнинг ўзларининг авлодини ҳосил қилиш ҳоссасидир. Объект – авлод автоматик равишда ота-онасидан барча майдон ва услубларни мерослайди, объектларни янги майдон билан тўлдириш ва ота-она услубини алмаштириш (бекитиш) ёки уларни тўлдириши мумкин.
Полиморфизм – мазмунан яқин бўлган муаммоларни турли усуллар билан ечишнинг қариндош объектлар (яъни, биргина умумий ота-онага эга бўлган) ҳоссаси.
Маълумотлар абстракцияси. Абстракциялаш аҳамиятли ахборотларни ажратиш ва аҳамиятсизларини кўриб чиқишдан озод қилишни ифодалайди. ОЙД объектнинг бошқа дастурларга керак бўлган аҳамиятли характеристикалар тўплами каби қараб, фақат маълумотларни абстракциялашни кўриб чиқадилар.
Синф. Синф ҳали мавжуд бўлмаган моҳият (объект)ни дастлабки кодлар атамалари тилида тавсифланадиган моделдан иборат. Ҳақиқатда, у ўзига хос чизма бўлган ҳолда объект қурилмасини тавсифлайдилар. Кўпинча объектни - синф нусхаси дейдилар. Одатда синфларни, уларнинг объектлари предмет соҳасининг объектларига мос келадиган қилиб ишлаб чиқадилар.
Объект. Синф нусхасини яратишда пайдо бўладиган (масалан, компиляция ва дастлабки кодни боғлаш натижасини бажаришга ишга туширгандан кейин) ҳисоблаш тизимининг манзилли фазодаги моҳиятидир.
3. CASE – тизимлар. Замонавий CASE-тизимлар — бу нафақат дастурий, балки ташкилий-бошқарилувчи тизимларни ишлаб чиқиш воситаларидир. Улар ёрдамида бизнес-моделлаштириш, бизнес-таҳлил, бизнес жараёнларни ташкил этиш ва бузиш ва ш.к. масалалар ечилади.
CASE-технология лойиҳалаштириш, моделлаштириш, ўзаро боғланган автоматлаштириш воситаларининг мажмуи қўллаб турган бизнес жараёнларни таҳлил қилиш ва бузиш методологиялар тўпламидан иборат. CASE — бу бизнес-таҳлилчилар учун бизнес –жараёнларни таҳлил қилиш ва лойиҳалаш учун қоғоз ва қаламни компьютерга алмаштирувчи қурол-аслаҳадир.
Америкада катта рақобатчилик бўлгани учун CASE – воситалар кўпгина фирмалар – дастурий таъминидан фойдаланилади. Айниқса CASE – воситалар дастурий таъминотларни ишлаб чиқишнинг объектга йўналтирилган технологияси татбиқ этилаётган даврда жуда ривожланди. Шунгача, амаллар бажариш учун ўзлари дастурлаш тилларига бирлаштириш жуда қийин бўлган объектли моделлаштириш технологиялари, жумладан Booch, OMT, UML пайдо бўлди.
Бугунги кунда дунёдаги етакчи CASE-тизим Rational Software корпорациянинг Rational Rose тизими ҳисобланади. Rational Rose тизими Unified Modeling Language (UML) тилидан фойдаланиб, модуллар яратишга мўлжалланган. UML тилини Гради Буч, Айвар Джекобсон ва Джим Рамбаухлар ишлаб чиққанлар.
CASE-тизимнинг охирги версияси Rational Rose 98 тижорат дастурий таъминотларни яратишда барча жойларда фойдаланилади ва у Java, C++, Смолток, Ада, Visual Basic, Power Builder ва Forte каби ажойиб тилларни қўллаб-қувватлайди. Бундан ташқари Rose 98 пакети Interface Definition Language (IDL) тиллардаги тавсифларни CORBA ва Data Definition Language (DDL) тиллари учун, маълумотлар омборига кириш иловалари, шу жумладан, Oracle 8 учун генерациялаш имконияти мавжуд.
Rose тизимидан фойдаланиб, интефаол ҳолда яратилаётган иловаларни архитектурасини ишлаб чиқиш, унинг дастлабки матнларини генерация қилиш ва ишлаб чиқилаётган тизимнинг ҳужжатлари билан параллел равишда ишлаш мумкин. Rational Rose 98 нинг қўллаш усутунлиги жуда кўп:
1. Иловаларни ишлаб чиқиш циклини қисқартиш.
2. Дастурчиларнинг ишини унумдорлигини кўтарилиши.
3. Фойдалануви ва бизнесга мўлжалланиши ҳисобига яратиладиган дастурларнинг фойдаланиш сифатини яхшиланиши.
4. Катта лойиҳалар ва лойиҳалар гуруҳини олиб бориш қобилияти.
5. Яратилган дастурий таъминотни уларнинг архитектураси ва компоненталарини кўриб чиқиш ҳисобига, уларни қайта фойдаланиш имкониятининг мавжудлиги.
6. UML2) тили турли бўлимдаги ишлаб чиқувчилар орасида универсал «кўприк» бўлиб хизмат қилади.