In order to prepare for a Silverlight course I was going to give I looked around for some new books and material to help my students and to refresh my knowledge. If you want to get started from zero on Silverlight I can highly recommend Silverlight 4 in Action. It’s an updated version from Silverlight 2 in Action and available since August 2010 via Manning.
The book is divided in three parts with the first two giving you all the necessary information to get you started and a third part which digs deeper into some more special topics.
In part one you’re introduced to Silverlight, how it relates to WPF and why you could choose it to build your next application. You get an overview of XAML and browser and desktop integration options. While it’s just the first part of the book, don’t think it’s just for newbies. You get an in depth explanation on how the rendering system works, what the different types of controls are and how text can be used.
Part two gives you all the information you need to build real applications. You’re introduced to the binding features, what your options are for data validation and how you can communicate with other applications. Either Silverlight plugins on the same page or other systems via web services. The last two chapters also give a nice explanation of the MVVM pattern, although it goes way further and shows you ways to improve the maintainability of your code. Very nice to see SOLID and DRY come into play hopefully we’ll see more developers using those principles. The last chapter covers WCF RIA services, these were new to me and I was a bit blown away by the functionality that’s available out of the box, though I’m still a bit sceptic. It might be a bit too much forms over data even though there are some layers in between where you can plug into to do your thing.
The last part adds chapters on working with graphics, creating animations, improving the install experience, using styles and resources and creating custom controls. Some of those you’ll use often, printing for instance, others maybe once in a lifetime, like creating a custom panel.
Overall a very nice read to introduce you to the platform and create real world applications. It’s definitely developer oriented though, don’t expect to see much Expression Blend which you’ll use to create themes and animations which I don’t think you’ll be doing in code as illustrated in the book.