Prism & Silverlight: Part 5 - Moving to a Modular Silverlight Project
- Posted: Oct 27, 2009 at 3:30 AM
- 24,579 Views
- 5 Comments
Download
How do I download the videos?
- To download, right click the file type you would like and pick “Save target as…” or “Save link as…”
Why should I download videos from Channel9?
- It's an easy way to save the videos you like locally.
- You can save the videos in order to watch them offline.
- If all you want is to hear the audio, you can download the MP3!
Which version should I choose?
- If you want to view the video on your PC, Xbox or Media Center, download the High Quality WMV file (this is the highest quality version we have available).
- If you'd like a lower bitrate version, to reduce the download time or cost, then choose the Medium Quality WMV file.
- If you have a Zune, WP7, iPhone, iPad, or iPod device, choose the low or medium MP4 file.
- If you just want to hear the audio of the video, choose the MP3 file.
Right click “Save as…”
- WMV (WMV Video)
- MP3 (Audio only)
- MP4 (iPod, Zune HD)
- Mid Quality WMV (Lo-band, Mobile)
This is part 5 of a series of screencasts illustrating some of the ideas found in "Prism" or the "Composite
Application Guidance" from the Patterns and Practices team that can be used to build Silverlight applications in a way that lends itself to testability and modularity.
In talking to customers building business applications with Silverlight I find that Prism (and it's friend
Unity) is frequently mentioned but not everyone has seen it and so I thought I would explore it myself and capture some of the results of that exploration here.
We start off with some fairly basic code which we move towards making use of dependency injection and modularity;
- Part 1: Taking Sketched Code Towards Unity
- Part 2: Dependency Injection with Unity
- Part 3: Modularity with Prism
- Part 4: The Unity Bootstrapper
and then we move that code into the Silverlight world and try to illustrate some specific areas of Prism;
- Part 5: Moving to a Modular Silverlight Project
- Part 6: Shells, Regions, Views
- Part 7: Commands
- Part 8: Loosely Coupled Events with Event Aggregation
- Part 9: Sharing Data via Region Contexts
and then finally we try and bring some of these concepts together in a longer, more realistic example of a simple Email application built using the Prism framework - warning, this is a much longer session but I wanted something that draws things together;
The recommendation would be that you watch the 10 screencasts in order but if that feels like too long a process or if you're already very familiar with concepts like dependency injection and containers like Unity then perhaps watch the last screencast first
and then refer back to the previous screencasts if certain areas need more illumination.
I put the source code for Video 10 here for download as it's a bigger set of source and something you might want to explore after the video - this does not necessarily
represent "best practise" but is, instead, just meant to illustrate some of the Prism ideas.
Comments Closed
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Video 5 is corrupted or something. Viewing it online and downloading it both yield the same result - the video ends prematurely somewhere around 5:30.
Hi,
I just watched the High Quality WMV from 5mins to 7mins and it seemed ok - maybe a temporary blip?
Mike.
Hi Mike,
Firstly- thanks for sharing such wonderful videos.
I have a small Quesiton. Lets take email client application (Part 10).
You have 2 folders (Inbox and SentItems) and you fire events when somebody selects folder and data gets changed in Mail View region.
My Question is: Does the server trip happens everytime user clicks on Inbox and Sent Items. Because what if data is too huge- in that case user need to wait for few seconds. OR
Does the data get cached out once each request is made and all subsequent request will be served from cache.
Thanks,
Sachin.
AWSOME Video step by step very clear. May i suggest another video as the next step PRISM + MEF with MVVM. Would you please consider a video on that
Thanks
hi Mike,
Excellent post. Some feedback: Instead of loading from a Xaml file it is better to read from App.Config file using the ConfigurationModuleCatalog class. Its probably faster and more elegant.
Great work again,
VJ Koganti
United Kingdom.
Remove this comment
Remove this thread
close