Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекції 2012-2013ооп.docx
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
6.61 Mб
Скачать

Лекція № 2 Тема 2. Основні концепції парадигми програмування План лекції

1. Парадигми програмування: об' єктно - орієнтована парадигма.

2. Основні концепції ТОП.

3. Моделювання. Об' єктна декомпозиція.

4. Ідеї ТОП. ТОП принцип - поліморфізм.

5. Інкапсуляція. Наслідування.

6. Об' єктний рефакторинг. Системи і середовища програм.

Зміст лекції

Значення - це кінцеве позначення, яку мі можемо розглядати як відповідь або результат обчислення. Кожне значення має відповідний тип. Ми можемо розглядати типи як набори подібних значень.

Змінна - це сутність, що має ім 'я, комірка пам' яті, яка має специфічне значення і зберігає його незмінним під година виконання програми, поки вона не отримає інше значення.

Звичайні програми складалися із змінних та інструкцій для комп'ютера, щоб ними управляти.

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

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

2.1. Парадигми програмування: об' єктно - орієнтована парадигма.

Незважаючи на ті, що ця парадигма з'явилась ще в 1960-тих роках, вона не мала широкого застосування до 1990-тих. Сьогодні багато мов програмування (зокрема, Java, C#, C++, Python, PHP, Ruby та Objective - C, ActionScript 3) підтримують ТОП.

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

Основні парадигми програмування: процедурне програмування (англ. Procedural programming); модульне програмування (англ. Modular programming); об' єктно - орієнтоване програмування (англ. Object - oriented programming); функційне програмування (англ. Functional programming); імперативне програмування (англ. Imperative programming); декларативне програмування (англ. Declarative programming); прототипне програмування (англ. Prototype - based programming); аспектно- орієнтоване програмування (англ. Aspect - oriented programming); предметно- орієнтоване програмування (англ. Subject - oriented programming); функціонально - орієнтоване програмування (англ. Feature - oriented programming).

2.2. Основні концепції топ.

Донедавна більшість професійних програмістів реалізовували свої програмні проекти з використанням технології структурного чи процедурного програмування. Із збільшенням обсягів оброблюваної інформації, зростанням вимог користувачів до програмних продуктів почали значно зростати розміри кодів розроблюваних програм.

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

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

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

● об' єктно - орієнтоване програмування (ТОП);

● уніфікована мова моделювання програм (UML);

● спеціалізовані засоби розроблення сучасного програмного забезпечення.