Объектно-ориентированное программирование в MATLAB

Записаться на обучение

Описание курса

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

Основные темы курса:

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

Необходимые навыки

Курс «Программирование в MATLAB» или эквивалентный опыт работы в MATLAB

Продолжительность

2 дня

Программа курса

Модуль 1. Создание пользовательских типов данных
Организация файлов в пакеты. Изучение некоторых из основных методов и преимуществ объектно-ориентированного программирования и выяснения различия между процедурным и объектно - ориентированным программированием
Создание пространства имен, хранящих множество файлов в пакете
Инкапсуляция данных и функциональность в файле определения одного класса
Документирование пользовательских типов данных
Создание и использование переменных пользовательских типов данных

Модуль 2. Разработка классов MATLAB
Создание надежных объектов путем разделения интерфейса и реализации. Повышение удобства сопровождения кода, избегая дублирования кода. Настройка стандартных операции для своих классов.
Определение безопасных взаимодействий через методы доступа к данным
Разработка интерфейса открытого класса со свойствами и атрибутами методов
Настройка стандартных операторов для своих классов
Как избежать дублирования кода за счет внутренней реорганизации кода

Модуль 3. Построение иерархии классов
Установление связи подобных классов через общий суперкласс. Расширение общего суперкласса, уточняя его поведение в подклассах.
Создание суперкласса через абстракции
Наследование от суперкласса
Определение абстрактных свойств и методов
Реализация специализированного поведения в подклассах

Модуль 4. Создание множественных ссылок
Встраивание одного класса в другой с помощью агрегации. Определение отличий поведения использования по значению и по ссылке. Определение класса, демонстрирующего эталонное поведение.
Создание обозревателя класса, содержащий класс данных
Написание контекстно зависимого (полиморфного) кода
Ссылка на один объект данных из нескольких объектов объектов просмотра
Выбор между классом по значению и по ссылке

Модуль 5. Написание модульных тестов
Доказательство правильного поведения путем записи модульных тестов для соответствующего блока кода. Использование общей схемы модульного тестирования в MATLAB. Повышение качества и стабильности программного обеспечения.
Обзор схемы модульного тестирования в MATLAB
Написание метода теста
Создание тестовой среды с помощью методов setup и teardown
Параметризация метода тестирования
Тестирование на наличие ошибок
Агрегирование и выполнение наборов тестов
Запись тестов и покрытие результатов

Модуль 6. Синхронизация объектов
Автоматическая реакция на изменение свойств с использованием заданных события, слушателей, и обратных вызовов. Вызовы триггерной функции на основе пользовательских событий.
События, слушатели и обратные вызовы
Использование предопределенных свойств событий
Запросы метаинформации класса
Определение свойств слушателей
Реализация функции обратного вызова
Определение пользовательских событий и их обратных вызовов