Класи ООП. Об’єктно-орієнтоване програмування

Абстракція

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

Ми намагаємося вибірково зосередитися тільки на тих речах, які важливі для нас (у житті) або для нашого модуля (в програмуванні). Зміна одного незалежного модуля не впливає на інші. Єдине, що потрібно знати, – це те, що він нам дає. Людина, яка використовує цей модуль не повинен турбуватися про те, як завдання вирішується, що саме відбувається у фоновому режимі.

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