Программу следует сначала сконструировать, разработать. Никто не сможет сесть за компьютер и создать программу, какой бы простой или сложной она не была, сразу без предварительной подготовки. Вначале появляется идея, затем создается подход, конструируется модель, затем разрабатывается программа.

Структурное программирование, для решения больших и сложных задач, использовало метод, когда задача разбивалась на части и каждая часть решалась самостоятельно. Части в свою очередь могли быть разбиты на набор, состоящий из еще более мелких частей.

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

Объекты объединяются в классы. Если объекты содержат одинаковые типы данных и отвечают на одинаковые сообщения (пусть по разному), то они принадлежат одному и тому же классу. Класс это своего рода шаблон, на основе которого образуются объекты. Объекты - это разные экземпляры одного и того же класса.

Все классы могут иметь подклассы, которые наследуют свойства родительского класса. Подкласс может иметь свойства, которые не определены в суперклассе (родительском классе), подкласс может переопределять свойства и методы суперкласса (изменять методы). Наследование предоставляет мощные средства при создании программ. Класс можно использовать много раз. Класс можно использовать  для создания подкласса на основе исходного класса. 

Итак ООП (объектно ориентированное программирование) - это методика построения программ, в основе которого лежит совокупность объектов.

Объект - это некая сущность, у которого есть свойства и методы, позволяющие этими свойствами манипулировать и описывающие поведение объекта.

Свойство (поле) - некоторая характеристика объекта.

Метод - некая функция (процедура), отвечающая за поведение объекта и за изменение его свойств.

Класс - фабрика по производству объектов (некий шаблон для создания объектов).

Интерфейс - спецификация методов без их реализации (например, KeyListener).

Абстрактный класс - класс, который создан для будущих потомков (дочерних классов) и который не может создавать объекты.

Парадигмы (концепции) ООП

1. Наследование - механизм, позволяющий создавать новые классы на основе предыдущих классов.

2. Инкапсуляция - механизм сокрытия реализации.

3. Полиморфизм - механизм позволяющий использовать объекты с одинаковым интерфейсом, не зная заранее их внутреннюю структуру. 

 

 

 

Добавить комментарий