вернуться в оглавление предыдущая глава предыдущий параграф следующий параграф следующая глава


Программа для подготовки к экзамену

Объектно-ориентированное моделирование и проектирование.

  • Моделирование: цели и задачи. Виды моделей.
  • Объектно-ориентированная парадигма. Принципы объектно-ориентированного анализа (абстракция, инкапсуляция, модульность, сохраняемость, параллелизм, полиморфизм, наследование).
  • Объекты и виды объектов. Атрибуты и типы атрибутов. Экземпляры и состояния. Поведение объектов.
  • Отношения между объектами. Ассоциация. Понятие кратности. Использование. Агрегация и композиция.
  • Унифицированный язык моделирования UML. Назначение и использование. Основные обозначения.

Объектно-ориентированное программирование на языке С++.

  • Реализация объекта в виде класса на языке С++. Объявление, определение и инициализация класса. Конструкторы, деструктор и другие методы.
  • Реализация принципов модульности и сохраняемости на языке С++.
  • Реализация принципа наследования на языке С++. Видимость членов класса. Виртуальные функции. Абстрактные классы.
  • Реализация принципа полиморфизма на языке С++. Перегрузка функций и операторов. Параметрический полиморфизм. Шаблоны функций и классов.

Моделирование оптических объектов и явлений

  • Математические и компьютерные модели света. Объектно-ориентированная модель электромагнитного поля. Комплексная амплитуда поля. Объекты ВЫБОРКА и ПОЛЕ.
  • Лучевые модели света. Объекты РЕАЛЬНЫЙ ЛУЧ, ПУЧОК, ОПТИЧЕСКИЙ ПУТЬ.
  • Параксиальные и нулевые лучи. Объекты НУЛЕВОЙ ЛУЧ, ПАРА НУЛЕВЫХ ЛУЧЕЙ, ПУТЬ НУЛЕВОГО ЛУЧА.
  • Модели оптических систем. Конструкционная модель. Выбор базового объекта в иерархии наследования оптических элементов. Модель оптической системы с базовым объектом ПОВЕРХНОСТЬ. Модель оптической системы с базовым объектом ДЕТАЛЬ.
  • Модель оптической системы с базовым объектом ПРЕОБРАЗОВАТЕЛЬ.

Организация разработки программного обеспечения

  • Жизненный цикл программного обеспечения. Содержание и результаты этапов жизненного цикла. Уровни абстракции в процессе разработки программного обеспечения.
  • Разработка в группе. Инструменты программирования.