У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


нових понять. Насамперед, це – інкапсуляція даних, тобто логічне пов'язування даних з конкретною операцією. Інкапсуляція даних означає, що дані є не глобальними – доступними всій програмі, а локальними – доступними тільки для малої її частини. Під інкапсуляцією слід розуміти також і захист даних. Для цього в структурі class використовується специфікатор розділу private, який містить дані і методи, доступні тільки для самого класу. Якщо дані і методи містяться в розділі public, то вони доступні за межами класу. Розділ protected містить дані і методи, доступні з класу і будь-якого його похідного класу. Наявність останніх дозволяє вести мову про ієрархію класів, де є класи – батьки – шаблони для створення класів – нащадків. Об'єкти, які отримані з опису класу, називають екземплярами цього класу.Другим важливим поняттям є наслідування. Новий, або похідний клас може бути визначений на основі вже наявного, або базового. При цьому новий клас зберігає всі властивості старого: дані об'єкта базового класу включаються в дані об'єкта похідного, а методи базового класу можуть бути викликані для об'єкта похідного класу, причому вони будуть виконуватися над даними включеного в нього об'єкта базового класу. Інакше кажучи, новий клас успадковує як дані старого класу, так і методи їхньої обробки. Якщо об'єкт успадковує свої властивості від одного батька, то говорять про одинарне наслідування. Якщо ж об'єкт успадковує атрибути від декількох базових класів, то говорять про множинне наслідування. Простий приклад наслідування – визначення структури, окремий член якої є раніше визначеною структурою.Третім важливим поняттям є поліморфізм. Він ґрунтується на можливості включення в дані об'єкта інформації про методи їхньої обробки (у вигляді вказівників на функції). Принципово важливо, що такий об'єкт стає "самодостатнім". Будучи доступним у деякому місці програми, навіть при відсутності повної інформації про його тип, вона завжди може коректно викликати властиві йому методи. Поліморфною називається функція, яка незалежно визначена в кожнім із групи похідних класів і, яка має в них загальне ім'я. Поліморфна функція володіє тією властивістю, що при відсутності повної інформації про те, об'єкт якого з похідних класів у даний момент обробляється, вона тим не менше коректно викликається в тому вигляді, до якого вона була визначена для даного конкретного класу. Практичний зміст поліморфізму полягає в тім, що він дозволяє посилати загальне повідомлення про збір даних будь-якому класу, причому і батьківський клас, і класи-нащадки дадуть відповідь на повідомлення відповідним чином, оскільки похідні класи містять додаткову інформацію. Програміст може зробити регулярним процес обробки несумісних об'єктів різних типів при наявності в них такого поліморфного методу.

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

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

 

Rational Unified Process (RUP).

Огляд засобів UML, що використовуються у RUP.

Мова об’єктних обмежень (Object Constraint Language).

RUP – процес, що орієнтується на варіанти використання. RUP – процес, що орієнтується на архітектуру.

Статична структура RUP (діяльності, артефакти).

Робітники, дисципліни, додаткові елементи. Послідовний та ітеративний процес розробки.

Динамічна структура RUP (фази, цикл розробки).


Сторінки: 1 2