Schulungen zu MATLAB und Simulink

Fortgeschrittene Softwareentwicklung mit MATLAB

Kursbeschreibung

Dieser zweitägige Kurs liefert eine umfangreiche Einführung in die objektorientierte Softwareentwicklung mit MATLAB®. Der Kurs richtet sich sowohl an Entwickler, die vor der Aufgabe stehen mittlere bis große Anwendungen für Endnutzer zu programmieren, als auch an erfahrene Softwareentwickler, die ihren bestehenden Code besser strukturieren möchten. Das Kursbeispiel behandelt die Programmierung einer grafischen Benutzeroberfläche, die vorgestellten Techniken lassen sich jedoch auf jede größere Softwareanwendung übertragen.

Themen sind unter anderem:

  • Verwenden des Model-View-Controller (MVC) Entwurfsmusters in MATLAB
  • Erzeugen einer Modellklasse zur Speicherung der Anwendungsdaten
  • Schreiben objektorientierter Tests zur Verifizierung des Anwendungsverhaltens
  • Arbeiten mit MATLAB Grafikobjekten und Steuerobjekten der Benutzeroberfläche
  • Bestimmung und Aufbau des Anwendungslayouts
  • Erzeugen einer Klasse zur Visualisierung der Anwendungsdaten (Viewer)
  • Entwurf von Steuerungsklassen um Benutzerinteraktion mit der Anwendung zu ermöglichen (Controller)
  • Integration der Anwendungskomponenten in eine Startklasse
  • Verpacken und Bereitstellen von Anwendungen

Tag 1 von 2


Zusammenfassung der Anwendungsdaten in einer Modellklasse

Ziel: Erzeugen einer Modellklasse, welche die Anwendungsdaten und den Zustand des Systems speichert. Definition und Implementierung des Kernmodells.

  • Untersuchen von Modellen im Rahmen des MVC Entwurfsmusters
  • Vermeiden unnötiger Datenkopien
  • Speichern von Anwendungsdaten
  • Bereitstellen von Visualisierungsdaten
  • Implementieren von Steuerungsvorgängen
  • Übermitteln von Daten- und Zustandsänderungen

Verifizierung des Anwendungsverhaltens durch Unit-Tests

Ziel: Schreiben objektorientierter Unit-Tests, um das Verhalten der einzelnen Anwendungskomponenten zu verifizieren.

  • Aufsetzen einer Test Harness
  • Strukturieren der Test Methoden innerhalb der Test Harness
  • Vereinfachen der Tests durch Verwendung von Setup und Teardown Methoden
  • Testen der Modellklassenkommunikation
  • Messen der Testvollständigkeit (Code Coverage)

Bestimmung und Aufbau des Anwendungslayouts

Ziel: Umgang mit MATLAB Grafikobjekten. Verwendung vordefinierter Callback-Funktionen. Anpassen des Erscheinungsbildes der Anwendung.

  • Erzeugung von MATLAB Grafikobjekten und Zugriff auf sie
  • Umgang mit häufig verwendeten Grafikobjekten
  • Organisation der Anwendungskomponenten durch Layout-Management-Objekte
  • Verwendung vordefinierter Callback-Funktionen

Visualisierung der Anwendungsdaten durch eine Viewerklasse

Ziel: Erzeugen einer Viewerklasse zur Visualisierung der Anwendungsdaten.

  • Viewerklassen im Rahmen des MVC Entwurfsmusters
  • Beziehung zwischen Viewer und Modell
  • Beziehung zwischen Viewer und Grafikobjekten
  • Verwendung von Listeners und Callbacks
  • Interaktion zwischen Modell und Viewer

Tag 2 von 2


Designüberlegungen für Viewer- und Controllerklasse

Ziel: Vereinfachung von Viewer- und Controllerklasse durch Vererbung. Bereitstellung einer Interaktionsmöglichkeit mit Anwendungskomponenten. Sicherstellung eines robusten Anwendungsverhaltens.

  • Vereinheitlichung gemeinsamer Eigenschaften und Methoden in Überklassen
  • Vereinheitlichung des Konstruktors in der Überklasse
  • Verwenden abstrakter Methoden
  • Erzeugen einer benutzerfreundlichen Programmierschnittstelle
  • Laufzeitmanagement von Anwendungskomponenten
  • Definitions des Leitmotivs einer Anwendung

Ermöglichung interaktiver Benutzersteuerung durch eine Controllerklasse

Ziel: Verwendung einer Controllerklasse um Nutzerinteraktion mit der Anwendung zu ermöglichen. Definition und Implementation der Kernfunktionalitäten.

  • Cotrollerklassen im Rahmen des MVC Entwurfsmusters
  • Beziehung zwischen Controller und Modell
  • Beziehung zwischen Controller und Grafikobjekten
  • Hybridkomponenten, die sowohl Viewer als auch Controller sind
  • Interaktion zwischen Modell und Controller

Integration der Anwendungskomponenten in eine Startklasse

Ziel: Integration aller Anwendungskomponenten in eine Startklasse, welche die Initialisierung, die Abhängigkeiten und den Laufstatus der Anwendung verwaltet. Definition und Implemtation der Kernfunktionalitäten.

  • Erzeugen der Hauptgrafik und des Layouts der Anwendung
  • Erzeugen und Speichern der Anwendungskomponenten
  • Erzeugen von Menüs und Werkzeugleisten
  • Verpacken und Aktualisieren von Anwendungen

Stufe: Aufbaukurse

Voraussetzungen:

Dauer: 2 Tage

Sprachen: English