views:

334

answers:

3

Hello,

I will be starting soon my first silverlight 2.0 project. I'm responsible for .net stuff and organizing team work. Currently we use environment build with subversion and cruisecontrol.net. It suited our neeed so far during Winforms and ASP MVC projects.

I've got a few questions concerning Silverligt development.

  1. Microsoft claims that xaml and their tools are great for team work, that designers and developers can work together and they are responsible for different areas of projects. It sounds great, but as usual in reallife it always looks quite different. Can anybody share his experiences?

  2. Can anybody recommend any resources (books, tutorials, webcasts...) how to learn quickly Blend from Flash/Adobe designers' perspecitve?

A: 

The seperation for designers and developers is good, but not perfect in SL2 (Blend 2, VS2008). Adopt a strict MVVM pattern - this will isolate your development code and enforce binding (which is awesome in SL!!)

Also bear in mind SL3 is due out in a couple of weeks. If last years SL1 --> SL2 transition is anything to go by then SL3 will be the technology getting all the press / articles / tutorials and support... We have been building with SL2 for 6 months now and will jump to SL3 as soon as it RTM's. There are certain 'must-have' features in SL3 and I also personally think that by christmas there you'll get a standard response to any SL2 queries on community forums: "update to SL3 to fix this"

Blend 3 will also offer your designers better isolation for source control / compilation etc.

HTH, Mark

Mark Cooper
@Mark Some further question:is that reasonable to enforce using sourcecontrol on designer(s)? so far it looks like mission impossible..any resources how to prepare project more designer - friendly? Like databinding test data, how to make DataTemplates wysiwyg for designer and a lot of that kind of stuff?
tomo
A: 

XAMLFest online is a nice resource for learning blend, both from designer and developer points of view.

Graeme Bradbury
A: 

I guess it depends on your perspective, but for me (as a dev) sharing XAML has been a great experience. I've worked with designers who didn't use Blend but it's been easy to copy and paste their Illustrator created resources into my projects. Usually I'll ask them to install this plugin http://www.mikeswanson.com/XAMLExport/ and send me the results of their export. I'd recommend using Silverlight 3 for the merged resources feature - then you can keep each resource they give you in a separate file and merge them into App.xaml so they're available throughout the application (helps to keep updates to resources clean).

Aside from that make sure you hook up event handlers in code instead of XAML and use MVVM with Silverlight binding as others suggest. One part of MVVM is currently missing from Silverlight - the ability for the UI to fire off commands that the VM can listen to. Check out Nikhil Kothari's Silverlight FX project (sorry no link, looks down ATM) for my favoriate solution to this problem or use the Prism framework from Microsoft at http://www.codeplex.com/CompositeWPF for a more heavy-weight implementation (with more features, of course). I use Prism at work and generally like it. Of course you can take the easy way out and just call methods on your VM from the Xaml code behind.

You might want to consider moving to Team Foundation System for source control - that coupled with Blend 3 will allow your designers to check out / check in their work to source control, which is a huge plus IMO. For learning blend check out the "Principles of design" series here http://team.silverlight.net/ and also Kirupa's work here http://www.kirupa.com/blend_silverlight/index.htm . Enjoy your simplified development life ;)

James Cadd