Якщо ви подумаєте, чому OO винайдено, ви побачите, що OOP взагалі не потрібен , але іноді це значно полегшує ваше життя.
Ще в часи кодування C дуже велика програма може стати досить безладним і важко продовжувати працювати. Тому вони винайшли способи розбиття їх на модульні шматки. OOP використовує такий підхід і робить його ще більш модульним, додаючи дані з тими фрагментами програмної логіки, щоб вони ще більше відокремилися від решти коду.
Це дозволяє писати більші та більші програми, впевнено, що ви змінили свого величезного слона завдання на сто завдань розміром з мишами. Додатковий бонус полягає в тому, що ви можете взяти деякі з цих «мишей» і використовувати їх повторно в інших програмах!
Звичайно, реальний світ не зовсім такий, і повторне використання об'єктів ніколи не впадає у спосіб, який він задумав, але це не означає, що це марна парадигма.
Марно - це надмірна залежність від будь-якого стилю кодування. Той, хто робить ОО з тисячею крихітних, нікчемних класів, насправді не робить це правильно - вони роблять кошти з обслуговування для себе (або когось іншого). Кожен, хто пише процедурну заявку, яка має лише 3 функції, також ускладнює життя. Найкращий спосіб - це середні середні об'єкти великих розмірів (іноді їх називають компонентами, куди ми подумали, що ми збираємось один раз), які можуть забезпечити достатню кількість автономного коду та даних, які, швидше за все, будуть використані набагато більше. відокремлено від решти програми.
Моя порада наступного разу: спробуйте написати свій звичайний процедурний код, але створіть єдиний об’єкт вашої основної структури даних. Подивіться, як вам здається, що працювати з ним простіше, ніж передавати дані навколо від функції до функції.