Pro Silverlight for the Enterprise

Book description

Microsoft Silverlight 2 is a new development platform designed to make the development of rich Internet applications (RIAs) far easier than has previously been possible. Pro Silverlight for the Enterprise addresses the question of how you can bring Silverlight 2 to your company to provide rich Internet experiences that will interface cleanly with your existing application architecture.

The book begins with a clear discussion of why Silverlight is such a good choice for developing RIAs and the implications that this has for your development decisions. The options available will be demonstrated by constructing a simple web-based training portal for a fictional enterprise, which will be extended and altered to demonstrate the techniques and methods that you have available to you. This includes accessing data using WCF and LINQ, and considering how best to deploy your finished Silverlight application when it is complete. The book also discusses the future of Silverlight for mobile and how to plan for its release.

This book is unique in that it focuses on how Silverlight can be applied in today's business environment rather than simply delving into the product's syntax and grammar in isolation. Silverlight is discussed in context with consideration given to security, scalability, and deployment. As such this book makes an excellent addition to any Silverlight library and extends your knowledge into practical areas that are rarely discussed.

Table of contents

  1. Cover Page
  2. Title Page
  3. Copyright
  4. Contents
  5. List of Figures
  6. List of Tables
  7. About the Author
  8. About the Technical Reviewer
  9. Acknowledgments
  10. Introduction
  11. Part 1 Exploring Silverlight
    1. Chapter 1 Understanding Silverlight
      1. Web 2.0 and RIAs
        1. Key Attributes of Web 2.0
        2. Rich Internet Applications
        3. RIA Architecture
        4. The Five Usability Dimensions for RIAs
        5. Technologies That Support RIAs
      2. Examining the Silverlight Platform
        1. Different Versions of Silverlight
      3. Silverlight Architecture
        1. Silverlight Is Platform Independent
        2. Presentation Core
        3. Microsoft .NET for Silverlight
      4. Quick Overview of Silverlight 2's Key Components
        1. Defining User Interfaces in Silverlight
        2. Third-Party Silverlight Controls
        3. Event Integration: Managed Code and Scripting Programming Models
        4. Data Binding
      5. Microsoft Tools to Developing Silverlight Applications
        1. Microsoft Visual Studio 2008 SP1
        2. Microsoft Expression Studio 2 SP1
        3. Microsoft Silverlight Streaming by Windows Live
      6. Summary
      7. Additional References
        1. Links from the Microsoft Web Site
        2. Apress Reference Books
    2. Chapter 2 Setting Up: Developing a Simple Silverlight Application
      1. Defining the My Album RIA Project
        1. Application Features
        2. Design and Development Considerations
        3. Supported Media Types
        4. Technology Platform Used to Develop the My Album RIA
        5. Development Tools Used to Develop the My Album RIA
      2. My Album RIA Design Considerations
        1. Application Capabilities
        2. User Interface Framework
        3. Defining User Controls
        4. Defining Code-Behind Scope
        5. Other Considerations
      3. Developing the My Album RIA
        1. Creating the My Album Silverlight Project Using the Silverlight Application Project Template
        2. Defining the Left Navigation Pane
        3. Defining the Preview Pane
        4. Defining a Container for Pictures
        5. Defining a Container for Media
        6. Defining Full-Screen/Normal-Screen Mode
        7. Defining the Play/Stop Command
        8. Defining Animations Using a Storyboard
        9. Preparing Thumbnails for the Preview Pane Using Microsoft Expression Encoder
        10. Adding Image and Video Files
        11. Defining Application Behavior Through the Code-Behind
        12. Finishing the Development of the My Album Application
      4. Packaging the My Album Silverlight Application
        1. Build Action As Content
        2. Build Action As None with the Copy to Output Directory Property Set Relatively
        3. Build Action As Resource
      5. Deploying the My Album Silverlight Application on Microsoft Silverlight Streaming by Windows Live
        1. Method 1: Embed the Application As a Frame
        2. Method 2: Using a Live Control
      6. Summary
      7. Additional References
        1. Links from the Microsoft Web Site
  12. Part 2 Enterprise Application Development with Silverlight
    1. Chapter 3 Silverlight: An Enterprise-Ready Technology Platform
      1. What Is an Enterprise-Ready Technology Platform?
        1. Defining Enterprise 2.0
        2. Goals for the Enterprise-Ready Technology Platform
      2. Is Silverlight an Enterprise-Ready Technology Platform?
        1. Silverlight-Based Applications Are Business-Enabled RIAs
        2. Silverlight-Based RIAs Follow the Seven Key Principles of Building RIAs As a Service
        3. Silverlight Is Platform Independent
        4. Conclusion: Silverlight Is an Enterprise-Ready Technology Platform
      3. Design Concepts for Silverlight-Based Enterprise RIAs
        1. Architecture Components for Enterprise RIAs
      4. Current Design for the My Album RIA
      5. Designing the My Album Application As an Enterprise RIA
      6. Defining a Modular Presentation Layer
        1. Defining Loosely Coupled Custom Web Services
        2. Defining the Business Components Layer
        3. Setting Up the Application Environment
      7. Summary
      8. Additional References
        1. Links from the Microsoft Web Site
    2. Chapter 4 Silverlight and Service-Oriented Architecture
      1. Defining Service-Oriented Architecture
        1. Key Objectives of SOA-Based Applications
      2. Technical Overview of SOA
        1. Key Components of Services
      3. Silverlight and SOA
        1. Device and Platform-Independent Applications
        2. Abstracted Presentation Layer
        3. Integration with Platform-Agnostic Services
        4. Modularity and Reusability
      4. SOA-Based RIAs: Seven Key Principles
        1. Usability
        2. Flexibility
          1. Agile Software Development Life Cycle Model
        3. Simplicity
        4. Reusability
        5. Scalability
        6. Maintainability
        7. Security
      5. Microsoft Silverlight and the Seven Key Principles
        1. LINQ
        2. Externalization
        3. Building a Dynamic Service-Oriented Silverlight Application
      6. Summary
    3. Chapter 5 Developing a Service-Oriented Enterprise RIA
      1. Recapping the My Album RIA
      2. Defining the Enterprise Training Portal RIA Project
        1. Enterprise Strategic Vision
        2. Application Features
        3. Design and Development Considerations
        4. Supported Content Types
        5. Technology Platform Used to Develop the Enterprise Training Portal RIA
        6. Development Tools Used to Develop the Enterprise Training Portal RIA
      3. Designing the Enterprise Training Portal
        1. Application Features to Be Implemented in This Chapter
        2. Application Architecture
        3. Presentation Layer
        4. Business Service Layer and Data Access Layer
        5. Data Platforms
      4. Understanding Silverlight Custom Controls
        1. Key Components of Custom Controls
        2. Visual State Manager
        3. Developing a Sample Custom Control
        4. Deploying a Custom Control
      5. Developing the Enterprise Training Portal
        1. Project Structure of the Enterprise Training Portal
        2. Developing the Data Access WCF Service: getContents
        3. Developing the Core Data Access Component: tpDataLayer Class Library
        4. Developing Custom Controls Enterprise Library
        5. Developing the Main Silverlight Application Project: TrainingPortal
        6. Centralized Deployment of the Enterprise Training Portal RIA
      6. Summary
      7. Additional References
        1. Links from the Microsoft Web Site
    4. Chapter 6 Deploying Silverlight Applications
      1. Defining the Deployment Process
        1. Planning
        2. Definition
        3. Implementation
        4. Support and Maintenance
      2. Deploying Silverlight Applications
        1. Silverlight Deployment Package Definition
        2. In-Package and On-Demand Files
      3. Hosting Silverlight Applications
        1. Server-Side Silverlight RIA Deployment
        2. Embedding Silverlight Plug-ins into the Web Page
        3. Custom Error Handling for Better User Experience
        4. Silverlight Applications Supporting Globalization and Localization
      4. Summary
      5. Additional References
        1. Links from the Microsoft Web Site
  13. Part 3 Silverlight for Mobile
    1. Chapter 7 Mobile Applications and Silverlight
      1. Enterprise Mobility for Enterprise 2.0
        1. System and Application Virtualization
        2. Virtual Meeting Space
        3. Mobile Applications
      2. Basics of Mobile Applications
        1. Usability and Simplicity
        2. Flexibility and Reusability
        3. Scalability and Maintainability
        4. Security
      3. Architectural Considerations
        1. Mobile Application Types
        2. Communication Patterns
        3. Synchronization Models
        4. Mobile Application Design Considerations
      4. Silverlight for Mobile Applications
        1. Silverlight Is Based on the .NET Framework
        2. Same Silverlight Applications for Desktop RIAs and Mobile RIAs
        3. Where Do We Stand with Silverlight for Mobile?
      5. Summary
  14. Part 4 Final Words
    1. Chapter 8 Adopting Silverlight
      1. Silverlight in a Nutshell
      2. Adopting Silverlight in Your Organization
        1. Understanding the Current Challenges of Silverlight
        2. Making a Decision on Adopting Silverlight
        3. Key Considerations for Adopting Silverlight
      3. Summary
      4. Additional References
        1. Links from the Microsoft Web Site
  15. Index

Product information

  • Title: Pro Silverlight for the Enterprise
  • Author(s): Ashish Ghoda
  • Release date: April 2009
  • Publisher(s): Apress
  • ISBN: 9781430218678