Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
15
Добавлен:
13.03.2015
Размер:
278.53 Кб
Скачать

Дәріс №9 Деректер қоры объективтi-хабар үлгi.

Деректер қоры объективтi-хабар үлгi. Объективтi-хабар деректер қорларының дамытуға объективтi-хабар программалауын үлес. Деректер қоры басқаруының ортақ объективтi-хабар тiлi. Мәлiметтердiң анықтауы. Объективтi-хабар деректер қорларының программалау тiлдерi Объективтi-хабар жолдың негiзгi тұжырымдамалары Деректер қоры күрделi мамандандырылған қосымшалар CADтар қосады - автоматты жобалау, CAMның жүйесi - автоматты өндiрiс, CASEнiң жүйесi - грамм қамтамасыз етуi туралы автоматты өңдеудi жүйе, (OSI ) ақпараттық жүйенiң ныесi, цифрларға баспа және (GIS ) геоақпарат жүйесiнiң кеңсесi, сонымен бiрге қосымша ектами және процедура мәлiметтерiмен Объ өзара байланысты күрделi. Нақты дүниенiң объекттерiнiң пiшiндеуi реляциялық ДҚБЖдардың мүмкiндiктерi шектеулiлерi көздiң нүктесiмен деректер қорының күрделi мамандандырылған қосымшалары үшiн олар жарамды емес жасады.

Басқалық және ақпаратты жасыру Абстракция/ Абстракция - бұл барлық өңге оның мардымсыз қасиеттерiнiң мәннiң өте маңызды тұрғыларын теңестiрудi процесс және елемеуi. Программалық қамтамасыз етудiң жасаулары контекстте бұл ол оның iске асыруының әдiсiнiң таңдауы тағы да дейiн iстей алатын объект өзiменмен алдында және зейiн қоюды бiлдiредi. Абстракциялар екi негiзгi тұрғылармен капсуляция және ақпаратты жасырулар ин болып табылады. Жиын да, мәлiметтер құрылымын да басқалықтың ұғымы объект бұл құрылыммен көмегiмен манипуляция жасауға болатын операциялар болатынын бiлдiредi. Ақпаратты жасыру тұжырымдама отде объекттiң барлық сыртқы тұрғылары сыртқы әлем бүркеме оның iшкi құрылымдарының толықтықтарынан тебiсетiнiн бiлдiредi. Түрмен Ким, объекттiң iшкi Құрылыс бөлшектерi та ол қолданылатын қосымшадағы ықпалы қандай болмасынсыз не шарт кезiнде сыртқы бөлшектер сол болып қалады өзгертiле алады. Бұл формациясы Ния төсектiң бiр бөлiктерi түбегейлi өзгерiстер көпшiлiгiнде тудыруға қабiлеттi ұсыныстары әдiсiнiң ептеген өзгерiсi қашан мәлiметтер құрылымынан женийi прилы артық тәуелдiлiгiн ин шығаруға мүмкiндiк бередi. Басқаша айтқанда, ақпаратты жасыру мәлiметтен тәуелсiздiктi қамтамасыз етедi.

Аталған тұжырымдамалар қосымшалардың жасау және бақылап отыруы модуляция есебiнен ықшамдайды. Объект "Қара жәшiк" жасалған және өңге жүйеден тәуелсiз өзгертiле алады өзгерiссiз оның ашық интерфейсiн не шарт кезiнде болып қалған болады.  Басқалық туралы екi ұсыныстар бар болады: деректер қорының мұқтаждықтары үшiн (Оояп ) объективтi-хабар программалау тiлiнiң ұсынысы және бұл ұсыныстың бейiмделуi. Басқалық кейбiр Оояптарға (ADT ) мәлiмет абстрактiлi түрлерiне қолдану есебiнен жетедi. Объект ұсыныс бұл интерфейс және iске асырудан тұрады. Интерфейс объектпен орындай алған операциялардың спецификациясын iлiгедi; iске асыру ADT және бұл интерфейстердi жүзеге асыратын функциялар үшiн мәлiметтердiң турлерi Структен тұрады. Тек қана интерфейстiң қол жететiннiң объекттер және қолданушылары басқалар үшiн. Тиiстi басқалық деректер қоры ұсыныста бағдарламашылар арқасындаға жетедi тек қана интерфейске рұқсаттың ҚАБы праларға ие болады. Сайып келгенде, басқалық логикалық мәлiметтен тәуелсiздiктi қамтамасыз етедi:

ADTтың iшкi iске асыруын бұл ADTтарды қолданатын қосымша тиiспей өзгертуге болады. Объект және атрибуттар Объект - Сирек кездесетiн белгiленетiн "Нақты дүние" объекттердiң күй суреттейтiн атрибуттар және оларға қатысты әсерлерiнде болатын мән. Мән, мәлiметтiң анықтауына бұл объекттiң анықтаулары сол сияқты бұрын. Объект дегенмен тұру және мiнез-құлықпен капсуладан шығарады, мән тек қана күйдi пiшiндейдi.

Объекттiң ағымдағы күйi бiр немесе бiрнеше атрибуттар, немесе айнымалы даналармен суреттеледi. Атрибуттар бос тұру бола алады және құрама. Мысалы, бүтiн сан, жол, нақ сан және тағы басқалар қарапайым түр атрибут ) және литералық мәндi қабылдауға иемдене алуға тұрып қал. Құрама атрибут сiлтеменiң и/илиiнiң коллекциясы ұстай алады. Сiлтеме атрибут объекттердiң арасындағы байланысты ұсынады. Ол сонымен бiрге объект болып табылған (немесе мәндердiң коллекциясын) мән болады. Сiлтеме атрибут концептуалды программалау тiлдерiндегi мәлiметтердiң реляциялық үлгiсiндегi сыртқы кiлтi немесе нұсқағышқа ұқсас. Бiр немесе бiрнеше құрама атрибуттарда болатын объект құрама объектпен деп аталады.

Объекттердiң теңестiруi Объекттiң маңызды анықтаудың бiр бөлiктерi оның Ция идентификасы қайталанбаушылық болып табылады. Оның жасауы әрбiр объект объективтi-хабар жүйеде кезде келесi қасиеттермен ие болатын (ОiD ) объект идентификаторы тағайындайды: - жүйемен шығарады; - бұл объекттi сирек кездесетiн белгi қояды; - не оны бағдарламаның уақытында тiршiлiк циклдасы өзгертуге болмағанын, неткен басқа объект болғанын инвариантты сол мағынадада, оның Ошының объектiнiң жасауынан кейiн бола алмайды үшiн еш қайтадан қолдану, тiптi объекттiң деректердi жоюын сле бойынша; - оның (оның ағымдағы күй, екi объектiнен яғни бiрдей күйлердi иемдене алады, бiрақ әртүрлi ОiDтермен әрдайым ие болады - идентификаторлармен) атрибуттарының мәндерiнен тәуелдi болмайды; - (жақсы болғанда ) қолданушыдан бой тасалатынған.

Сайып келгенде, ұқсастық түрмен ственным объект әрдайым мәндердiң бүтiндiгiне автоматты кепiлдiк беретiнiн белгiлеуге бiртұтасуға болатын кепiлдiк берiледi. Объекттер использо ваться сонымен бiрге алады, олардың OIDтерi - идентификаторлар сiлтеме бүтiндiктiң жүйесiндегi сүйемелдеу үшiн қолданыла алады.  OIDтiң қолдануының кейбiр артықшылықтарын санап шығамыз - объекттер идентификаторлар идентификаторлар ретiнде. Тиiмдiлiк. OID сақтаулар үшiн - iшiнде құрама объекттiң идентификаторлары орын кемде-кем керек болады.  Тездiк. OID - идентификатор нақты мекенжай немесе осы объекттi мекенжайда болатын орын кестенiң iшi күлманады. Бұл демек, олардың ағымдағы сақтауын орыннан тәуелсiз объекттер жылдам бiлдiре алған: жедел жадта немесе қатты дискте.

Қолданушыны өзгерiстiң мүмкiн еместiгi. Егер OID - болса жүйемен қолданушы бүркеме ге нерируются идентификаторлар, немесе, оқу үшiн түсiнiктi тек қана болса, онда мұндай жүйеде мәндер және қолданушыға мәлiмет бүтiндiгi сүйемелдеудi қамқорламауға мүмкiндiк берген байланыстардың бүтiндiгi оңай кепiлдiк берiледi. Тәуелсiздiк мәлiметтердiң мазмұниды. OID - идентификаторлар осы объектте болатын мәлiметтерден ешқалай тәуелдi болмайды. Бұл объекттiң әрбiр атрибутын мәндi өзгертуге мүмкiндiк бередi, бiрақ объект бұл мәлiметте бұрынғы OIDтермен объектпен сол болып қалады - идентификатормен. Әдiс және қатынастар Объект мәлiметтер және тұйықталған пакеттегi функцияны капсуладан шығарады. Функцияның нологииi объектiнiң сол әдiстермен әдетте деп аталады. Суретте 8 объекттiң ұсынысын альноенi концептке сырттай әдiстер арқылы қорғал қалған орналасқан атрибуттардың iшi көрсетiлген.

Әдiстер объекттiң мiнез-құлықтарын анықтайды. Олар оның атрибуттарының мәндерi объекттiң күйiн өзгерiс үшiн өзгерiс есебiнен қолданыла алады немесе сайланған атрибуттардың мәндерiне ар жағында жасау үшiн.  Әдiс және әдiстiң атымен Данға қатысты мiнез-құлықты қамтамасыз ететiн денеден тұрады. Дене объективтi-хабар программалау тiлдерiнде және тиiстi функцияларды орындаған программалық кодтың блогiнен тұрады.  Қатынастар объекттердiң өзара әрекеттесуiн құралдар болып табылады. Қатынас (алушы ) басқа объекттiң объект өз әдiстерiнiң бiрiн орындау үшiн талап ететiн мекенжайына (жiберушiмен ) бiр объект бағытталған сұрау салу болады. Ылғи бiр объект бола алады және жiберушiмен, және алушымен. Әдiске рұқсатты нүктемен әдетте белгi қояды.

Сыныптар Сыныптар Simulaдiң тiлiнде объекттердiң подоб ныхтың жиынның анықтауы үшiн белгiсiз үлгiлер ролдi ойнайды. Сайып келгенде, атрибуттарды ылғи бiр жиындарды алатын және ылғи бiр қатынастарға жауап беретiн объекттер сыныптың бiлiммен бiргесiмен топтастырыла алады. Атрибуттар және оларға қатысты әдiстерi барлық сынып үшiн бiр рет анықталады, әрбiр объект үшiн бөлек емес. Сынып объекттер кейбiр оның (instance ) экземп лярамилары деп аталады. Әрбiр дана атрибуттардан мәндермен әрбiр го өз меншiктi ие болады, бiрақ сыныптың басқа деректер даналарымен бiрлесiп талқылау атрибуттардың ылғи бiр аттар және әдiстерi ол үшiн қолданады.

Авторлар торые кiм олардың арасындағы айырмашылыққа көрсететiндiгiменнен, "сынып"және "түр" терминдердi әдебиетте синонимдарды жиi сияқты қолданылады. "түр" термин мәлiмет абстрактiлi түрлерiнiң нятиюы бойынша көп сәйкес келедi. Программиро вания тiлде айнымалы оның түрiнiң нұсқауымен жариялайды. Компилятор тексеруi үшiн бұл мәлiметiн олардан программалық қамтамасыз етудi түзулылыққа кепiлдiк беруге мүмкiндiк берген түрмен үйлесiмдiкке айнымалы операциялармен атқарылатын қолдана алады. Басқа жағынан, сынып объекттердiң жасауы үшiн белгiсiз үлгi болып табылады және объекттерге осыған қолданыла алатын ды таңба iлiгедi. Сайып келгенде, "сынып" ұғым компиляцияны уақытқа қарағанда орындауды уақыт үлкен дәрежеде жатады.

Сонымен бiрге сыныптың кейбiр объективтi-хабар жүйелерiнде объект болып табылады және атрибуттармен және сәйкесiнше сәйкесiнше сыныптың тамиы атрибаны және сыныптың әдiстерiмен деп аталған әдiстермен өз меншiктi ие болады. Мысалы, сыныптың атрибуттары орташа немесе қорытынды мәндер бұл сыныптың ортақ мiнездемелерi суреттейдi. Сыныптың әдiстерi өзгерiс немесе сыныптың атрибуттарын күйдiң сұрауы үшiн қолданылады. СА және керексiз даналардың алып тастауын кластың жаңа даналардың жасауы үшiн сыныптың арнайы әдiстерi сонымен бiрге бар болады. Жаңа эк земпляр объективтi-хабар тiлде әдетте newы командасы арқылы жасалады. Жадтың кеңiстiгiнiң бос емес онын жасаудың ұқсас әдiстерi және босатуы бар даналардың жалқаулығының удасы сәйкесiнше сәйкесiнше конструкторлармен және деструкторлармен деп атайды. Ния жiберiлетiн сыныптың әдiстерi жалпы сыныптарға жiбередi, оның даналары емес. Сонымен бiрге Ява сыныбы сыныппен деп аталғаны жоғары деңгейлi сыныптың данасымен тебiсетiнiн есептейдi.

Класс тармақ, суперкласстар және мұрагер болу Кейбiр объекттер ұқсас иемдене алады, бiрақ ұқсас емес атрибуттар және әдiстер. Егер мұндай ұқсастықтың дәрежесi жеткiлiктi биiк болса, онда (атрибуттар және әдiстер) кейбiр қасиеттер использо вать сонымен бiрге мағынасы болады. (inheritance ) мұрагер болу негiзде бiр сынып ортақ сыныптан астам анықтауға мүмкiндiк бередi. Класс тармақтарымен зываютсяға мұндай ортақ сыныптардан кемдер, ортағырақ - суперкласстармен. Перклассаның суды бiлiмiнiң процессi (generalization ) жалпылаумен деп аталады, САның подкласының бiлiмiнiң процессi - мамандандырумен. Класс тармағын үндемеу бойыншаға САның оның класының барлық қасиетi мұра етедi және өз меншiктi сирек кездесетiн қасиеттердi оған қосымша ретiнде анықтайды. Бiз қалай алайда, жақында көремiз, сонымен бiрге класс тармағы қайта анықтай аламыз ды таңба мұра етiлгенбiз. Класс тармағының барлық даналары суперкласстың даналарымен сонымен бiрге болып табылады. Керiсiнше, алмастыруларды қағидаға сәйкес, суперкласстың эк земплярасы орынына кез келген әдiс және конструкция үшiн оның класс тармағы әрдайым дананы пайдалануға болады.

Мiнез-құлыққа да, Нияны тұра да мәннiң түрдiң үлгiлерiнде қаралды қоспағанда ұқсас сондай болып ұғымдар класс тармағы, суперкласс және мұрагер болудың ұғымдары. Класс тармағы және суперкласстың аралығында байланыс Ако түрiнiң байланысымен әдетте деп аталады. Данамен және оның сыныбының аралығында байланыс IS-A-шi түрдiң байланыстарымен кейде деп атайды. Мұрагер болудың бiрнеше түрлерi бар болады: жеке, ственное, (суреттер 9, 10, 11 қара) қайтадан және сайлау.

9-шы сурет - 10-шi суреттiң жеке мұрагер болуының мысалы - 11-шi суреттiң тамырлы мұрагер болуының тобы мысал - қайтадан мұрагер болудың мысалы

Қайтадан мұрагер болу - бұл суперкласстарда ортақ суперкласстардан болған көптiк мұрагер болудың ерекше жағдайы.  Класс тармағына таңдаулы мұрагер болу шектелген мұра етуге мүмкiндiк бередi басқаша айтқанда оның суперклассының қасиеттерiнiң чествосы. Мұндай жол можности, ұсыныстардың жасауының ұқсас тетiктерi, рет функционалдық арбаларды суперкласстың бар атрибуттарының тек қана кейбiрi рұқсат шектеуге бел байласа iлiгедi. Қайта ұйғарым Автоматиче ски класс тармағы қасиеттiң суперкласстарынан мұра етедi, атрибуттар және әдiстер атап айтқанда. Класс тармағындағы суперкласстың қасиетi дегенмен қайтадан анықтауға болады. Осы жағдайда тап қолданылады онда ЄдЄсында тура келетiн қасиеттiң жалқаулығы опреде өзiмнiң бұл процессi реопределением пе деп аталады.  Суперкласстар және қолданудың олардың келесi совме стногосы ол үшiн бiрнеше класстардың ортақ қасиеттерiнiң санның қысқартуын қабiлеттiлiк тасымалдау есебiнен оларды қайта ғұлама мәлiметтердiң артықшылығы жүйенiң iшi айтарлықтай қысқартады.

Шамадан тыс жүктеу Алмастыру ортақ ұғымнан астам шамадан тыс жүктеулер жағдайдың бөлiндiсiмен болып табылады. Шамадан тыс жүктеу сынып және бiрнеше класстардың анықтаулары әдiс анықтаудың iшi атты пайдалануға қайтадан мүмкiндiк бередi. Бiр қатынас лгзҰмЄй әртүрлi функциялар выпол нятьнi алатынын, неткен объект ол алатынын және, раметры неткен Па әдiс алатынын бұл демек, соған сәйкес.  Полиморфизм және динамикалық байланыстыру Шамадан тыс жүктеу ортақ ұғымнан астам полиморфизмдар жағдайдың бөлiндiсiмен болып табылады. үш полиморфизмның түрiнiң ществуютi су: жұмыс, қосындылар және параметрлiк. Оның класс тармақ мұра етiлген зығыр суперкласстағы әдiс, опреде қосынды полиморфизмның үлгi-өнеге болады. Параметрлiк полиморфизм, немесе әмбебаптық, әмбебап түр немесе сынып хабарлауларындағы түрлердiң Ния Использовасы параметрлер ретiнде бiлдiредi.

Тиiстi әдiстiң таңдауының объекттiң түр негiзделген процессi байланыстырудың Сяоларын деп атайды. Егер объекттiң түрiнiң анықтауы (компиляция уақытында емес) орындауды уақыттың шабуылына дейiн бөлiп шығарып қоя алса, онда динамикалық, немесе кешiрек, байланыстырумен вается Назы мұндай таңдау.

Құрама объекттер Объект қол астындағы объекттерден тұратында ахуал немесе компоненттер жиi пайда болады. Құрама объектпен нақты дүниедегi объект еди ный сияқты көрiнетiн объект деп аталады, бiрақ A-PART-OFтың түрiнiң бекiтiлген байланыстарымен жиынның түрiндегi өздiң басқа объекттерiнде, немесе (не-онда бөлiк) Арода болады. Өздерiң кiрiстiрiлген объектер сенi мұндай Ароның түрдiң иерархиясының бiлiмiмен құрама бола аласың. Кiрiстiрiлген объекттердi объективтi-хабар жүйеде бiр қолдануға болады екi әдiстердiң щихы шығамын. Бiрiншiден, объекттiң құрамды бөлiгiн бiлiмi бар iшiнде құрама объект басқалық есебiнен.  Кiрiстiрiлген объекттiң құрылымы осы жағдайда объекттiң құрамды бөлiгi және оған рұқсатты құрастырады тек қана әдiстер арқылы құрама объект алуға болады. Екiншiден, кiрiстiрiлген объект тәуелсiз құрама объекттен сияқты қарала алады. Және аналық объекттегi осы жағдайда өзiмнiң объектi емес, керiсiнше оның GDIлерi - идентификатор сақталады. Мұндай әдiс сiлтемелердiң бiрлескен қолдануымен деп аталады. Кiрiстiрiлген объект құрылыммен және әдiстермен өз меншiктi ие болады, сонымен бiрге бiрнеше аналық объекттерге жата алады.

Перманенттiк программалау тiлi - оның (айқын ) қолданушыларына мәлiметтер тiкелей бағдарламаның бiртiндеп орындауында сақтауға мүмкiндiк берген тiл бұл мәлiметтер кейiн не көп басқа бағдарламалармен де қолданыла алады. Перманенттiк программалау тiлiндегi мәлiметтерi олардың созы бағдарламаның орындауын уақыттан тысқары бар болуға қабiлеттi граммдар туралы неткен еш тәуелдi болмайды беретiн. Тұжырымдамалардан да, дәстүрлi программалау тiлдерi де деректер қоры программалау тiлi - деректер қорының программалауды үлгi алған кейбiр идеяларды интегралдайтын тiл, сол сияқты.

Деректер қоры программалау тiлi перманенттiк программалау тiлiнен сол айырмашылығы болады, сонымен бiрге перманенттiлiктен тысқары, ол мұндай транзакциялармен, параллелдiкпен және қалпына келтiрумен басқару функциялар қамтамасыз етедi.  (ODL ) объекттердiң сипаттама тiлi үйлесiмдi жүйелердiң ODMGға объектiнiң түрлерiнiң анықтауларын жасауы үшiн қолайлы тiлiмен специфици рующим болып табылады. Негiзгi оның тағайындауы ДҚБЖ диционных баламалы осы DDLларды анықтауды тiлге Оосубд, ODLның тiлiнiң аралығында ствияның деялардың мүмкiндiгi қолдауы бар үйлесiмдi жүйелердiң арасындағы схемалардың симостиы бiрақ жеңiлдету тра болып табылады. Ол миды түрдiң аралығында атрибуттар және байланыстардың анықтауы үшiн арналған, сонымен бiрге операциялардың сигнатураның тапсырмасы. Тап қалған сигнатуралардың бұл сипаттамада нақты iске асыруы ескерiлмейдi.

Ұқсас синтаксистiң SQL қолданушы объективтi-хабар деректер қорына рұқсатының ресми түрде құралы өзiменмен ставляет (OQL ) объективтi-хабар сұрау салулар тiлi алдында. Ұқсас функциялар операцияларға, бөлiнген объектiнiң түрлерiндегi Опрасы жеткiзiлiп берiлетiндiгiнен, онда анық жаңартудың операторлары ескерiлмеген. Осылай, сонымен қатар SQLның тiлiнiң жағдайында, OQLның тiлi ODMGның стандартында не үшiн операторлары бағдарламада басқаға енетiн тiл негiздi тiлi олардың байланыстыруын док сөге анықталған дербес сияқты қолданыла алады.

Негiзгi әдебиет: [794-843 ] 1 Бақылау сұрақтары: 1. Абстракцияның объективтi-хабар жолы, басқалық және ақпаратты жасырудың негiзгi тұжырымдамалары түсiнiк берiлiңiз. 2. Не объектпен және объекттiң атрибуттарымен деп аталады? 3. үшiн объект идентификаторы не арналған ба? Оның қасиетiн санап шығыңыз. 4. Артықшылықтар неткен қолдану объект идентификаторларын бередi? 5. Не оларды анықтаған, не тұратын әдiстермен деп аталады? Не қатынаспен деп аталады?

6. Сынып түсiнiк берiлiңiз. үшiн сыныптың әдiстерiн не қолданылады және олар қалай деп аталады? 7. Класс тармағы, суперкласстар және мұрагер болу түсiнiк берiлiңiз. Байланыстар неткен класс тармағы және суперкласстың аралығында бар болады? 8. Сiз мұрагер болудың түрлерi неткен бiлесiңiз? 9. Не қайта ұйғарыммен, шамадан тыс жүктеумен, полиморфизммен және динамикалық байланыстырумен деп аталады?

Соседние файлы в папке Лекция