На головну

Основні принципи ООП.

  1.  FH 05 Основні принципи
  2.  FH 10 10 Організаційні принципи роботи національних товариств здоров'я.
  3.  FL 01 05 Е Основні принципи.
  4.  FL 01 10 Е Основні положення.
  5.  FL 01 25 Е Основні цілі та діяльність.
  6.  FS 05 Основні принципи
  7.  I. 2.4. Принципи та методи дослідження сучасної психології

1. інкапсуляція даних (упрятиваніе даних, абстрактні типи даних).

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

2. Спадкування.Спільно з инкапсуляцией успадкування становить два основних принципи ООП. Саме їх поєднання і дало якісно новий підхід до програмування.

Різні види відносин між об'єктами:

1). генерація is-a "Є певний".

2). Класифікація instance of "бути прикладом".

3). агрегація part of "Бути частиною".

4). Асоціація member of "Бути елементом".

На практиці традиційне програмування для боротьби зі складністю, займаючись декомпозицией і класифікацією, використовує відносини «Бути частиною» - «бути елементом». У ООП насамперед використовуються "Є певний" - "бути прикладом".

Традиційний підхід до декомпозиції на прикладі заводу можна уявити так


При ООП використовується «класифікаційний» підхід:


Стрілками показано ставлення «є певний».

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

3. Механізм обміну повідомленнями. Об'єкти обмінюються повідомленнями. З огляду на ті ж реалії прямого моделювання можна сказати, що механізм обміну повідомленнями може істотно відрізнятися від механізмів передачі параметрів і виклику процедур. До речі, «передачі параметрів» можуть бути незалежні за часом від «викликів процедур».

4. пізніше зв'язування. Пізніше зв'язування - це і методологічний і технічний принцип, який виходить з того, що рішення слід приймати не раніше того моменту, коли це необхідно, щоб врахувати ситуацію на цей момент ситуацію. Ми можемо закладати в алгоритм, скажімо, «доларовий еквівалент», а конкретний перерахунок відбудеться в момент розрахунку. Або, наприклад, об'єкт 5 може в різних контекстах сприйматися по-різному: як число, рядок, символ і т. Д., Тобто міняти тип.

До речі, пізніше зв'язування - це один з аргументів за режим інтерпретації.

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

 

висновок

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

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

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

література

1. Новиков Ф. а. Дискретна математика для програмістів. - СПб: Пітер, 2000. - 304 с.

2. Кузнєцов О. п., Адельсон-Бєльський Г. М. Дискретна математика для інженера. 2-е изд. -М .: Вища школа, 1988.-480 с.

3. Кук Д., БейзГ. Комп'ютерна математика. -М .: Наука, 1990.- 384 с.

4. Кузін Л. т. Основи кібернетики. том 2.-М .: Енергія, 1979.-584 с.

5. Мендельсон Е. Введення в математичну логіку. -М .: Наука, 1971. -320 с.

6. Кліні С. Математична логіка. -М: Мир, 1973. -480 С.

7. Вілсон Р. Введення в теорію графів. -М .: Наука, 1977. -207 с.

8. Гроссман І., Магнус В. Групи і графи. -М .: Світ, 1971. -247 с.

9. Кофман А. Введення в прикладну комбінаторики. -М .: Наука, 1975. -479 с.

10. Хендерсон П. Функціональне програмування. Застосування та реалізація. -М .: Світ, 1983.-349 с.

11. Клоксін У., Мелліш К. Програмування на мові Пролог.- М .: Мир, 1987.- 336 с.

12. Буч Г. Об'естно-орієнтований аналіз та проектування з прикладами додатків на С ++, 2-е ізаніе / Пер. з англ. - М .: "Видавництво Біном", СПб: "Невський діалект", 1998 р - 560 с.

 




 Використання матриць з передування. |  функції передування |  атрибутних граматики |  Область дії і передача параметрів |  Польська інверсний запис |  Алгоритм перетворення арифметичних виразів в полізім. |  оптимізація програм |  функціональне програмування |  Приклади. |  Мова Пролог |

© um.co.ua - учбові матеріали та реферати