- •Тема 3.1 (цели использования компьютеров при решении прикладных задач)
- •Урок 2.Основные инструмента прикладного программиста.
- •Урок 4.Технология прикладного программирования:целя,задачи и основные принципы и инструменты. Алгоритмическая и объектно-ориентированная декомпозиция.
- •Урок 5.Принципы объектно-ориентированного анализа,абстрагирование,инкапсуляция,наследование,полиморфизм,модульность,сохраняемость,параллелизм.
- •Модульность
- •Атрибуты объектов
- •Экземпляр
- •Методы доступа
- •Урок 8 Объектно –ориентированное программирование.
- •Развитие и совершенствование языков программирования высокого уровня.
- •Урок 9.Документирование результатов анализа и проектирования.
- •Урок 11.Создание абстрактных типов данных.(практика)
- •Примеры атд
- •Чистые виртуальные функции.
- •Выполнение чистых виртуальных функций
- •Урок 12.Диаграмма объекта.
- •Урок 13.Принципы объектно-ориентированного анализа:абстрагирование,инкапсуляция.
- •Урок 14. Принципы объектно-ориентированного анализа: наследование полиморфизм.
- •Урок 15. Принципы объектно-ориентированного анализа:модульность,сохраняемость,параллелизм
Атрибуты объектов
Атрибут - это значение, характеризующее объект в его классе. Примеры атрибутов: категория, баланс, кредит (атрибуты объектов класса счет); имя, возраст, вес (атрибуты объектов класса человек) и т.д.
Среди атрибутов различаются постоянные атрибуты (константы) и переменные атрибуты. Постоянные атрибуты характеризуют объект в его классе (например, номер счета, категория, имя человека и т.п.). Текущие значения переменных атрибутов характеризуют текущее состояние объекта (например, баланс счета, возраст человека и т.п.); изменяя значения этих атрибутов, мы изменяем состояние объекта.
(Иногда указывается тип атрибутов (ведь каждый атрибут - это некоторое значение) и начальное значение переменных атрибутов (совокупность начальных значений этих атрибутов задает начальное состояние объекта).
Следует отметить, что, говоря об объектах и их классах, мы не подразумеваем никакого объектно-ориентированного языка программирования. Это, в частности, выражается в том, что на данном этапе разработки программной системы следует рассматривать только такие атрибуты, которые имеют смысл в реальности (все атрибуты объектов класса счет обладают этим свойством). Атрибуты связаны с особенностями общей реализации. Например, если известно, что будет использоваться база данных, в которой каждый объект имеет уникальный идентификатор, то включать этот идентификатор в число атрибутов объекта на данном этапе не следует. Дело в том, что, вводя такие атрибуты, мы ограничиваем возможности реализации системы. Так, вводя в качестве атрибута уникальный идентификатор объекта в базе данных, мы уже в самом начале проектирования отказываемся от использования СУБД, которые такой идентификатор не поддерживают.
Урок 7.Экземпляры и состояния. Жизненный цикл и поведение объектов:сообщения,события,методы,действия.
Состояние объекта в ООП
Каждый объект в ООП характеризуется своим состоянием. Состояние банковского счета — это сумма лежащих на нем денег. Состояние банкомата включает в себя состояние «включен» или «выключен», готов или не готов к принятию запроса, наличию денег в банкомате.
Состояние объекта характеризуется текущим значением его атрибутов. В нашем примере у счета есть атрибут -баланс. В простейшем случае он отражается числом — количеством рублей и копеек на счету. Операция снятия или зачисления на счет изменяет баланс и атрибут объекта «счет № 66579801». У объекта «банкомат на Тверской» есть несколько атрибутов. Количество денег в банкомате может характеризоваться числом. Состояние «включен» или «выключен» и состояние «готов или не готов к принятию запроса» — логическим значением.
Стоит заметить, что атрибутами объекта в ООП могут быть не только простейшие значения (число, логическое значение и т.д.), но и сложные величины или другие объекты. Например, наш банк для целей контроля будет хранить историю всех транзакций. Транзакция — это объект, который имеет атрибуты (характеристики) тип транзакции, сумма переведенных денег, место совершения и имена контрагентов этой операции. У объекта «счет № 66579801» появится новый атрибут — «история транзакций», который будет состоять из набора объектов-транзакций.
