Course Overview
To build great compelling, responsive, secure smart client and web applications with WPF or Silverlight you need to master not just the basic building blocks of WPF and Silverlight 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 and Silverlight 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 and Silverlight 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 and Silverlight (which overlap by at least 80%), 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 Silverlight and tie them in 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 and Silveright from IDesign, who was part of the strategic design review process for WPF and Silverlight, and participated in the architecture and design of the application blocks. Read
the full course description and outline..
Note: Students are required to bring their own laptops to class.
Who Should Attend
Any .NET developer or architect responsible for building smart client applications with WPF or web applications with Silverlight will benefit from the training. Some exposure to the basics of WPF or Silverlight concepts is helpful. WCF familiarity is a plus.
Benefits and Learning
Objectives
This workshop is a unique opportunity to learn from the IDesign architects, their experience from numerous design projects and insight on architecture, technology and its applications.
Discussion topics include:
• WPF and Silverlight Essentials
• WPF and Silverlight Architecture
• Controls
• Data Binding
• Graphics
• Design Principles
• Composite UI Applications
• System Issues
• Working with Services
• Read more in the Full Course Outline.
Plus, receive valuable takeaways. The material presented includes IDesign’s original techniques and goes well beyond anything found in conventional sources.The class uses a combination of frontal presentations, code demonstrations, and hands-on lab exercises to reinforce all of the concepts presented. The demos provide a code library to refer back to when building your own applications, and the labs help cement the key learning elements of the class using step-by-step procedures to accomplish the tasks covered.
Read the Instructor Bio: Brian Noyes.
June 21-25, 2010 Vancouver, BC $3250CAD Register
Read
information on payment,
cancellation policy and course locations.