Як не треба розуміти об’єктну орієнтацію
І так продовжу писати про те, чим не є об'єктно-орієнтований підхід і як не слід його розуміти.
4. ООП не спосіб зменшити або прискорити код, тим більше це не спосіб поліпшити процедурний підхід, це абсолютно новий погляд на програмування і розробку. Якщо в основі ранніх мов програмування лежить алгоритм і спосіб його угруповання - функція, то в ООП на чолі столу об'єкт, принцип "чорного ящика", повторення коду і модульність. Що це означає? Принцип "чорного ящика" говорить [Сталінським повчальним тоном] - ми знаємо що в чорний ящик що то входить і виходить результат, а що відбувається в ньому ми не знаємо - чистісінька інкапсуляція (приховання) дій і даних. З повторенням коду звичайно відмінно справлялися функції, але класи дозволяють використовувати такий важливий принцип як успадкування коду і його розширення в субклассов (метою статті не є опис принципів ООП, а посеяніе зерна правильного напрямку, тому дізнайтеся про спадкування і поліморфізм вже самі). Модульність ГО підходу забезпечується за рахунок того, що об'єкти і класи знають тільки про інтерфейси (наборі доступних методів) інших об'єктів і класів, що дозволяє замінити об'єкт іншим, з таким же інтерфейсом, при цьому програма буде працювати без перебоїв. Більш того, можлива динамічна зміна поведінки програми без зміни коду (без ООП цього домогтися досить складно, можете спробувати самі змінити поведінку функції в процесі роботи програми). Якщо цікаво більше дізнатися про це, почитайте про шаблони проектування "Стратегія" та "Стан".
5. ООП не ускладнювати код, він його розширює новими можливостями. Часто при використанні ГО підходу код стає в рази більше, але будь-якому досвідченому ГО розробнику буде легко в ньому розібратися тому, що він більш абстрактний і наближений до людської логіки і структури мислення, ніж математичний підхід процедурного стилю. Постійно зростаюче число невеликих класів, виконують елементарні операції це зручно, так як працювати з простим простіше, ніж зі складним (згадаємо вчительське - від простого до складного).
6. ООП це НЕ СКЛАДНО. Просто потрібно тимчасово перестати чинити опір новому в захист процедурного підходу (ми ж не бабки на лавочці) і спробувати зрозуміти принципи роботи ООП. Вони досить цікаві, але в той же час незвичайні і часто незрозумілі. Спробуйте почати спочатку і дотримуйтеся шляху ГО хоча б протягом пари тижнів, і ви здивуєтеся як раніше жили без ГО підходу до програмування.
P.S .: ласка, не використовуйте класи та об'єкти як скарбничку функцій і змінних, для цих цілей існують ім'ям області видимості. Строго обмежуйте можливості класу. Клас це не бог, і робити він вміє зовсім небагато.