22
caliburn.codeplex.com Pål Eie

How to succeed with WPF and Silverlight

  • Upload
    pal-eie

  • View
    1.863

  • Download
    5

Embed Size (px)

DESCRIPTION

How to succeed with WPF and Silverlight using CaliburnHow to succeed converting WinForms to WPF

Citation preview

Page 1: How to succeed with WPF and Silverlight

caliburn.codeplex.com

Pål Eie

Page 2: How to succeed with WPF and Silverlight

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]

Page 3: How to succeed with WPF and Silverlight

Please ask questions!

Page 4: How to succeed with WPF and Silverlight

Things you should know about

• Dependency injection• IOC• MVVM• MVP• WPF/SL• Convention over configuration

Page 5: How to succeed with WPF and Silverlight

From Windows Forms to WPF

• Why?• Competancy• Value added?• Result

Page 6: How to succeed with WPF and Silverlight

Why not WinForms?

Page 7: How to succeed with WPF and Silverlight

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?

Page 8: How to succeed with WPF and Silverlight

Auto convertingWinForms to WPF

Page 9: How to succeed with WPF and Silverlight

More on the differences between WPF and WinForms

JFGI

Page 10: How to succeed with WPF and Silverlight

How to succeed with a rewrite?

The same was a:

Page 11: How to succeed with WPF and Silverlight

How to succeed with WPF and Silverlight?

• ?• WPF/SL training?• Architecture training?

Page 12: How to succeed with WPF and Silverlight

Framworks

Caliburn

Caliburn.Micro

MVVM Light

Page 13: How to succeed with WPF and Silverlight

Why?

Page 14: How to succeed with WPF and Silverlight

Caliburn

Page 15: How to succeed with WPF and Silverlight

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.

Page 16: How to succeed with WPF and Silverlight

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

Page 17: How to succeed with WPF and Silverlight

Convention over configuration?

Short:Exchange xml with black magic

Page 18: How to succeed with WPF and Silverlight

Ex

• Usercontrol input of user information

UserInfoView <-> UserInfoViewModel

Page 19: How to succeed with WPF and Silverlight

A deep dive into the source code

Page 20: How to succeed with WPF and Silverlight

Not mentioned

• Caliburn.Micro• Caliburn.Micro og WP7

Page 21: How to succeed with WPF and Silverlight

Caliburn in Bouvet

+++

Page 22: How to succeed with WPF and Silverlight

More

• caliburn.codeplex.com• Caliburnmicro.codeplex.com• Twitter: @EisenbergEffect• Follow me on Twitter: @notoriousnerd• iserialized.com