Application development involves regularly solving problems in order to achieve some goal, such as accessing a remote web service or displaying items in a list. You'll encounter the same problems time and again. Perhaps you will refer to solutions that others have posted on websites or written down in books to help you overcome a common problem. You might identify common types of applications and build your applications using code from them as starting points.

One thing that can help you when it comes to approaching problems in this way is the use of patterns. Patterns are agreed-on solutions to common problems. They might be relatively small and simple (such as a way to access a remote service through a proxy class) or larger scale (such as ways to structure your applications to realize some benefit). The .NET Framework has common patterns that you use daily, such as collection classes and events.

Entire books are devoted to the use of patterns, and although many of them are great, they can be extremely technical. When it comes to Windows Phone 7 Silverlight application development, the most useful patterns are the larger-scale, architectural ones that influence how you structure entire applications. In this section, you'll look at the patterns available in this area and see how they can benefit you.

Using Architectural Patterns

The Silverlight applications you've created so far in this book have, for the most part, followed a fairly simple scheme. Each page or ...

Get Beginning Windows® Phone 7 Application Development: Building Windows® Phone Applications Using Silverlight® and XNA® now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.