Абстракція — це здатність не помічати деталей, які не важливі для вирішення досліджуваної проблеми. Ми зосереджуємося на загальних елементах і характеристиках, завдяки яким ми знаходимо більш загальне рішення.
Приклад із повсякденного життя: Алік, Бен і Рекс — три конкретні домашні тварини. Ми можемо позначити їх абстрактним терміном «собака», тим самим нехтуючи деякими з їхніх характеристик (наприклад, віком, кольором шерсті чи породою), і ми зосереджуємося лише на тому, що вони мають спільного. Якби в нас удома ще був кіт Мурко, ми могли б для їх сукупного позначення використовувати, наприклад, категорію «ссавець».
Приклад із програмування: під час візуалізації зображень ми можемо створити функцію squareA()
, яка малює синій квадрат розміром 100, і squareB()
, яка намалює жовтий квадрат розміром 200. Але краще створити абстрактнішу функцію square(length, color)
, яка намалює квадрат будь-якого розміру тa кольору (за вказаними параметрами). Як варіант, ми можемо продовжити абстракцію далі та створити функцію, яка візуалізує будь-який багатокутник (із заданою кількістю вершин).