Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Типізація

Концепція типізації грунтується на понятті типів абстрактних даних.

Тип - це точне визначення властивостей побудови чи поведінки, яку притаманне деякій сукупності об' єктів.

Типізація - це обмеження, яку накладається на клас об' єктів і перешкоджає взаємній заміні різних класів (чи сильно звужує можливість такої взаємозаміни).

Типізація дозволяє виконувати опис абстракції так, що реалізується підтримка проектних рішень на рівні мови програмування. Вод-ночас об' єктні та об' єктно - орієнтовані мови програмування можуть бути типізовані строго, нестрого та зовсім не типізовані, що дозволяє говорити про типізацію як другорядний елемент.

Розглянемо переваги строго типізованих мов.

1. Відсутність контролю типів може призвести до загадкових збоїв у програмах під година їх виконання.

2. У більшості випадків процес повторного редагування- компі - ляції - відлагодження досить громіздкий, тому раннє визначення помилок є неодмінною умовою.

3. Декларування типів спрощує документування програм.

4. Багато з компіляторів дозволяють генерувати ефективніший код при явному визначенні типів.

Статичний та динамічний зв'язок. Концепції строгої та статичної типізації за своєю суттю різні. Строга типізація стосується контролю відповідності типів, а статична (інакше називається статичним, або раннім, зв'язком) - годині, коли імена пов'язуються з типами. Статичний зв'язок означає незмінність типів всіх змінних та виразів у процесі компіляції; динамічний зв'язок (інакше - пізній зв'язок) означає ситуацію, коли тип всіх змінних та виразів визначається лише під година виконання програми. Концепції типізації та зв' язків є незалежними, тому мова програмування може бути строго типізована як зі статичним, так і з динамічним зв'язком.

Певне ім 'я (оголошена змінна) може позначати об' єкт будь-якого класу, який належить до певного суперкласу. Це і є поліморфізм. Будь-який із об' єктів, котрий пов'язаний з таким іменем, повинний виконувати деяку множину загальних операцій. Поліформізм постає на стику принципів успадкування та динамічних зв' язків.

Ця властивість є найістотнішою в об' єктно - орієнтованому програмуванні разом із властивістю реалізації абстракцій.

<== предыдущая лекция | следующая лекция ==>
Модульність | Коротка характеристика по С++
Поделиться с друзьями:


Дата добавления: 2013-12-14; Просмотров: 1764; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.