Course detail

Development of Software Applications

FSI-R0S Acad. year: 2025/2026 Summer semester

The course provides students with comprehensive knowledge and practical skills in developing graphical user interfaces for complex responsive applications in MATLAB. Students will become familiar with modern design patterns such as MV, MVC, and MVCS, and learn how to implement them in practice. The course covers advanced techniques such as events, listeners, and callbacks, enabling the creation of interactive and dynamic applications.

Other key areas include hardware communication and multithreading, which are essential for applications that require continuous interaction with connected devices. Students will master advanced object-oriented programming in MATLAB to improve code structuring and component reusability. An important part of the course is ensuring code quality through unit testing, as well as familiarization with debugging and application optimization tools.

During the course, students will work on their own application, and upon completion, they will be capable of developing a full application, for instance, for their final thesis project.

Learning outcomes of the course unit

Prerequisites

Prerequisite knowledge includes basic understanding of object-oriented programming (OOP) in MATLAB.

Planned learning activities and teaching methods

Assesment methods and criteria linked to learning outcomes

The evaluation is based on the submitted project.

Language of instruction

Czech

Aims

  1. Introduction to application development in Matlab and application development terminology
  2. Sample and analysis of finished applications
  3. Creating specifications
  4. Design patterns
  5. UX basics
  6. Events, Listeners, Timers and Advanced Callbacks
  7. Working with charts and data visualization
  8. Advanced versioning
  9. Unit testing and code quality assurance
  10. Communication design with hardware
  11. Parallel computing and multi-threaded programming
  12. Application distribution and deployment

Specification of controlled education, way of implementation and compensation for absences

The study programmes with the given course

Programme B-MET-P: Mechatronics, Bachelor's
branch ---: no specialisation, 2 credits, elective

Type of course unit

 

Lecture

13 hours, optionally

Syllabus


  1. Introduction to application development in Matlab and application development terminology

  2. Sample and analysis of finished applications

  3. Creating specifications

  4. Design patterns

  5. UX basics

  6. Events, Listeners, Timers and Advanced Callbacks

  7. Working with charts and data visualization

  8. Advanced versioning

  9. Unit testing and code quality assurance

  10. Communication design with hardware

  11. Parallel computing and multi-threaded programming

  12. Application distribution and deployment

  13. Presentation of created applications

Computer-assisted exercise

26 hours, compulsory

Syllabus


  1. Repetition of OOP

  2. Advanced OOP

  3. Advanced OOP

  4. Advanced OOP

  5. Project commissioning and design patterns

  6. Events, Listeners, Timers and Advanced Callbacks

  7. Working with charts and data visualization

  8. Advanced versioning

  9. Unit testing and code quality assurance

  10. Communication design with hardware

  11. Parallel computing and multi-threaded programming

  12. Application distribution and deployment

  13. Presentation of created applications