Информатиканы тереңдетіп оқытатын сыныптарда информатика сабағын өткізу әдістемесі



Кіріспе 3
1 Объектілі бағдарлы программалау 5
1.1 Объект ұғымы 5
1.2 Обьектілі. бағытталған программалау қаситеттері мен әдістері 9
2 Мектепте информатика пәнін оқыту әдістемесі 14
2.1 Информатиканы оқыту түрлерi мен әдiстерi
2.2 Информатиканы тереңдетіп оқытатын сыныптарда информатика сабағын өткізу әдістемесі 17
Қорытынды 23
Пайдаланылған әдебиеттер 24
Компьютердің құрылымына байланысты төменгі, ортаңғы,жоғары деңгейлі программалау тілдері болады.
Төменгі деңгейлі тілдерге нақты компьютрлік машиналық командалар тілі енеді. Машиналық тілдегі программа командалар тізбегі, яғни, операцияға қатысатын операндтардың адрестерімен орындалатын операцияның кодтарының тізбегі. Мұндай программалау тілдерін компьютерге тәуелді тілдер деп те атайды. Машиналық тілде жазылған программа басқа компьютерде орындалмауы мүмкін. Себебі бұл компьтердің командалар жүйесі мен құрылысы өзгеше болуы мүмкін. Машиналық тілде жазылған программа жылдам орындалады және жадтан аз орын бөледі. Машиналық тілде программалау көп уақыт жұмсауды қажет етеді.
Машиналық тілдердің кемшіліктері ортаңғы деңгейлі машинаға бағдарланған. Машиналық тілде программалау кезінде жадты бөліктеу жұмысын программалаушы орындайды. Ал бағдарланған тілдерде ол жұмысты компьютр атқарады. Нақты адрестермен оперция кодтары орнына символдар және бір командаға біріктірілген командалар тізбегі ретінде орындалады. Ортаңғы деңгейлі тілдерге автокодтар мен ассемблер тілі кіреді. Ассемблер автокодтарды машиналық тілге аударады. Мұндай программалау тілдерін трансляторлар деп атайды. Ассемблер тілінде программалау копьютр құрылымының барлық мүмкіндіктерін қолдануға мүмкіндік береді.
Жоғары деңгейлі программалау тілдері компьютрге тәуелсіз деп те атайды. Яғни, траслятор прогаммалау тілінде жазылған командаларды машиналық тілге аударады. Жоғары деңгейлі программалау тілде проблемалық- бағдарланған және универсады болып бөлінеді.
Проблемаға бағдарланған тілде тек бір салада есептерді тиімді шешуге арналған. Мысалы, экономикалық есептерді, лисп, пролог- жасанды интеллект саласындағы есептерді шешуге арналған. Универсал программалау тілдері кез келген сипаттағы, кез келген саладағы есептерді шешуге мүмкіндік береді. Универсал программалау тілдері процедуралық және объектілі – бағдарлы болып екіге бөлінеді. 1950 жылы алғашқы процедураға бағдарланған Фортран программалау тілі пайда болды, ал 1960 жылы Алгол программалау тілі, кейін Basic, Pascal, Cu, APL т.с.с. программалау тілдері шығарыла бастады.
Паскаль программалау тілі 1969 жылы жасалынған, оны Швейцария ғалымы Никлаус Вирт құрастырып шығарған. Алғашқы кездері тіл программалау негіздерін оқытуға арналып шығарылғаны уақыт өте келе кәсіби программалаушының арасында кеңінен қолданыс тапты. Қазіргі кезге дейін программалау тілі жетілдіріліп, оның көптеген нұсқалары пайда болды. Паскаль тілі программалауға ыңғайлы құрал болғандықтан қазіргі кездерде де көптеген мәселерді шешуге пайдаланады.
Паскаль тілінің соңғы нұсқасын 1991 жылы Borland International компаниясы жасап шығарды.
1. А.С. Немнюгин. Л. Перколаб “Изучаем Turbo Pascal”. Питер. 2002.
2. А. Файсман. Профессиональное программырование на языке Турбо Паскаль.
3.Нұрмұханбетова Г.К, А. Әмiрбекұлы, М. Сүлейменова
Паскаль тiлiнен лабораториялық практикум. Шымкен. 2002
4. В.В. Фаронов. “Turbo Pascal 7.0”. Издательства МГТУ. 1992.
5. А.И. Марченко, Л.А. Марченко. Программирование в среде Turbo Pascal 7.0. Москва. 1999
6.О. Камардинов. Паскаль тiлiндегi программалау. Шымкент. 2001
8.
9. Молли Э. Хольцаг. Использование HTML 4. Москва. 2001.
10. С. Симонович., Г. Евсеев., Специальная информатика. М. 2002.
11. Р. І. Қадірбаева, Л. Ә. Сүлейменова. Microsoft Front Page. Шымкент. 2000.
12. В. А. Острейский. Лабораторный практикум по информатике. М. 2003.
13. Глушаков В. Программирование в Visual Basic. М. 2000

Пән: Педагогика
Жұмыс түрі:  Курстық жұмыс
Тегін:  Антиплагиат
Көлемі: 23 бет
Таңдаулыға:   
Информатиканы тереңдетіп оқытатын сыныптарда информатика сабағын өткізу әдістемесі
Мазмұны
Кіріспе 3
1 Объектілі бағдарлы программалау 5
1.1 Объект ұғымы 5
1.2 Обьектілі- бағытталған программалау қаситеттері мен әдістері 9
2 Мектепте информатика пәнін оқыту әдістемесі 14
2.1 Информатиканы оқыту түрлерi мен әдiстерi 14
2.2 Информатиканы тереңдетіп оқытатын сыныптарда информатика сабағын өткізу әдістемесі 17
Қорытынды 23
Пайдаланылған әдебиеттер 24

Кіріспе
Компьютердің құрылымына байланысты төменгі, ортаңғы,жоғары деңгейлі программалау тілдері болады.
Төменгі деңгейлі тілдерге нақты компьютрлік машиналық командалар тілі енеді. Машиналық тілдегі программа командалар тізбегі, яғни, операцияға қатысатын операндтардың адрестерімен орындалатын операцияның кодтарының тізбегі. Мұндай программалау тілдерін компьютерге тәуелді тілдер деп те атайды. Машиналық тілде жазылған программа басқа компьютерде орындалмауы мүмкін. Себебі бұл компьтердің командалар жүйесі мен құрылысы өзгеше болуы мүмкін. Машиналық тілде жазылған программа жылдам орындалады және жадтан аз орын бөледі. Машиналық тілде программалау көп уақыт жұмсауды қажет етеді.
Машиналық тілдердің кемшіліктері ортаңғы деңгейлі машинаға бағдарланған. Машиналық тілде программалау кезінде жадты бөліктеу жұмысын программалаушы орындайды. Ал бағдарланған тілдерде ол жұмысты компьютр атқарады. Нақты адрестермен оперция кодтары орнына символдар және бір командаға біріктірілген командалар тізбегі ретінде орындалады. Ортаңғы деңгейлі тілдерге автокодтар мен ассемблер тілі кіреді. Ассемблер автокодтарды машиналық тілге аударады. Мұндай программалау тілдерін трансляторлар деп атайды. Ассемблер тілінде программалау копьютр құрылымының барлық мүмкіндіктерін қолдануға мүмкіндік береді.
Жоғары деңгейлі программалау тілдері компьютрге тәуелсіз деп те атайды. Яғни, траслятор прогаммалау тілінде жазылған командаларды машиналық тілге аударады. Жоғары деңгейлі программалау тілде проблемалық- бағдарланған және универсады болып бөлінеді.
Проблемаға бағдарланған тілде тек бір салада есептерді тиімді шешуге арналған. Мысалы, экономикалық есептерді, лисп, пролог- жасанды интеллект саласындағы есептерді шешуге арналған. Универсал программалау тілдері кез келген сипаттағы, кез келген саладағы есептерді шешуге мүмкіндік береді. Универсал программалау тілдері процедуралық және объектілі - бағдарлы болып екіге бөлінеді. 1950 жылы алғашқы процедураға бағдарланған Фортран программалау тілі пайда болды, ал 1960 жылы Алгол программалау тілі, кейін Basic, Pascal, Cu, APL т.с.с. программалау тілдері шығарыла бастады.
Паскаль программалау тілі 1969 жылы жасалынған, оны Швейцария ғалымы Никлаус Вирт құрастырып шығарған. Алғашқы кездері тіл программалау негіздерін оқытуға арналып шығарылғаны уақыт өте келе кәсіби программалаушының арасында кеңінен қолданыс тапты. Қазіргі кезге дейін программалау тілі жетілдіріліп, оның көптеген нұсқалары пайда болды. Паскаль тілі программалауға ыңғайлы құрал болғандықтан қазіргі кездерде де көптеген мәселерді шешуге пайдаланады.
Паскаль тілінің соңғы нұсқасын 1991 жылы Borland International компаниясы жасап шығарды.
Паскаль тілі - компелятор. Паскаль тілінде алфавит Бейсик тіліндегідей, мұнда программалау ортасын іске қосу үшін бірнеше фактор жиынтығы керек:
1. Turbo.exe - программаларды құру үшін интегралданған орта.
2. Turbo.hlp - көмекші мәліметтер орналасқан файл.
3. Turbo.tp - Turbo.exe файлы қолданатын конфигу- рациялық файл.
4. Turbo.tpl- Turbo Pascal-дің резидентті модульдері.
5. Tptour.exe- программалау ортасы алғаш іске қосылған кезде орта жайлы мәлімат беретін программа.
6. Graph.tpu - ортаның барлық графикалық программасын іске қосатын файл.
Қазіргі кезде Паскаль тілінің Turbo Pascal нұсқасы қолданылады. Бұл ортаны іске қосу үшін Turbo.exe файлын орындау қажет. Файл орындауға жіберілгеннен соң программалау ортасы экранда ашылады.
Мақсаты - - - Объектілі-бағдарлы программалаудың теориясын меңгеру, оның ішінде программалар құруды үйрену және Turbo Pascal-да мәзір арқылы ұйымдастыру.
Міндеттері:
1. Объектілі-бағдарлы программалауға қажетті мәліметтер жинау;
2. Инкапсуляция, мұрагерлік, полиморфизмнің мағынала-рын түсіну;
3. Turbo Pascal-да файлдармен жұмыс жасау;

Объектілі бағдарлы программалау

1.1 Объект ұғымы

Объектілі бағдарлы программалаудың ең үздік технологиясы және модификациясы жеңіл программа жасауға мүмкіндік береді. Оның мүмкіндіктерін ОБП тілінде қолдануға болады. Ондай тілдердің бірі Simula 67 , ол 60 - шы жылдардың екінші жартысында пайда болды. Қазіргі программалау тілдері ОБП-ны қолдайды. Оларға С++ , Java, Delphi т.б жатады. Бұл методология Turbo Pascal- дың 5.5 версиясынан бастап пайда болды. Мынаны айта кету керек, тек қана ОБП тілдерінде емес басқа тілдерде де, мысалы, С және Фортран тілдерінде ОБП- ны қолданады. Бірақ оның жұмысын іске асыру өте қиынға түседі. Кейбір тапсырмалар класы дәстүрлі жолмен оңай шешіледі.
ОбП- ны пайдаланып, программаны өңдеу проектілі жүйенің объектілі моделін өңдеуден басталады. Ол үшін проблемаларды объектілерге бөліп, олардың арасындағы бір- біріне тәуелділігін ашады. Бұл шығармашылық процесс болашақ жүйені қарастырушы программалаушының біліктілігіне сүйенеді. Егер, мысалы, беттің кескіні туралы сөз етсек, онда бастапқы беттің жылтыры тегіс фрагменттердің жиынтығымен, үшбұрыштармен нақты көрінеді. Бұндай бөлінуді триангуляция деп атайды. Бұл жағдайда үшбұрыштар объект болып есептелінеді. Үшбұрыштар қабырғаларымен,бұрыштың өлшемдерімен анықталады. Бірақ олардың ұқсастықтары бар болғанымен үшбұрыштарды жалпы бір класқа біріктіруге мүмкіндік береді. Объектінің сипаттамасы оның атрибуттарының жиынтығы болып табылады. Оларды тұрақты және тұрақсыз атрибуттар деп екіге бөледі. Тұрақты атрибуттар оның класындағы объектілерді сипаттайды. Мысалы, көпбұрыштың төбелерінің санын айтуға болады. Ал, тұрақсыз атрибуттар объектінің жағдайын сипаттайды - осы атрибуттың мағынасын өзгерту арқылы, біз объектінің жағдайын өзгерте аламыз. Мысалы, көпбұрыштың төбелеріндегі бұрыштардың өзгеруін айтуға болады. Кейде атрибуттардың типтері көрсетіледі, себебі, әрқайсысы әртүрлі мағына береді және тұрақсыз атрибуттың бастапқы мағынасын көрсетеді. Осы атрибуттың бастапқы мағыналары объектінің бастапқы жағдайын көрсетеді. Мысалы, үшбұрышты алатын болсақ, оның атрибуттары болып қабырғалары болып есептеледі.
Объектілерді класқа біріктірудің белгілері болып тек қана атрибуттар ғана емес, сондай-ақ тапсырмалардың контекстісі де есептеледі, мысалы, тікбұрыштар және тікбұрышты үшбұрыштар бірдей атрибуттардың жиынтығымен сипаттала алады- іргелес екі қабырғалардың ұзындықтары. Солай бола тұра олар әртүрлі геометриялық қасиеттермен бірге әртүрлі математикалық объектілер бола алады.
Объектілерді класқа біріктіру тапсырмаларды жалпы қойылым ретінде көрсетуге мүмкіндік береді. Осы кластың барлық объектілеріне қатысты өзіне тән аты болады. Сонымен қатар кластағы атрибуттардың аттары кейбір объектілерге байланысты қойылады. Класты сипаттау `' жазу `' түрін сипаттауды еске түсіреді, әр объект тұрақты немесе тұрақсыз типтің мағынасындай мағыны береді.
ОБП- ның келесі негізгі түсінігі - операция. Операция дегеніміз берілген кластың объектісіне қолданатын функцияны айтамыз. Мысалы , үшбұрыштың геометриялық өзгерістері бір операцияны әртүрлі кластың объектісіне қолданады, оны полиморфтық операция деп атайды. Мысалы , " вектор" және "комплексті сан " объектісіне көбейту операциясын қолдануға болады. Бұл полиморфтық операцияның мысалы болып табылады, себебі , векторды көбейту және комплексті сандарды көбейту - әртүрлі математикалық операциялар.
Объект берiлгендердiң сипатталынуы мен оларды өңдейтiн программаларды бiрiктiредi. Объектiге енетiн программалар :
Процедуралар;
Функциялар;
Конструкторлар;
Деструкторлар түрiнде iске асады.

Объектке енгiзiлген программалар әдiстер деп аталынады және сонымен қатар:
Объект Turbo Pascal-да берiлгендердi сипаттау бөлiмiнде жазылады. Ал айнымалыларды сипаттау бөлiмiнде объект экземплярлары берiледi.
Type Pozicia=Object
X,Y:integer;
Procedure Init(NewX,NewY:integer);
Procedure Locat( var XL,YL:integer);
End;
Объектi сипаттау үшiн Object кiлiттi сөзi қолданылады. Pozicia объектiсiне берiлгендер ретiнде X және Y бѕтiн айнымалылары және әдiс ретiнде Init және Locate процедуралары енгiзiлген. NewX, NewY, XL,YL айнымалалары объектiнiң берiлгенi емес, Init және Locate процедураларының формальды параметрi болып табылыды. Әдiстердiң мәтiнi объектен тыс берiледi, сондықтан сипатталыну кезiнде қандай объектiге жататыны анықталынуы тиiс. Егер әдiстер әртүрлi объектiлерге тиiстi болса, онда олардың аттарын бiрдей етiп жаза беруiмiзге болады.Сондықтан әдiс атына оның қай объектiге жататынын көрсететiн префикс қосылып жазылады, мысал: Pozicia.Init, Circle.Init. Әдiстермен жұмыс iстеу үшiн айнымалы енгiземiз:
Var
MyPoz:Pozicia;
Бұл сипатталынудан кейiн MyPoz.Init(18,12) деп жазуымызға болады, яғни MyPoz объект экземплярының Init процедурасын шақыру арқылы объектiнi инициализациялау болып табылады, нәтижесiнде MyPoz объект экземплярының X,Y айнымалылары 18 және 32 мәнiне ие болады. Әрбiр объект экземплярының барлық айнымалыларына меншiктi жады алаңы болады және олар арасында мәндердiң алмасуы үнсiз жүргiзiлмейдi. Объект айнымалаларымен тура байланысуға болады. Төменде көрсетiлген мысалда программадағы екi нұсқаданың қай қайсысының орындалу MyPoz.Init процедурасының шақырғандағы нәтиженi бередi.
1-шi нұсқа:
MyPoz.X:=18;
MyPoz.Y:=32;
2-шi нұсқа:
With MyPoz do
X:=18;
Y:-32;
End;
ОБП әдiстемесi берiлгендермен тура байланысуға кеңес бермейдi. Объект берiлгендерiн сол объектiнiң әдiсi арқылы өңдеген жөн.
ОБП- ны қолданып жазылған программа бір-бірімен қарым - қатынаста болатын объектіден тұрады. Объектіні программалық жүзеге асыру- олардың өңдеу процедуралары мен берілгендерін біріктіру деген сөз. Турбо Паскальда Object типі бар, оны record құрылымды типінің жалпыламасы деп есептеуге болады. Тұрақсыз объек типін объект экземпляры деп атайды.
Объект типінің жазу типінен айырмашылығы тек қана берілгендерді сипаттайтын бөлімі ғана бар емес, тағы да объектіде сипатталатын процедуралар мен функциялар бар. Бұл процедуралар мен функциялар әдіс болып табылады.Объектінің әдістеріне олардың бөлімдері қатысты. Әдістері мен олардың параметрлері объектіні сипаттауда анықталады, ал оларды жүзеге асыру басқа жерде, яғни, программаның сол әдісті шақыру женрінде орындалады. Объектіні сипаттау әдіске қарайтын шаблондардан тұрады. Олар параметрлермен типтердің сандарының сәйкес екендігі компелятор үші н қажет.
Type
Location=obgect
x,y:integer;
Procedure init( initX, InitY: integer);
Function getX: integer;
Function getY: integer;
End;
Обьект резервтегі object_end сөздерінің көмегімен сипатталады. Олардың арасында әдістер мен бөлімдердің сипаттамасы бар. Келтірілген мысалда объект графикалық координаталардың белгілерін сақтау үшін екі бөлімнен, берілген объектілердің әдістері сипатталған процедура мен екі функциялардан құралған. Объекті типтердің сипатталауының басқа сипатталудан айырмашылығы - ол программалық бірліктің (программа, модуль) ең жоғарғы сатысында тұрады. Әдістер мен функциялар, процедуралардың сипатталу бөлімінде мұндай сипаттау болмайды. Резевтегі private сөзі объект бөлімдеріне кіре алмайды. Келесі мысалда X,Y айнымалысына location объектілі типінің getX, getY әдістері арқылы ғана кіреді. Мысалы:
Type
Location= object
Procedure init(initX, initY : integer);
Function getX: integer;
Function getY : integer;
Private X, Y : integer;
End;
Private секциясында объект әдістері де бола алады. Әдістерді толық сипаттау, яғни, оларды жүзеге асыру сипатталуы объектіні сипаттаудан кейін тұруы керек. Әдістердің аттары құрамалы және нүкте арқылы бөлінетін әдістердің аттары мен
объектілердің аттарынан тұрады . Мысалы :
Procedure Location.init(initX, initY : integer);
Begin
X:= initX;
Y:= initY;
End;
Function Location. getX: integer;
Begin
GetX:=X;
End;
Function Location.getY : integer;
Begin
GetY := Y;
End;
Объект сипатталып болғаннан кейін прграммада оның экземплярын қолдануға болады. Яғни, берілген объектілі типтерінің айнымалысын :
Var
Grmarker : location;

1.2 Обьектілі- бағытталған программалау қаситеттері мен әдістері

ОБП инкапсуляция, мұра, полиморфизм деген қасиеттерден тұрады.
Инкапсуляция - дегеніміз ол объектінің өзіне қолданылатын қажетті детальді жасыру.инкапсуляция тек өзіне тән әдістері арқылы ғана берілгендерге кіруді ұйымдастыратын бірден бір тәсіл. Инкасуляция- жаңа объект түрiн өңдеудегi берiлгендердiң процедура және функциялармен бiрiгуi болып табылады. "Инкапсуляция" терминi- бұл жалпы бiр "қабыққа" (Object ... End) берiлгендер мен әдiстердi бiрiктiру мағанасын бередi.
Жоғарыда айтылғандай, ОБП әдiстемесiмен келiсе отырып, берiлгендердiң мәндерiн өзгерту мақсатында, берiлгендермен тура байланысуға болмайды. Объект берiлгендерi әдiстер арқылы өңделуi тиiст. Бұл инкапсуляция болып табылады. Private cипаттауы арқылы берiлгендер мен әдiстердiң бiр бөлiгiн объектен тыс пайдалануға мүмкiншiлiк туғызбауға болады.
Type
NewObject=object
Public
Берiлгендердi сипаттау{ашық бөлiгi}
Әдiстердi сипаттау {ашық бөлiгi}
Private
Берiлгендердi сипаттау{жабық бөлiгi}
Әдiстердi сипаттау {жабық бөлiгi}
End;
Жабық берiлгендердi тек қана осы объектiнiң әдiстерi ғана өңдей алады алады.
Инкапсуляция принципі бойынша объект және оған орындалатын іс-әрекеттер біріктіріліп объектінің ерекше бір түрінде қарастырылады. Яғни, әрбір объект және оған орындалатын іс-әрекеттер жеке класс ретінде ұйымдастырылады.
Біздің мысалда объектіні сипаттау init-инициялизациясының процедурасы және getX, getY функциялары бөлек өзінше объект бола алмайды. Ол - location объекті типінің бөлінбейтін бөлігі. Егер программада берілген типтердің бірнеше айнымалыларының сипаттамасы келтірілген болса, онда әр айнымалы берілгендерді сақтау үшін өзінің есте сақтау облысы болады, ал функциялар мен процедураларға кіретін нүктелердің нұсқаулары үшін жалпы есте сақтау облысы болады. Әр әдісті шақыру мүмкіндігі тек қана өзінің құрама атының көмегімен ғана орындалады.
Өзінің бұрынғы қасиеттерін пайдаланып, дамыта және өзгерте отырып, мұрагерлік жаңа объектілерді анықтауға мүмкіндік береді.
Мұрагерлік принцип- белгілі бір объектіден келесі бір объект туындап, туынды объекті бастапқы объектінің барлық қасиеттеріне ие болуы. Сонымен қатар туынды объект бастапқы объектіде болмайтын жаңа қасиетке ие болуы да мүмкін. Туынды объект түбірлік объектіден барлық өрістер мен әдістерді қабылдап және оған өзінің өрістері мен әдістерін қосады немесе түбірлік объектінің әдістерін өзінікіне айырбастай алады. Туанды объектінің сипаттамасы мына мысалда келтірілген.
Мұра -бағынышты объектiлерден тұратын иерархиялық құрылымды құрайтын бағынышты объектiнi анықтау. Әрбiр бағынышты объект ататегi объектiсiнiң берiлгендерiне, процедура мен функцияларына тiкелей байланыса алады.
Ататегi объектiсiнiң атын туылатын жаңа объектiнiң сипатталуына жазу арқылы мұра қалдырылынады. Осылай ағаш тәрiздi құрылым құрылады. Мұра-бұл объектiлер емес, объект түрлерi арасындағы байланыс болып табылады. Мысалы:
Type Pozicia=Object {Ата-ана объектiсi}
X,Y:Integer;
Procedure Init(NewX,NewY:integer);
Procedure Locate(Var XN,XL:Integer);
End;
Kom=Object(Pozicia) {Бағынышты объект}
Cvet,Raz:Word;
Procedure Init(NewX,NewY:Integer;Color:Word);
Procedure Zoom(Delt,Znak:Integer);
End;
Pozicia түрiне бағынышты Kom түрi қабырғасы Raz (пиксел бойынша) болып келген боялған квадратты бередi. Мұнда мұрадан қалған X,Y координаттары квадрат центiрiнiң координатасын бередi. Zoom процедурасы квадратты Delt және Znak аргументерi бойынша үлкейтедi (кiшiрейтедi).
Әдiстердi мұра ету. Жаңа алаңдарды сипатаған кезде, алаң аттарының қайталанып жазылмайтындылығын қадағалау керек. Объектiдегi жаңа алаң аты мұра арқылы алынған алаң атымен сәйкес болған жағдай программада қате туғызады. Ал әдiстер басқаша болып келедi. Объект (бағынышты объект) күрделi болған сайын, ол өзiн өрнектейтiн жаңа әдiстердi талап етiп ғана қоймай, ескi әдiстердi өзгеруiн талап етуi, оның "жүрiс-тұрысыда" күрделене түседi. Kom.Init локальды әдiс Pozicia.Init ата-ата әдiсiн жабады. Егер Kom.Init әдiсi болмаса, онда Pozicia.Init Kom түрi үшiн глобальды болып табылыды және автоматты түрде осы әдiске программа назар аударады.
Функциональды ұқсас әдiстердiң бiрдей аталынуы объектiлер жүйесiн қабылдау мен программалауды жеңiлдетедi.
Мысалы :
Type
Point= object(location)
Visible: boolean;
Procedure init(initX, initY: integer);
Procedure show;
Procedure hide;
Function isvisible: boolean;
Procedure moveto(newX,newY: integer);
End;
Бұл жерде point объектісі туынды объекті болады, ал түбірлік объект ретінде location объектісі болады. Туынды объектіде түбірлік объектінің өрістері мен әдістерінің сипаттамасы жоқ. Соңғысының ( түбірлік объектінің) аты дөңгелек жақшаның ішінде object сөзінен кейін көрсетілген. Туынды объект әдісінен түбірлік объект әдісін шақыруға болады. Туынды объект жасау үшін түбірлік объектінің алғашқы текстісінің болуын қажет етпейді. Түбірлік объект трансляциядан өткен модульдің құрамында болуы мүмкін.
Полиморфизм - туынды объектілердің бастапқы объектілер әдістерін басқа есептерді шешуге қолданылуы. Обект қасиеттеріне байланысты әдістер әртүрл іс- әрекеттер жасайды, осы кезде полиморфизм көрінеді. Полиморфизм виртуальды әдістермен және соңғы байланыс механизмімен байланысты. Дәл осы ситуацияда қандай операция орындалатындығы жөніндегі шешім программа орындалу кезінде қабылданады.
Полиморфизм ("көпкөрiнiстi") класты немесе әр кластың өзiнiң функциональды ролi бар бiрнеше кластарды туысқан объектiлерге анықтауды ұсынады. Күрделi әдiстi жүрiстерi әр түрлi объектiнiң әр түрiне беру керек болатын тууы мүмкiн. Бұл жағдайда объектiлерге жалпы бiр әдiс қолданып, айырмашылықтарын ауыспалы бағынышты әдiстерге жүктеген жөн болып табылады. Бұл идея конструктивтi полиморфизм деп аталады. Бұл идея виртуальды бағынышты әдiстер арқылы iске асады. Объектiнi сипаттау барысында әрбiр "ауыспалы" әдiстiң атынын кейiн Virtual сөзi жазылуы керек. Ал оларды қосу үшiн конструкторге назар аударуымыз керек. Конструктор-бұл процедураның бiр түрi болып табылады және объектiнi сипаттау барысында Constructor сөзi процедура алдына жазылады. Бұл түсiнiктердi жақсы игеру үшiн мысал қарастырылған.
Қарастырылатын мысалда объектiлер ретiнде геометриялық фигуралар алынған. Кадарларды ауыстыра отырып "көрiнiстi жасыру-позициясын өзгерту-жаңа орында пайда болу" принципы бойынша фигураларды (хаосты) ұшыратын Fly әдiсi объектiлермен жұмыс iстейдi. Мұнда көрсету (Show) және жасыру(Hide) фигураның әр түрiне арнайы арналған болып табылады. Бұлар виртуальды әдiстерге "кандидат" болады. Бұл мысалда, негiзгi ой- өлшемiн, түсiн және пропорциясына дейiн өзгерiп отыратын "ұшатын" фигуралар жиынын құру болып табылады.
Виртуальды емес әдiстер қарапайым блоктар сияқты программаны компиляциялаған кезде қосылады (ерте байланысу). Виртуальды әдiстер үшiн әр түрге компилятор олардың адрестерi жазылған ВӘК (виртуальды әдiстер кестесi) кестiн жадыда құрады. ВӘК кестесi орындалу кезiнде қолданылады ("қожайын"-әдiспен кеш байланысу). Конструкторге назар аударған кезде, ол объектiдегi арнайы алаңға осы түрдегi объектiнiң BӘК кетесiне нұсқау жазылады. Fly әдiсi Show және Hide әдiстерiмен ВӘК кестесi арқылы байланысады.
Әдіс - объектінің қасиеттерін өзгертуге арналған процедуралар мен функциялар. Операция - бұл әдістің сипаттамасы, ал әдіс операцияны жүзеге асыру болып табылады. Логикалық жағынан қарағанда әдістер бірдей операцияларды орындайды, бірақ әртүрлі кодтың фрагменттерімен жүзеге асырылады. Әрбір операцияда анықталмаған аргумент болады, ол сол операция қолданатын объект, бірақ басқа да аргументтер болуы мүмкін, ол оны параметрлейтін параметрлер. Әдіс тек класс пен объектіге қатысты.
Объектінің кейбір атрибуттарының мағынасы тек сол объектінің оперциясына ғана қатысты бола алады. Ондай атрибуттар жабық атрибуттар деп аталады. Объектілерде жабық операцияларды да анықтауға болады.
Осылайша класс тапсырмасы үшін сол кластың аты көрсетілуі керек, одан кейін оның атрибуттары мен операциялары ( әдістері) көрсетіледі. Жалпыламалау және мұрагерлік объектілер классификациясының көп сатылы екендігін және объектінің әртүрлі кластарының арасындағы ұқсастықтарды анықтауға мүмкіндік береді.Мысал ретінде көптеген геоматриялық фигураларды келтіруге болады.
Жалпыламалау мыналарды анықтауға мүмкіндік береді:
Класс "бір өлшемді фигуралар", "түзу" және "доға " кластары "бір өлшемді фигуралар" кластарының ішкі класы болып есептеледіб ал бір өлшемді фигуралар класы түзу және доға класының суперкласы болып табылады. Егер осындай келісушілікте қарайтын болсақ, суперклассоперациясы мен атрибуттары сол ішкі класқа сәйкес болады ( сол атрибуттар мен операциялар ішкі кластарға мұрагер бола алады), онда доға және түзу кластарының ( ішкі кластар) атрибуттарымен операциялары бір өлшемді фигуралар класына ( суперкласс) көшіріле алады. Әр супер кластың атрибуттары мен оперциялары ішкі кластың барлық сатысындағы мұрагері болып табылады және бұл кластарды сипаттауды жеңілдетеді және қысқардады.
Кейде белгілі бір суперкластағы ішкі кластың операциясын қайта анықтау қажет болады. Ол үшін мұрагерлік нәтижесінде суперкластан алынған операция қолданылады. Егер жаңа операция мұрагерлік операциясын кеңейтетін болса, онда қайта анықтау қолданыдады. Төмендегі суретте үш өлшемді нукте класының және екі өлшемді нүкте класының атрибуттары мен операцияларының мұрагерлеу схемасы көрсетілген. Екі өлшемді нүктенің координаталары берілген. Ол оның атрибуттары, ал екі өлшемді нүкте объектілерінің орындайтын операциясы Х, У координаталарын және нүктенің арақашықтығын анықтау. Үш өлшемді нүкте класы ( ішкі класс) өзінің екі өлшемді нүкте суперкласының Х,У координатасын мұрагерлікке алады және өзіне тағы бір атрибут- Z координасын қосып алады. Х,У координатасын анықтау операциясы да мұрагерлікке алынады. Одан басқа Z координатасын анықтау операциясы қосылады және келесі үш өлшемді нүкте арасындағы арақашықтықты анықтау операциясын қайта орындайәды. Үш өлшемді нүкте арақашықтығын есептеу формуласының екі өлшемді нұсқадан айырмашылығы болады.
Turbo Pascal программалау тiлiнде әдiстердiң статикалық және виртуальды деген екi түрi бар. Статикалық әдiстер онша күрделi емес, жадыдан аз орын алады және тез орындалады, бiрақ ОБП барлық артықшылығын толығымен көрсете алмайды. Жоғарыдағы программада пайдаланылған әдiстер - статикалық әдiстер болып табылады, яғни, егер әдiстiң түрi , онда ол статикалық болып табылады.
Виртуалды әдістер.
Виртуалды әдістермен оларды шақыратын процедуралар арасындағы байланыс программаны орындау барысында орнатылады. Бұл соңғы байланыс деп аталады. Оның алғашқы байланыстан айырмашылығы ол компеляция кезінде орнатылады. Виртуалды объектіні сипаттауда әдістің атынан кейін резервтегі virtual сөзі қолданылады. Туынды мен түбірлік объектінің виртуалды әдістерінің аттары бір- біріне сәйкес келуі керек. Виртуалды әдістері бар объектінің экземплярын инициализациялау арнайы әдіс - конструктордың көмегімен орындалады. Конструктор объект өрісіне алғашқы белгілерді иелендіреді және объектіні инициялизациялау кезіндегі керекті іс-әрекеттерді орындайды. Әдіс- конструктор атында procedure сөзі constructor сөзімен алмасады. Конструктор іс-әрекетіне қарама- қарсы іс- әрекет тағы да ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Информатиканы мектепте оқытудың жалпы мәселелері
Информатиканы бастауыш сыныптарда оқытудың мақсаттары
Информатика курсын оқыту құралдарының жүйесі
Мектеп журналының электрондык түрі
«Бастауыш мектепте информатиканы оқыту теориясы мен технологиясы» пәні бойынша оқу-әдістемелік кешен
Бастауыш сыныпта информатика пәнінің оқыту ерекшелігі
Информатиканы оқытудың нақты мақсаттарын анықтау
Бейінді оқытуды ұйымдастыру жолдары
Мектептегі информатика курсының тәрбиелік мақсаты. Қазақстандағы бейіндік оқытуды ұйымдастыру тәжірибесі
Информатиканы дербес оқыту әдістемесі
Пәндер