Зміст
Введення
1. Аналіз технічного завдання
2. Конструювання класів
3. Опис програми
4. Тестування
Висновок
Список літератури
Додаток
Введення
Об'єктно-орієнтоване програмування (ООП) - це технологія, підхід, заснований на представленні програм у вигляді сукупності об'єктів, кожен з яких є реалізацією власного класу .
Термін об'єкт майже одночасно виник на початку 70-х років у різних незалежних один від одного областях комп'ютерних наук. Цей термін означав різні, хоча і взаємопов'язані поняття, винайдені для того, щоб зменшити складність систем програмного забезпечення. Об'єкти використовувалися для представлення компонентів системи, що допускає розкладання на модулі або фрагменти подаються знань. На еволюцію об'єктно-орієнтованих концепцій вплинули наступні події:
Удосконалення архітектури комп'ютерів, включаючи підвищення потужності систем і апаратної підтримки операційних систем;
Розвиток мов програмування, таких як Simula, Smalltalk, CLU і Ada ;
Досягнення методології програмування, включаючи принципи
модульності та приховування даних.
До цього ще слід додати три моменти, що вплинули на становлення об'єктного підходу:
розвиток теорії баз даних;
дослідження в галузі штучного інтелекту;
досягнення філософії і теорії пізнання.
Концепція об'єкта виникла більше 20 років тому при конструюванні комп'ютерів з дескрипторній ( descriptor-based ) та мандатної ( capability-baseds ) архітектурою. Ці різновиди архітектури відрізнялися від класичної архітектури фон Неймана і намагалися подолати розрив між високим рівнем абстракцій, притаманних для мов програмування, і низьким рівнем абстракцій, характерних для комп'ютерів. На думку прихильників цих підходів, переваги нових різновидів архітектури дозволяли краще виявляти помилки, підвищували ефективність виконання програм, скорочували кількість інструкцій, спрощували компіляцію і знижували обсяг необхідної пам'яті. Комп'ютери теж можуть мати об'єктно-орієнтовану архітектуру.
Як вважає Граді Буч, кожен стиль програмування має свою концептуальну основу і вимагає унікального підходу до вирішення завдання. Основою об'єктно-орієнтованого стилю є об'єктна модель. Ця модель складається з наступних чотирьох головних елементів:
абстракція;
інкапсуляція;
модульність;
ієрархія;
Абстракція - в об'єктно-орієнтованому програмуванні це додання об'єкту характеристик, які відрізняють його від усіх інших об'єктів, чітко визначаючи його концептуальні межі. Це дозволяє працювати з об'єктами, не вдаючись у особливості їх реалізації. Абстракція даних - популярна і в загальному невірно визначається техніка програмування. Фундаментальна ідея полягає в розділенні несуттєвих деталей реалізації підпрограми і характеристик істотних для коректного її використання.
Інкапсуляція - властивість мови програмування, що дозволяє користувачеві не замислюватися про складність реалізації використовуваного програмного компонента (що у нього всередині?), а взаємодіяти з ним за допомогою наданого інтерфейсу (публічних методів і членів), а також об'єднати і захистити життєво важливі для компонента дані.
При цьому користувачеві надається тільки специфікація (інтерфейс) об'єкта. Користувач може взаємодіяти з об'єктом тільки через цей інтерфейс.
Спадкування - один з чотирьох найважливіших механізмів об'єктно-орієнтованого програмування (поряд з инкапсуляцией, поліморфізмом і абстракцією), що дозволяє описати новий клас на основі вже існуючого (батьківського), при цьому властивості і функціональність батьківського класу запозичуються новим класом. Іншими словами, клас-спадкоємець реалізує специфікацію вже існуючого класу (базовий клас). Це дозволяє звертатися з об'єктами класу-спадкоємця точно так само, як з об'єктами базового класу.
Для написання більш складних програм, були розроблені принципи об'єктно-орієнтованого програмування, яке дозволяє розкласти проблему на складові частини.
Клас - різновид абстрактного типу даних lt;http://ru.wikipedia/wiki/%D0%90%D0%B1%D1%81%D1%82%D1%80%D0%B0%D0%BA%D1%82%D0%BD%D1%8B%D0%B9_%D1%82%D0%B8%D0%BF_%D0%B4%D0%B0%D...