• Ближайшие события

    Новостная рассылка

    Подпишитесь и получайте самые свежие новости.
    Подписаться на новостную рассылку
  • Объектно – ориентированное программирование в MATLAB

    Код тренинга: MLCO

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

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

    Предварительные требования

    MLPR или эквивалентный опыт работы в MATLAB

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


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

    1. Создание пользовательских типов данных
    2. Разработка классов MATLAB
    3. Построение иерархии классов
    4. Создание множественных ссылок
    5. Написание модульных тестов
    6. Синхронизация объектов
    7. Конвертация и объединение объектов

    Заявка на тренинг


    Подробнее

    Модуль 1. Создание пользовательских типов данных

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

    • Создание пространства имен, хранящих множество файлов в пакете
    • Инкапсуляция данных и функциональность в файле определения одного класса
    • Документирование пользовательских типов данных
    • Создание и использование переменных пользовательских типов данных

    Модуль 2. Разработка классов MATLAB

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

    • Определение безопасных взаимодействий через методы доступа к данным
    • Разработка интерфейса открытого класса со свойствами и атрибутами методов
    • Настройка стандартных операторов для своих классов
    • Как избежать дублирования кода за счет внутренней реорганизации кода

    Модуль 3. Построение иерархии классов

    Установление связи подобных классов через общий суперкласс. Расширение общего суперкласса, уточняя его поведение в подклассах.

    • Создание суперкласса через абстракции
    • Наследование от суперкласса
    • Определение абстрактных свойств и методов
    • Реализация специализированного поведения в подклассах

    Модуль 4. Создание множественных ссылок

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

    • Создание обозревателя класса, содержащий класс данных
    • Написание контекстно зависимого (полиморфного) кода
    • Выбор между классом по значению и по ссылке

    Модуль 5. Написание модульных тестов

    Доказательство правильного поведения путем записи модульных тестов для соответствующего блока кода. Использование общей схемы модульного тестирования в MATLAB. Повышение качества и стабильности программного обеспечения.

    • Обзор схемы модульного тестирования в MATLAB
    • Написание модульного теста
    • Создание тестовой среды
    • Конфигурирование тестового метода
    • Запись тестов и покрытие результатов

    Модуль 6. Синхронизация объектов

    Автоматическая реакция на изменение свойств с использованием заданных события, слушателей, и обратных вызовов. Вызовы триггерной функции на основе пользовательских событий.

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

    Модуль 7. Конвертация и объединение объектов

    Реализация типов данных преобразования. Определение приоритета отношения между классами. Создание массивов разнородных объектов.

    • Правила приоритета операторов MATLAB
    • Преобразование объектов из одного класса в другой
    • Определение иерархии гетерогенных классов
    • Реализация методов для гетерогенных массивов

    Заявка на тренинг