Upload
pal-eie
View
1.863
Download
5
Tags:
Embed Size (px)
DESCRIPTION
How to succeed with WPF and Silverlight using CaliburnHow to succeed converting WinForms to WPF
Citation preview
caliburn.codeplex.com
Pål Eie
About Me
• Paul Eie• Architect and project manager at Bouvet ASA• A totalt of approx. 120 consultants at Bouvet
Stavanger working with MS Development• 10 years experience• Blogging at iserialized.com• [email protected]
Please ask questions!
Things you should know about
• Dependency injection• IOC• MVVM• MVP• WPF/SL• Convention over configuration
From Windows Forms to WPF
• Why?• Competancy• Value added?• Result
Why not WinForms?
Why not WinForms?
• How many of you have rather «stupid» code-behinds?
• How many of you have less than 100 lines of code in an average user control class?
• How many of you have in reality 0 lines of code in your code-behinds?
• Who trust they won’t end up in the same problem rewriting/converting to WPF?
Auto convertingWinForms to WPF
More on the differences between WPF and WinForms
JFGI
How to succeed with a rewrite?
The same was a:
How to succeed with WPF and Silverlight?
• ?• WPF/SL training?• Architecture training?
Framworks
Caliburn
Caliburn.Micro
MVVM Light
Why?
Caliburn
What’s Caliburn?
Designed to aid in the development of WPF and Silverlight applications, Caliburn implements a variety of UI patterns for solving real-world problems. Patterns that are enabled by the framework include MVC, MVP, MVVM, Commands and Application Controller.
Goals– Support building WPF/SL application that are TDD friendly.– Implement functionality for simplifying various UI design patterns in
WPF/SL. These patterns include MVC, MVP, Presentation Model (MVVM), Commands, etc.
– Ease the use of a dependency injection container with WPF/SL.– Simplify or provide alternatives to common WPF/SL related tasks.– Provide solutions to common UI architecture problems.
Cons
• ViewModelen (or Presenter) can turn out to be the new place to dump code
• Black magic• Error messages• Resharper and Caliburn are not quite best
friends
Convention over configuration?
Short:Exchange xml with black magic
Ex
• Usercontrol input of user information
UserInfoView <-> UserInfoViewModel
A deep dive into the source code
Not mentioned
• Caliburn.Micro• Caliburn.Micro og WP7
Caliburn in Bouvet
+++
More
• caliburn.codeplex.com• Caliburnmicro.codeplex.com• Twitter: @EisenbergEffect• Follow me on Twitter: @notoriousnerd• iserialized.com