Advanced MATLAB Application Development

Learn to use the key principles and techniques of object-oriented application development (Model-View-Controller Framework) using MATLAB

Complimentary Services: Post training email support & 1-hr consultation session within 1 month after the course completion!

TechSource Systems Pte Ltd

Course
Highlights

This two-day course provides a comprehensive introduction to the key principles and techniques of object-oriented application development using MATLAB®. The course focuses on interactive application development, although the techniques are applicable to any large-scale application.

Topics include:

  • Applying the Model-View-Controller (MVC) design pattern in MATLAB
  • Creating a model class to act as a data repository for an application
  • Working effectively with MATLAB graphics and user-interface control objects
  • Managing the layout of application components
  • Designing view classes to visualize application data
  • Designing controller classes to enable user interaction with the application
  • Integrating application components within an application launcher class
  • Packaging, deploying, and sharing apps
TechSource Systems Pte Ltd

Who Should
Attend

The course is intended for MATLAB developers who will create medium- and large-scale applications for end users, as well as existing application developers looking for best practices and guidelines for structuring their code base.

TechSource Systems Pte Ltd

Course
Prerequisites

MATLAB Programming Techniques and some experience of working with MATLAB graphics objects. Some existing knowledge of object-oriented programming in MATLAB or Object-Oriented Programming with MATLAB.

TechSource Systems Pte Ltd

Course
Benefits

Upon the completion of the course, the participants will be able to:

  • Describe and apply the Model-View-Controller (MVC) design pattern in MATLAB
  • Create a model class to act as a data repository for an application
  • Work effectively with MATLAB graphics and user-interface control objects
  • Manage the layout of application components
  • Design view classes to visualize application data
  • Design controller classes to enable user interaction with the application
  • Integrate components within an application launcher class

Partners

TechSource Systems Pte Ltd
TechSource Systems Pte Ltd

TechSource Systems is MathWorks Authorised Reseller and Training Partner

Upcoming Program

  • Please keep me posted on the next schedule
  • Please contact me to arrange customized/ in-house training

Course Outline

Organizing Application Data in a Model Class

Objective: Create a model class to act as a data repository for an application and store the state of the system. Define and implement the core model responsibilities and actions.

  • Exploring models within the MVC framework
  • Avoiding unnecessary data copies
  • Storing application data
  • Providing access to data for visualization
  • Providing mechanisms for control operations on the data
  • Communicating changes of state or data
TechSource Systems Pte Ltd
TechSource Systems Pte Ltd

Managing Application Layout

Objective: Create, access, and modify graphics objects within the MATLAB graphics hierarchy. Use predefined graphics callback functions. Use layout management objects to organize the appearance of the application’s graphics objects and controls.

  • Navigating the MATLAB graphics hierarchy
  • Creating, accessing, and modifying graphics and control objects
  • Working with commonly used graphics objects
  • Organizing application components using layout management objects
  • Using predefined graphics callback functions

Visualizing Application Data with View Classes

Objective: Define view classes for visualizing application data. Define and implement the core view responsibilities and actions.

  • Views within the MVC framework
  • The relationship of a view to a model
  • The relationship of a view to its graphics objects
  • Dynamic updates to views using listeners and callbacks
  • The interaction between a model and its views
TechSource Systems Pte Ltd

Design Considerations for View and Controller Components

Objective: Simplify the development of view and controller classes using inheritance. Provide end users with a convenient means of interacting with the application components. Ensure robust application behavior by managing the lifecycle of view and controller components.

  • Unifying common properties and methods in a component superclass
  • Unifying common construction code
  • Using abstract methods to create a common interface
  • Creating a user-friendly component API
  • Managing the lifecycle of component objects
TechSource Systems Pte Ltd
TechSource Systems Pte Ltd

Enabling Interactive User Control with Controller Classes

Objective: Create controller classes to provide user interaction with the application data. Define and implement the core controller responsibilities and actions.

  • Controllers within the MVC framework
  • The relationship of a controller to a model
  • The relationship of a controller to its graphics objects
  • Hybrid components that are both a view and a controller
  • The interaction between a model and its controllers

Integrating Components with an Application Launcher

Objective: Integrate all application components and create a class managing the initialization, dependencies, and running status of an application. Define and implement the core application launcher responsibilities and actions.

  • Creating the main application figure and layout
  • Creating and storing the application components
  • Designing applications with menus and toolbars
  • Packaging and updating apps
TechSource Systems Pte Ltd
QUICK ENQUIRY