- Used Books
- Staff Picks
- Gifts & Gift Cards
- Sell Books
- Stores & Events
- Let's Talk Books
Special Offers see all
More at Powell's
Recently Viewed clear list
New Trade Paper
Ships in 1 to 3 days
available for shipping or prepaid pickup only
Available for In-store Pickup
in 7 to 12 days
Other titles in the Patterns & Practices series:
Developers Guide to Microsoft Prism 4: Building Modular MVVM Applications with Windows Presentation Foundation and Microsoft Silverlightby Bob Brumfield
Synopses & Reviews
This guide provides everything you need to get started with Prism and to use it to create flexible, maintainable Windows® Presentation Foundation (WPF) and Microsoft Silverlight® 4.0 applications.
It can be challenging to design and build WPF or Silverlight client applications that are flexible, maintainable, and that can evolve over time based on changing requirements. These kinds of applications require a loosely coupled modular architecture that allows individual parts of the application to be independently developed and tested, allowing the application to be modified or extended later on. Additionally, the architecture should promote testability, code re-use, and flexibility.
Prism helps you to design and build flexible and maintainable WPF and Silverlight applications by using design patterns that support important architectural design principles, such as separation of concerns and loose coupling. This guide helps you understand these design patterns and describes how you can use Prism to implement them in your WPF or Silverlight applications.
This guide will show you how to use Prism to implement the Model-View-View-Model (MVVM) pattern in your application, and how to use it along with commands and interaction requests to encapsulate application logic and make it testable. It will show you how to split an application into separate functional modules that can communicate through loosely coupled events, and how to integrate those modules into the overall application. It will show you how to dynamically construct a flexible user interface by using regions, and how to implement rich navigation across a modular application. Prism allows you to use these design patterns together or in isolation, depending on your particular application requirements.
About the Author
Bob Brumfield is a senior software developer with the Microsoft® patterns & practices team, primarily working on Prism, Enterprise Library, and Web Guidance projects. Before joining Microsoft, he focused on helping teams deliver Microsoft-based solutions as a consultant in the Colorado Rocky Mountain region. Bob has more than 15 years of experience with professional software development and architecture.
Geoff Cox works as a principal consultant for Southworks, Inc. He enjoys developing software at every level of the stack—from desktop and web clients to services and databases. His passion for coding revolves around the .NET Framework, design patterns, user interface design, and agile teamwork.
David Hill is the principal architect for the Microsoft® patterns & practices team. Much of his 10 years at Microsoft have been focused on client application development. Before joining Microsoft, David specialized in developing scientific and engineering applications. David has more than 20 years of experience in professional software development.
Brian Noyes is chief architect of IDesign, a Microsoft® Regional Director, and MVP. Brian spends most of his time consulting with customers around the world on how to best architect and design their applications to fully leverage the Microsoft .NET Framework, with particular focus on Silverlight®, WPF, ASP.NET, WCF, and Workflow, as well as teaching master classes on all of these technologies. He is the author of Developing Applications in Windows® Workflow Foundation, Smart Client Deployment with ClickOnce, and Data Binding with Windows Forms 2.0. Brian speaks at conferences worldwide, including Microsoft TechEd, DevConnections, DevTeach, DevReach, VSLive, and others. Brian got started programming as a hobby while flying F-14 Tomcats in the US Navy, later turning it into a second career. You can reach Brian through his blog at http://briannoyes.net.
Michael Puleio is a senior software developer, pragmatic agilist, and coffee addict. He has worked for Microsoft® for over 10 years, and is currently a member of the patterns & practices (p&p) team. At p&p, he has delivered applied engineering guidance in a number of areas, including Windows® client development (with Prism 4 and the Smart Client Software Factory), the web space (in the Web Guidance projects and the Web Client Software Factory). He also contributed to guidance on data access technologies and acceptance testing. Before joining the p&p team, Michael developed applications, embedded systems, and services at MSNTV (formerly WebTV) and MSN. Previous to Microsoft, Michael worked on a range of software challenges, including computer reservation systems, web application development, and 3D modeling for geophysics. Michael blogs at blogs.msdn.com/mpuleio.
Karl Shifflett currently works for the Microsoft® patterns & practices (p&p) team, where he manages the desktop projects such as Prism and the Web Guidance project. He is one of the authors of the Developer's Guide to Microsoft Prism. Karl is very passionate about product quality and Microsoft customers. He is very well known in the .NET community, loves teaching, and enjoys writing about the .NET Framework.
Prior to joining p&p Karl spent two years as a program manager on the WPF and Silverlight® Designer team for Visual Studio® 2010. Before joining Microsoft, Karl was a software architect, former Microsoft MVP, and Code Project MVP. He has been designing and developing business applications since 1989 and transitioned to the .NET Framework in March of 2003. In April of 2007 he joined the list of WPF fanatics and evangelists.
Karl is the author of the very popular XAML Power Toys, XAML IntelliSense Presenter, In the Box MVVM Training, and co-author of Mole. He loves WPF and Silverlight line-of-business applications and is developing a passion for Windows® Phone 7 and ASP.NET MCV.
Karl's two blogs are http://karlshifflett.wordpress.com/ and http://blogs.msdn.com/kashiffl. Additionally he wrote the content for the WPF and Silverlight Designer blog: http://blogs.msdn.com/wpfsldesigner.
Table of Contents
The Team Who Brought You This Guide; The Prism 4 Development Team; Foreword; Foreword; Chapter 1: Introduction; 1.1 Why Use Prism?; 1.2 Getting Started with Prism; 1.3 An Overview of Prism; 1.4 More Information; Chapter 2: Initializing Prism Applications; 2.1 What Is a Bootstrapper?; 2.2 Key Decisions; 2.3 Core Scenarios; 2.4 More Information; Chapter 3: Managing Dependencies Between Components; 3.1 Key Decision: Choosing a Dependency Injection Container; 3.2 Core Scenarios; 3.3 Using Dependency Injection Containers and Services in Prism; 3.4 Using IServiceLocator; 3.5 More Information; Chapter 4: Modular Application Development; 4.1 Benefits of Building Modular Applications; 4.2 Core Concepts; 4.3 Key Decisions; 4.4 Core Scenarios; 4.5 More Information; Chapter 5: Implementing the MVVM Pattern; 5.1 Class Responsibilities and Characteristics; 5.2 Class Interactions; 5.3 Construction and Configuration; 5.4 Key Decisions; 5.5 More Information; Chapter 6: Advanced MVVM Scenarios; 6.1 Commands; 6.2 Handling Asynchronous Interactions; 6.3 User Interaction Patterns; 6.4 Advanced Construction and Configuration; 6.5 Testing MVVM Applications; 6.6 More Information; Chapter 7: Composing the User Interface; 7.1 UI Layout Concepts; 7.2 UI Layout Scenarios; 7.3 UI Design Guidance; 7.4 UI Layout Key Decisions; 7.5 More Information; Chapter 8: Navigation; 8.1 Navigation in Prism; 8.2 More Information; Chapter 9: Communication Between Loosely Coupled Components; 9.1 Commanding; 9.2 Region Context; 9.3 Shared Services; 9.4 Event Aggregation; 9.5 More Information; Chapter 10: Sharing Code Between Silverlight and WPF; 10.1 Goal and Benefits; 10.2 Out of Scope; 10.3 Multi-Targeting Scenarios; 10.4 Multi-Targeted Considerations; 10.5 Multi-Targeted Elements; 10.6 A Solution to Multi-Targeting: Multiple Linked Projects; 10.7 Creating Multi-Targeted Applications; 10.8 More Information; Chapter 11: Deploying Prism Applications; 11.1 Deploying Silverlight Prism Applications; 11.2 Deploying WPF Prism Applications; 11.3 More Information; Glossary; Patterns in the Prism Library; Adapter; Application Controller Pattern; Command Pattern; Composite and Composite View; Dependency Injection Pattern; Event Aggregator Pattern; Façade Pattern; Inversion of Control Pattern; Observer Pattern; Presentation Model Pattern; Registry Pattern; Repository Pattern; Separated Interface and Plug-In; Service Locator Pattern; More Information; Prism Library; Registering with Visual Studio 2010; Organization of the Prism Library; The Prism Library Source; Modifying the Library; Running the Tests; More Information;
What Our Readers Are Saying
Computers and Internet » Internet » Web Applications