Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вступ до спец.Лекции.doc
Скачиваний:
11
Добавлен:
22.02.2016
Размер:
2.92 Mб
Скачать

9.2. Методологія процедурно-орієнтованогопрограмування

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

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

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

З часом розробка великих програм перетворилася на серйозну проблему і зажадала їх розбиття на дрібніші фрагменти. Основою для такого розбиття якраз і стала процедурна декомпозиція, при якій окремі частини програми або модулі були сукупністю процедур для вирішення деякої сукупності завдань. Розглянуті ідеї сприяли становленню деякої системи поглядів на процес розробки програм та написання програмних кодів, яка отримала назву методології структурного програмування. Період найбільшої популярності ідей структурного програмування припадає на кінець 70-х – початок 80-х років.

9.3. Методологія об’єктно-орієнтованогопрограмування

З часом ситуація почала істотно змінюватися. Стало очевидним, що традиційні методи процедурного програмування не здатні впоратися ані зі складністю програм та їх розробки, ані з необхідністю підвищення їх надійності. У другій половині 80-х років виникла нагальна потреба у новій методології програмування, яка була б здатна розв’язати весь цей комплекс проблем. Такою методологією стало об’єктно-орієнтоване програмування (ООП).

Фундаментальними поняттями ООП є поняття класу та об’єкту. При цьому під класом розуміють деяку абстракцію сукупності об’єктів (шаблон для створення об’єкта), які мають загальний набір властивостей і володіють однаковою поведінкою. Кожен об’єкт у цьому випадку розглядається як екземпляр відповідного класу. Об’єкти, які не мають повністю однакових властивостей або не володіють однаковою поведінкою, за визначенням, не можуть бути віднесені до одного класу.

Таким чином, клас – це програмна заготовка, яку програміст проектує і описує у своїй програмі, а об’єкт – це програмна одиниця, яка генерується і «працює» в процесі виконання програми.

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

Однією з головних переваг ООП є широке повторення використання коду. Як тільки поведінка (метод) запрограмована для більш загального класу, не має потріби повторно її переписувати для похідних класів, де її не треба змінювати.

Найбільш істотною обставиною у розвитку методології ООП з’явилося усвідомлення того факту, що процес написання програмного коду може бути відокремлений від процесу проектування структури програми. Дійсно, перед тим як почати програмування класів, їх властивостей та методів, необхідно визначити, чим же є самі ці класи. Більш того, треба дати відповіді на такі питання, як: скільки та які класи потрібно визначити для розв’язання поставленого завдання, які властивості та методи потрібні для надання класам необхідної поведінки, а також встановити взаємозв’язки між класами.

Ця сукупність завдань не стільки пов’язана з написанням коду, скільки із загальним аналізом вимог до майбутньої програми, а також з аналізом конкретної наочної області, для якої розробляється програма. Всі ці обставини привели до появи спеціальної методології, що отримала назву методології об’єктно-орієнтованого аналізу та проектування (ООАП).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]