На этом шаге мы рассмотрим понятие инкапсуляции.
Основные принципы построения классов это - инкапсуляция, наследование и полиморфизм.
Инкапсуляция - это принцип объединения в единой конструкции данных и подпрограмм, обрабатывающих эти данные. В терминологии ООП данные называются членами-данными, а подпрограммы, их обрабатывающие (они оформлены в виде функций), - членами-функциями (или методами).
Такой подход позволяет максимально изолировать объект, получаемый из класса, от внешнего воздействия, что приводит к высокой надежности программ, использующих объекты. С другой стороны, классы используются так, как ранее использовались стандартные программы, только с еще большей эффективностью в самых разных приложениях, что значительно повышает производительность труда программиста. При добавлении новых характеристик классам программы, ранее использовавшие объекты, построенные из них, остаются без изменений.
В VC++ введено понятие компонентов - специальных классов, в которых объекты определяются с такими характеристиками, как свойства, события и методы. Причем, в отличие от работы с обычными классами, при работе в VC++ возможно манипулировать видом и функциональным поведением компонентов и на стадии проектирования приложения, и в момент его выполнения.
Например, в VC++ существует компонент "форма" (класс Form) и компонент "кнопка" (класс Button), у которых есть свои свойства, методы и события. Если при проектировании приложения в форму поместить две кнопки, то с помощью определения двух разных значений свойствам кнопок Text (название кнопки) и Visible (значения false и true определяют видимость кнопки при исполнении приложения) вы получаете два экземпляра, которые ведут себя по-разному: первая кнопка при выполнении программы будет невидима в форме, а вторая останется видимой. При помощи события компонент сообщает пользователю, что на него произведено определенное воздействие (например, для компонента "кнопка" событием может быть нажатие кнопки щелчок кнопкой мыши), а методы служат для обработки реакции компонента на события.
На следующем шаге мы рассмотрим наследование.