«Қазақстан тарихы, жалпы білім беру пәндері және ақпараттық жүйелер» кафедрасы



бет20/64
Дата17.06.2022
өлшемі0.51 Mb.
#459285
түріЛекция
1   ...   16   17   18   19   20   21   22   23   ...   64
Объектті ӛңдеуге қабілетті хабарламалардың жиыны объект интерфейсі деп аталады.
Объектке интерфейсінде бар хабарламалар ғана жіберілуге тиіс.

Тәсілдер


Ӛзіне жіберілген хабарламаларды ӛңдеу үшін объект тәсілдер(кейде ережелер деп аталады) деп аталатын ерекше процедураларды пайдаланады.
Объекттің мінез-құлығы деп оның тәсілдерінің бірлестігін айтады.
Тәсіл хабарлама параметрлерін қабылдап, оларды және объекттің локал жадысындағы мәліметтерді басшылыққа ала отырып, қайсыбір әрекеттерді (есептеулерді) орындап, нәтижені хабарламаны жіберген объектке қайтарады.
Си++, Паскаль сияқты тілдердің жасақшылары Смолток тіліндегідей хабарламаны символдық идентификаторлармен бірге жіберуден бас тартты. Себебі, мұндай механизм ӛте үлкен және сәйкес тәсілді таңдау үшін кестелерден хабарлама идентификаторын іздеп отыру қажет. Мұның орнына хабарламаны жіберу бұл тілдерде тәсілді процедура ретінде шақырумен алмастырылған. Хабарламаның бастапқы идеясына сәйкестендіру үшін тәсілді шақыру қарапайым процедураны шақырудан ӛзгешелеу етілді.
Объекттің локал жадысы. Инкапсуляция принципі
Объекттің локал жадысы ӛз құрылымына ие. Програмалаудың әртүлі тілдерінде объекттің локал жадысының құрылымдық бірлігін белгілеу үшін түрлі термин қабылданған. Мысалы, ӛріс (Турбо Паскальда), объект жағдайының айнымалысы(Си++-те), немесе экземплярайнымалы(Смолток-та).
ОБП идеясы нақты объекттің тәсілдері ғана оның локал жадысымен жұмыс істей алады дейді, және локал жадының құрылымы тәсілдің ішінде ғана белгілі деп есептейді. Осы кӛзқарас тұрғысынан «Бұл тәсіл объекттің мынадай айнымалысының (ӛрісінің) мәнін қайтару үшін қызмет етеді» деу дұрыс емес. Ӛйткені сырт кӛзге объекттің локал жадысында осындай айнымалының бар екендігі белгісіз.
Мысалы, жолаушы лифтінің мінез-құлқын моделдейтін объектті сипаттайтын болсақ, және локал жадының passengerCount деп аталатын бір ұяшығында кабинадағы жолаушылардың ағымдық саны сақталса, онда «кабинадағы жолаушылар санын қайтаратын» тәсіл құруға болады. Бірақ, ол туралы «passengerCount ӛрісінің мәнін қайтаратын» тәсіл деп айту дұрыс емес (ол осылай жұмыс істеуі де мүмкін).
Жоғарыда айтылған мәліметтерді қорытындылай келе, объекттерді «қара жәшік» ретінде елестету мүмкін, оның кірісіне қайсыбір әсер(хабарлама) беріледі, ал шығысынан жауап сигналы(нәтиже) алынады. Қара жәшіктің ішінде дәл не орындалатындығы, оның құрылымы– сырткӛзге кӛрінбейді.
Инкапсуляция принципі объектпен тек бір бүтін ретінде ғана жұмыс істеуді талап етеді. Объектті бір бүтін ретінде құруға, кӛшіруге, жоюға немесе «қолынан келетін нәрсені ӛтініш етуге»(хабарлама жіберуге) болады. Бірақ, сырттан тұрып объекттің бӛлігіне(ӛрісіне) қол жеткізуге болмайды.
Паскальда Си++, Смолток және ОБП-ң басқа тілдерінде объект ӛрісі ретінде басқа бір объектті алуға болады. Бұл жағдайда инкапсуляция принципі бойынша тәсілдің ішінде мұндай объект-ӛріспен жұмыс тек хабарлама жіберу жолымен жүргізілуі керек. Объект-ӛрістердің ӛрісіне қолжеткізу тек олардың ӛз тәсілдері арқылы мүмкін болады.


Достарыңызбен бөлісу:
1   ...   16   17   18   19   20   21   22   23   ...   64




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет