+49 (0) 6408-547677
skip to the main content area of this page
Trainings

WPF Master Class

 


To build great compelling, responsive, secure smart client applications with WPF you need to master not just the basic building blocks of WPF but how to compose the rest of the application that sits behind the façade of the user interface. You need to understand user interface presentation patterns to have good separation between your UI definition and the supporting logic code. You need to have loose coupling between different pieces of functionality in your application so they can be independently developed, maintained, tested, and deployed. You need to be able to communicate between the loosely coupled parts of your application with events and commands. You need to secure the application, collect credentials from the user, authenticate them, authorize actions and authenticate against remote services, databases, and other external resources. You need to manage concurrent and asynchronous work in the client and deal with the threading issues of the UI context. You need to retrieve and update data, even cache it locally for offline use, and synchronize that data when you go back online. You also need to make calls to services and be notified on events outside of your application, such as changes to back end data. And finally, you have to deploy your application.

Obviously, there is much more to WPF development than just adding elements to a UI and creating styles to make the UI look pretty. This class is all about how to apply WPF in the context of a modern application, the patterns and techniques required addressing the issues above. The class starts by reviewing the key building blocks of WPF, how and when to best use them. Next, you will learn how to build composite UI applications with dependency injection, modularity, dynamic UI composition, loosely coupled commands and events. The class then gets into the system issues of handling multithreading and concurrency, securing your application, and making client calls to services. Data caching and synchronization are covered next, followed by working with cloud services and pub/sub service notifications of back end events.

The focus of the class is on how to properly apply WPF and tie it with the rest of your application, rather than the technology itself, enabling you to successfully build the rest of your smart client application so that it is testable, maintainable, extensible, and flexible.

The material presented includes IDesign's original techniques and utilities and goes well beyond anything you can find in conventional sources. The class is a unique opportunity to learn how to best apply WPF from IDesign, who was part of the strategic design review process for WPF, participated in the architecture and design of the application blocks.

Who Should Attend:

Any .NET developer or architect responsible for building smart client applications with WPF will benefit from the training. Some exposure to the basics of WPF concepts is helpful. WCF familiarity is a plus.

Course Outline:

XAML Programming

  • WPF Design Goals
  • WPF Capabilities
  • Coding practices

WPF Architecture

  • Application structure
  • Properties
  • Routed Events and Commands
  • Triggers• Resources
  • Windows Forms Interop

Controls

  • Control types
  • Layout and sizing
  • Styles
  • Control Templates
  • Custom controls

Data Binding

  • Data sources
  • DataContext and Bindings
  • Collection Views and Data Providers
  • Value conversion and data validation
  • Data Templates

Graphics

  • 2 D Vector Graphics
  • Bitmaps
  • Animation
  • 3D constructs

Design Principles

  • S.O.L.I.D. Principles
  • Interface-based programming
  • Service Orientation
  • Design for testability
  • Separated UI Patterns (MVC, MVP, MVVM)
  • Dependency Injection

Composite UI Applications

  • Prism Overview
  • Application architecture
  • Modules
  • UI Composition
  • Composite Events
  • Composite Commands

System Issues

  • Multithreading and concurrency
  • Security
  • Deployment
  • Data caching and synchronization

Working with Services

  • WCF Overview
  • Creating client proxies
  • Working with data contracts
  • Calling cloud services
  • Pub/sub service events


Architecting WPF Applications


arrow Register

Date & Location

 

TBD

TBD
arrow Price and Register
Architecting WPF Applications

Brian Noyes is not only a Chief Architect with IDesign, he is also Microsoft’s Regional Director for the Mid-Atlantic region and a Microsoft Most Valuable Professional (MVP), with over 16 years of programming, engineering, and project management experience. Brian specializes in smart client architecture and development, presentation tier technologies including Windows Presentation Foundation, Windows Forms and ASP.NET, workflow, and data access. Brian’s latest publication is Developing Applications with Windows Workflow Foundation, a LiveLessons training DVD. Brian’s previous two books Smart Client Deployment with ClickOnce and Data Binding with Windows Forms 2.0 continue to be best sellers. Brian continuously publishes articles in a variety of publications and speaks at international conferences and events including Microsoft TechEd US, Europe, and Malaysia, Visual Studio Connections, DevTeach. Brian is a top-rated speaker on the INETA Speakers Bureau and travels the country frequently speaking to developer user groups. Brian also has long term experience in the government sector, having worked for defense and federal agencies as a software developer and architect and as a government software project manager while on active duty in the Navy. Brian got started with programming to stimulate his brain while flying F-14 Tomcats in the Navy and is a Top Gun and Test Pilot School graduate. You can always find out the latest things Brian is up to through his blog.
http://oreilly.com/catalog/9780596101626/