Класстар иерархиясы. полиморфизм


Қазақстан Республикасының Білім және Ғылым министірлігі

Тұрар Рысқұлов атындағы Қазақ экономикалық университеті

Кафедра «Қолданбалы информатика»

Пән атауы: «Программа құру және жоғарғы деңгейдегі тілдер»

Реферат

Тақырыбы:« Класстар иерархиясы. Полиморфизм»

Тексерген: Күзембекова Р. А.

Орындаған: Бекалаева А. С.

Факультет: ИЭФ

Топ: ЕТ-308

Алматы

2008

Жоспар:

Кіріспе . . . 3

І. C++ Builder программасы . . . 4

ІІ. C++ Builder -дің негізгі компоненттері . . . 6

ІІІ. Полиморфизм . . . 7

Қорытынды . . . 11

Пайдаланылған әдебиеттер . . . 12

Кіріспе

Компьютер эрасының басында программисттер машинаның құлы болған еді. Программаны жасаушылар өз программаларын компьютер түсінетін тілде жазуы керек болды, яғни, олар программаны екілік кодта жазуға мәжбүр болды және ол кейін нөлдік және бірлік жүйеде көрсетілуі тиіс болатын. Уақыт өткен сайын алгоритмдер қиындай түсті, программалау өте көп уақыт алды. Программадағы өзгерістер және модернизация енгізу мүмкін емесбола бастады. Осылай, жоғарғы деңгейдегі: Фортран, Бейсик және Паскаль тілдері пайда болды.

Прогаммаға талаптар көбейе түсті, олардың жазуына аз уақыт кетті. Программисттерге күрделі алгоритмдерді шешу алдыңғы мақсатқа қойылды және олардың нәтижиелігін жүзеге асыру, компьюте7дің ішкі структурасына мән бермеу. Ал мұнда жаңа мүмкінішілікті жаңа компьютерге программаларды көшіру қажет етті. Жаңа жол табу керек болды - ол обьекті- белгілі программа тілі.

70 - 80жылдағы Simulа тілі, Норвегиялық қарулы күштерінде қолданылатын программа тілі - ең алғашқы шыққан тіл болып саналады (класс - көп, ол мәлімет пен функцияларынан тұрады) . Сол уақытта программалаудың стандартты жаңа тіл пайда болды, ол С (Си) . Ол өте құатты, икемді және нәтижиелі болды. Айтарлықтай, жоғарғы деңгейдегі бірінші тіл болды. Ол құрал-жабдықтармен жұмыс істуге мүмкіншілік берді және компьтер арасында ауыстыруларды ұйымдастырды.

1978 жылы екі тілдің қасиеттерін біріктіру туралы бірінші әрекеттері болды, солай « Си кластарымен » деген тіл пайда болды. Тек бірнеше жыл өткен кейін ол қазіргікездегі С++ деген атауды алады. Уақыт өткен сайын, программалауға талаптар өзгереді және осыған байланысты тілде өзгереді. Қазіргі кезде С++ - тің көптеген нұсқаулары мен платформалары бар. Солардың ішінде біз жиі қолданатын : Microsoft C++ ( Dos, Windows), Borland C++ ( Dos, Windows), Visuаl C++ (Windows), GNU C++ (Linux) тілдері. Borland C++ 5 ортасы өз сенімділігін көрсете алды, әсірісе С++ бағдарламалаудың бастаушыларын қызықтыра түсті.

С++ тілі программада обьектіні қолдануды қажет етпейді. Олар жазуды жаңартуға және жаңа программа құруға, С синтаксисін қолдануға және де С++ типтерге қаттаң міндеттер орындауға рұқсат етеді. Операци-лық жүейенің жаңатүрінің архитектурасы обьектілі - белгілі программа болып табылады. Бұл жүйеде жұмыс істеген кезде, программаның түсінігі обьект, инкапсуляция және полимрфизм басы болып табылады. Borland C++ Builder бесінші нұсқасы 2000 жылдың басында шықты. С++ Windows -та тез өңделетін визуалды орта болып табылады. Оның құрамына 200-ден астам әртүрлі компоненттер кіреді. Программа құру үшін көп күш қажет етпейді.

C++ Builder программасы

Borland C++ Builder ең жақын бәсекелесі Microsoft Visuаl Basic жүйесі емес, С++ басқа кестеде тұрғызылған және ол RAD жүйесі емес, ал Microsoft Visuаl Basic өндірілген ортасы басқа. Бірақ, C++ Builder көмегімен жасалған программа эффектілігі Microsoft Visuаl Basic программасынан қарағанда 10 есе тез орындалатын программадан асып түседі. Қазіргі кезде C++ Builder жететін программа жоқ. Бірақ бұл жүйенің « тұған ағасы » бар - бұл Boralnd Delphi -дегі RAD жүйесі. Тек Boralnd Delphi программалық код С++ тілінде емес, Паскаль тілінде жазылады. Бірақ, ең қызығы, Boralnd Delphi программанын С++ және Паскаль тілінде бір уақытта жазуға мүмкіндік береді.

Басқарудың әртүрлі элементтері батырмалар, ауыстырғыш, белгілер және т. б. сияқты Windows обьектілерін жобаланған терезеге тышқан арқылы ауыстыруға мүмкіндік береді. Сондықтан, программаның болашақтағы интерфейсі компьютерлік ойын конструкторын еске түсіреді. Сол себептен, RAD ортасын визуалды орта деп атайды, өйткені, жобалау кезінде біз жұмыс және сұхбат терезесін қалай көрсек, сондай түрде ол программа жұмыс істейді. Программаны іске қосқан кезде визуалды ортаның құрастырушысы ашылады, ол төрт компоненттен тұрады:

1. Басқару панелі.

2. Обьектілер инспектор пенелі (Object Inspector)

3. Жұмыс терезелерінің визуалды құрастырушысы (Форма)

4. Программа редактор терезесі.

Басқару панелі.

Жұмыс терезелерінің визуалды құрастырушысы (Форма)

Обьектілер инспектор пенелі (Object Inspector)

Программа редактор терезесі.

Негізінен программаның терезе редакторы екі панельдерден тұрады:

1. Құраушы класстар панелі

2. Программалардың текстік редактор панелі.

C++ Builder -дің негізгі компоненттері.

C++ Builder -дің басты терезелері (басқару панелі) .

Негізгі терезе экран бетіне бұрылмайды, бірақ, ол кез-келген жерге ыңғайлы етіп қоюға болады. Қалыпты жағдайда, оны экранның жоғарғы жағына орналастырады. Негізгі терезенің құрамына кіретіндер:

  • Тақырып жолы
  • Меню жолы
  • Құрал-саймандар панельдері.

Бұл орындаушының көбінесе қажет ететін іс-әрекетін орындаушының кез-келген команданың батырмаларынан орналасқан.

Компоненттер палитрасы.

Сіздің программаыздың интерфейсі құрылу үшін, бұл компонетте басқару элементтерінен құралған жиынтық бар. Палитрадағы әрбір компонент өз мағынасымен көрсетілген.

Компоненттер палитрасы.

Он төрт панельден құрастырылған әрбір компоненттер нақты түрде топтарға бөлінген. Қысқаша айта кетер болсақ:

  • Standard - Windows-ті басқару үшін стандартты элементтірі.
  • Additional - Windows -ті басқару үшін стандартты емес элементтер.
  • Win32 -Windows 9x басқару элементтері.
  • System - Обьективті жүйе.
  • Internet - Интертпен жұмыс істуге арналған.
  • Data Access - Мәліметтер базасымен байланыс құру үшін.
  • Data Controls - Мәліметтер базасының элементтерін басқару.
  • ADO - Қазіргі кездегі кең таралған Windows Microsoft ActiveX Data Objects (ADO) технологиясының мәліметтеріне кіру мүмкіншілігінде негізделген компоненттер.
  • InterBase - Inprise корпарациясының өндірісі МББЖ InterBasе жұмысына арналған компонент.
  • Midas - Бірнеше қосымшаларымен жұмыс істуге арналған компонент.
  • InternetExpress - Интернет қосымшаын тез арада қосу үшін арналған құрылым.
  • FastNet - Интернтке негізделген, басты желелік портоколдарды қодайтын компоненттер.
  • Decision Cube - Мәліметтердің анализдер жүйесінің компоненттері.
  • QReport - әртүрлі отчеттерді құру үшін арналған.
  • Win 3. 1 - Windows 3. 1 басқару элементтері.
  • Samples - жүйеге кіретін жүктемелердің компоненттер мысалдары.
  • ActiveX - компоненті, Microsoft шығарған активті компоненттер форматы Borland C++ Builder 4 осы форматты қолдайды.
  • Servers - көмегімен офисттік Word, Excel, PowerPoint, Outlook жұмыстарын басқару үшін арналған компоненттер жиынтығы.

Визуалды жобалаушының жұмыс пішіні.

Пішін- бұл Windows-тағы терезе, яғни әр түрлі басқару элементтері орналасатын батырмалар, мәзір, тізімдер, енгізу элементтері. Құрылатын программа жөнделіп және жіберілетін болса, онда пішін негізгі терезедегі айналып, оған бейімделген іс-әрекеттерді орындауға арналған және анықталған білдіретінін көрсетеді. Бұл терезе программада көп болуы мүмкін.

Обьект инспекторы - өңдеудің ең негізгі ортасы. Бұл тапсырма

Обьектісінің қасиетін және оның әр түрлә оқиғаларының анықтамаларын көрсетеді.

Обьект оқиғалары - бұл негізгі сипаттамасы, яғни оның батырма көлемі, терезе ата, тізімге арналған айналымдағы жолақтың болуы, түсі және шрифт стилі, файлға арналған сурет аты және т. б.

Полиморфизм.

Полиморфизм грек тілінен көп форма деген мағынаны білдіреді. - бұл құрылым, жалпы, бір интерфейсті қолдана отырып, жалпы класс іс-әрекетін орындау үшін арналған. Полиморфизмге мысал ретінде жай автомобиль басқарылымын руль алуға болады. Руль (яғни интнрфейс) үшін көлікте қандай рульдік механизм типі қолданылуы ескерілмейді. Басқа тілмен айтқанда, екі жақты да жұмыс істей алады, көлік басқарылымы бір қалыпты немесе жылдамдатқышы бар болған жағдайда. Егер сіз рульді басқара алсаңыз, сіз кез-келген көлікті жүргізе аласыз. Бұл принципті программа тілінде де қолдана аламыз. Біздің қарастыратанымыз, стек және тізім, қосылу және жою элементтерің мына бір принціпте жасалған «соңғы келіп - бірінші болып қызмет көрсету». Сізде үш түрлі стект типін қолданалатын программа болуы мүмкін. Бірінші стек - бүтін сандарға, екіншісі - жылжымалы нүутелер, ал, үшіншісі - таңбаларға арналған болсын. Мәліметтері әр түрлі типті болса да, барлық стек үшін - қолдану алгоритімі бірдей. Басқаша айтқанда, программистке программа құрған кезде стекке қызмет көрсету үшін, үш түрлі ішінен прогаммалар құру керек, олар әр түрлі атаулар алуы керек және де әр программаға - жеке интерфейсі болуы керек. С++-тегі полимрофизм арқасынды, жоғарыда айтылған үш жағдайға бір жалпы программа жиынтығын, яғни интерфейс құруға болады яғни, бір стекті қолдана білсеңіз қалғандарын қолдана аласыз.

Жалпы, полиморфизм концепциясы бір интерфес - көп әдіс мағынасына негізделген. Іс-әрекеттерді байланыстыратын топтар үшін бір интерейсті қайта - қайта қолдану мүмкіндік береді. Осадан алтынымыз, полиморфзм жұмысты жеңілдетеді. Алынған жағдайға функцияны қолдану компилятор мойнына алады. Сіз программист болғандықтан, сізге оны қолмен жазу керек емес. Сіздің міндетіңіз - жалпы интерфейсті қолдану. Ең бірінші обьектілі - белгілі программалар орындалып жатқан кезде полиморфизм сүйеніш ретінде қолданылған. Бірақ С++ таралымды тіл яғни, оның орындалу және программаның компилятор дәрежесінде ғана көрсетіледі.

Операторлар мен функциялардың жүктелуі - полиморфизм мысалдары болып табылады, бұл компилятор уақыты болып табылады. Бірақ, ол обьектілі - белгілі программалау тілінде оператор мен функциялардың жүктелуіне қарамастан полиморфизмесептің бәрін шеші мүмкін емес.

Динамикалық полиморфизмнің басы болып оның базалық класс көрсеткіштері болып табылады. Көрсеткіштер базалық және шығарушы класстар мынандай байланыста болуы мүмкін: басқа типі болуы. Жоғарыда айтылғандай, көрсеткіштер бір типті көрсету мүмкін емес. Бірақ көрсеткіштер бұл заңңды сақтамайды. С++ базалық класс көрсеткіштері кез-келген обьект үшін қолдануға болады. Мысал келтіретін болсақ, бізде . . . классы және . . классы бар. С++ -те кез-келген көрсеткіш . . классы көрсеткіш ретінде көрсетуі мүмкін немесе керісінші. . класссына. Сонымен, хабарлама берлігенен кейін:

B_class*p; // көрсеткіштердің В_class типі бар обьектіге көрсету

B_class B_ob; // B_class титі обьект

D_class D_ob; // D_class типті обьект

Келесі екі нұсқаулар заңды деп аламыз:

P=&B_ob ; // p көрсеткіші B_class типті обьектіге көрсетеді

P=&D_class; /* р көрсеткіші B_class типінен шыққан D_class типті обьектіге

көрсетеді. */

Бұл мысалды, р көрсеткіші D_ob обьектілерінің немесе B_ob обьектілерінің көрсеткіштерінің элементтеріне кіру мүмкіншілігін алады. Бірақ спецификалық құрылмда р көрсеткіші . . элементтеріне кіру мүмкіншілігінен айырылады. Нақты мысал ретінде b-ob базалық классы және D_ob шығарушы класстарын анықтайтын қысқаша программаны аламыз. Бұл программада жазушы аты мен оның кітаптар тізімін сақтайтын қарапайым иерархия класстары қолданылады.

#include < iostream >

#include < cstring>

using namespace std;

class B_class {

char author [80] ;

pubilc:

void put author (char*s) { strcpy (author, s ) ; }

void show_autohoir () { cout << author << “ \ n ; }

};

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
C# Тілінің негіздері
Delphi программалау тілін оқыту әдістемесі
Конструктордың қызметі - класс объектісінің өрістерін инициализациялау
С тіліндегі кластар және олардың түрлері
Деректерді қайта құру және полиморфизм. Полиморфизмді қолдану
Нысанды-бағдарланған программалаудың негізгі принциптері
Java программалау тілі
Объектіге бағытталған программалау
Кластар иерархиясы
С++(объектілі-бағытталған программалау)
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz