Об'єктноорієнтована мова програмування (ОО-мова) — мова, побудована на принципах об'єктноорієнтованого програмування.
В основі концепції об'єктноорієнтованого програмування лежить поняття об'єкта — певної сутності, яка об'єднує в собі поля (дані) і методи (виконувані об'єктом дії).
Наприклад, об'єкт Людина
може мати поля Ім'я
, Прізвище
і методи Їсти
і Спати
. Відповідно, у програмі можемо використовувати оператори Людина.Ім'я:="Іван"
і Людина.Їсти(їжа)
.
Особливості Редагувати
В сучасних ОО-мовах використовуються механізми:
- Успадкування. Створення нового класу об'єктів шляхом додавання нових елементів (методів) до вже наявного. Деякі ОО-мови дозволяють виконувати множинне успадкування, тобто об'єднувати в одному класі можливості кількох інших класів.
- Інкапсуляція. Приховування деталей реалізації, яке дозволяє вносити зміни в частини програми безболісно для інших її частин, що істотно спрощує супровід і модифікацію ПЗ.
- Поліморфізм. За поліморфізму деякі частини (методи) батьківського класу замінюються новими, що реалізують специфічні для даного нащадка дії. Таким чином, інтерфейс класів залишається колишнім, а реалізація методів з однаковою назвою та набором параметрів різниться. В ООП зазвичай застосовується поліморфізм підтипів (званий при цьому просто «поліморфізмом»), нерідко у формі пізнього зв'язування[en].
Список мов Редагувати
Неповний список об'єктноорієнтованих мов програмування:
Крім ОО-мов загального призначення існують і вузькоспеціалізовані ОО-мови.
Примітки Редагувати
- ↑ Роберт Лафоре, «Объектно-ориентированное программирование в C++», Издательский дом «Питер», 2013
- ↑ . Архів оригіналу за 21 серпня 2015. Процитовано 31 січня 2020.
- . Архів оригіналу за 13 серпня 2015. Процитовано 31 січня 2020.
- Команда разработчиков BLFS, «За пределами проекта „Linux® с нуля“». Версия 7.4, Том 1, стр.622
- . Архів оригіналу за 16 серпня 2019. Процитовано 31 січня 2020.
- Введение в объектно-ориентированный JavaScript
- Понимание ООП в JavaScript
- . Архів оригіналу за 14 липня 2019. Процитовано 31 січня 2020.
- Разработка под Apple. Objective-C
- PHP: Основы ООП
- . Архів оригіналу за 7 серпня 2015. Процитовано 31 січня 2020.
- Объектно-ориентированное Программирование (ООП) в Ruby
- Архів оригіналу за 30 жовтня 2019. Процитовано 31 січня 2020.
- . Архів оригіналу за 4 березня 2016. Процитовано 31 січня 2020.
- Apple Inc., «The Swift Programming Language», 2014
- Объектно-ориентированное программирование на языке Vala
Література Редагувати
- Иан Грэхем. Объектно-ориентированные методы. Принципы и практика = Object-Oriented Methods: Principles & Practice. — 3-е изд. — Москва : Вильямс, 2004. — 880 с. — ISBN 0-201-61913-X.
- Антони Синтес. Освой самостоятельно объектно-ориентированное программирование за 21 день = Sams Teach Yourself Object-Oriented Programming in 21 Days. — Москва : Вильямс, 2002. — 672 с. — ISBN 0-672-32109-2.
- Гради Буч. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. — Бином, 1998. — ISBN 0-8053-5340-2, ISBN 5-7989-0067-3, ISBN 5-7940-0017-1.
- Петер Коуд (Дэвид Норт, Марк Мэйфилд). Объектные модели. Стратегии, шаблоны и приложения.