Developer Experts Days in Geneva

MVVM Application Development – The Delphi Way

This Workshop will motivate using the MVVM pattern for application development. Many articles on MVVM use paradigms though, that would break what is known as RAD – Rapid Application Development in Delphi. You will learn how to develop maintainable and extensible applications by following the MVVM pattern, that are still rapidly developed in Delphi.

 

MVVM Diagram

The MVVM Pattern

The core idea of the MVVM Pattern is to separate the UI from presentation and business logic. The UI is represented by Views that only contain code to present state information as kept in and provided by ViewModels. ViewModels contain presentation logic to retrieve data from Models and delegate execution of business logic to their Models.

This separation offers several advantages:

  • UI design is independent of presentation or Business logic code. UI experts can focus on developing a great user experience and don’t necessarily need programming knowledge. Programmers can focus on implementing Business and Presentation logic.
  • The View are exchangable because of their independence. This simplifies especially the development of multi-platform application.
  • Testing will become easier, as tests can focus on the view models.

The MVVM pattern has been invented by Microsoft employees in 2005 with Microsofts WPF and XAML technologies in mind. Later it has been adopted by various programming environments and countless frameworks were developed. One other prominent framework is certainly knockout.js.

In this seminar you will learn how to develop Delphi applications following the MVVM pattern, without losing the RAD – Rapid Application Development power of Delphi. You will learn how to connect forms, datamodules and data binding mechanisms to a MVVM structure, without writing everything in source.

At the end of the seminar you will see an application, running with VCL, FMX and Intraweb UIs, covered by DUnit tests all driven by the same ViewModels and Models.

Agenda

Day 1

  • Morning
    • MVVM Theory
    • Introduction into OOP and Interface Programming
    • The Factory Pattern
  • Afternoon
    • The Delphi-Legacy Application using Forms and Datamodules
    • Presentation of Delphi Concepts for
      • View
      • ViewModel
      • Model
    • Migrating the Legacy App to MVVM
    • Diving into Presentation and Business-Logik
    • Creating DUnit Tests

Tag 2

  • Morning
    • Creating a Firemonkey UI for the existing VCL MVVM App
    • Introduction to mobile Development: Running the Application on iPhones or Androids
  • Afternoon
    • Creating a Web UI using IntraWeb
    • Adding a 3rd tier by using Web services

This events includes two days training plus lunch, snacks and drinks.

Eventbrite - Developer Experts Days Geneva