Что такое ООП и что такое плохо

Человек всегда стремится к тому, чтобы облегчить себе жизнь. Лень является важным фактором, заставляющим его постоянно придумывать и изобретать что-то новое, способное в дальнейшем послужить именно этой цели. Ленивый человек, которому надоело постоянно макать перо в чернильницу, решил объединить их в одном корпусе, и появилась перьевая ручка. Очень облегчает архивирование данных - оцифровка. Пользователь, умеющий не только работать с существующим программным обеспечением, но и разрабатывать свои программы, как раз и является таким лентяем, а потому находится на ступень выше остальных. Однако знания основ программирования в нынешних условиях недостаточно, необходимо также владеть современными средствами и методами программирования.
В процессе развития методов программирования возникло и нашло широкое применение объектно-ориентированное программирование (ООП). Его предшественником было модульное программирование, в котором основное внимание уделялось не алгоритму обработки данных, как это было на первых этапах развития программирования, а организации самих данных. Этот переход был обусловлен постоянно возрастающими объемами обрабатываемых данных и ужесточающимися требованиями к надежности программного обеспечения, которым не удовлетворяли алгоритмические языки. Модульный же подход вполне им соответствовал. Но на модульном программировании развитие не остановилось, и следующим шагом стало созданное на его основе ООП.
Концепция ООП разрабатывалась с целью максимально приблизить средства написания программ к образу мышления человека, поэтому при его использовании вам не надо подстраиваться под логику компьютера, он будет подстраиваться под вас. Хотя несведущему человеку конструкции, применяемые в ООП, могут показаться чересчур сложными, пугаться их не стоит. Такое впечатление создается лишь из-за незнания основных принципов, положенных в основу ООП.

Абстракция — основа надежности
Рассмотрим для начала такое важное понятие в современном программировании, как абстракция. В повседневной жизни мы постоянно встречаемся с предметами (объектами), свойства которых хорошо знаем и используем, но при этом мы можем практически ничего не знать об их внутреннем устройстве и принципах работы.
Назовем телевизор объектом
Этот объект имеет интерфейс с пользователем, то есть средства управления (совокупность кнопок), воспроизведения изображения и звука Чем совершеннее интерфейс, тем удобнее телевизор (объект) в использовании. Мы переключаем программы, нажимая определенные кнопки, и при этом не задумываемся о физических процессах, происходящих в телевизоре. Их знают только специалисты. Когда мы выбираем телевизор, нас интересует его цена и эксплуатационные параметры, а не то. что находится внутри. Вот мы и подошли к понятию абстракции.
Абстракция подразумевает разделение и независимое рассмотрение интерфейса и реализации. Ничего сложного, не правда ли?

Сообщить куда следует