You are previewing Microsoft® SharePoint® 2013 App Development.
O'Reilly logo
Microsoft® SharePoint® 2013 App Development

Book Description

Your guide to designing apps that extend the capabilities of your SharePoint site.

Take advantage of the most important new concept in Microsoft SharePoint 2013--the app. Led by two SharePoint experts, you’ll learn development techniques such as building app lists, creating event handlers, and the major classes in the object model that provide access to content stored in SharePoint.

Get expert guidance on how to:

  • Best design an app

  • Develop a SharePoint-hosted app

  • Develop a developer- hosted app

  • Create and use lists

  • Support notifications

  • Program a client-side app with JavaScript

  • Establish user security and SharePoint application security

  • Get code samples on the Web.

    Table of Contents

    1. Microsoft® SharePoint® 2013 App Development
    2. A Note Regarding Supplemental Files
    3. Introduction
      1. Who this book is for
      2. Organization of this book
      3. Prerelease software
      4. Code samples
      5. Support & feedback
      6. Errata
      7. We want to hear from you
      8. Stay in touch
    4. 1. Introducing SharePoint Apps
      1. Understanding the new SharePoint app model
        1. Understanding SharePoint solution challenges
        2. Understanding SharePoint app model design goals
      2. Understanding SharePoint app model architecture
        1. Working with app service applications
        2. Understanding app installation scopes
        3. Understanding app code isolation
        4. Understanding app hosting models
        5. Reviewing the app manifest
          1. Using the app manifest designer in Visual Studio 2012
        6. Setting the start page URL
        7. Understanding the app web
          1. Understanding the app web-hosting domain
        8. Working with app user-interface entry points
          1. Building app parts
          2. Building UI custom actions
      3. Packaging and distributing apps
        1. Packaging apps
          1. Understanding the app web solution package
          2. Packaging host web features
          3. Packaging for autohosted apps
        2. Publishing apps
          1. Publishing SharePoint apps to the Office Store
          2. Publishing apps to an app catalog
        3. Installing apps
          1. Installing apps at tenancy scope
        4. Upgrading apps
        5. Trapping app lifecycle events
      4. Conclusion
    5. 2. Client-side Programming
      1. Introducing JavaScript for SharePoint developers
        1. Understanding JavaScript namespaces
        2. Understanding JavaScript variables
        3. Understanding JavaScript functions
        4. Understanding JavaScript closures
        5. Understanding JavaScript prototypes
        6. Creating custom libraries
          1. Understanding the singleton pattern
          2. Understanding the module pattern
          3. Understanding the prototype pattern
      2. Introducing jQuery for SharePoint developers
        1. Referencing jQuery
        2. Understanding the global function
        3. Understanding selector syntax
        4. Understanding jQuery methods
        5. Understanding jQuery event handling
      3. Working with the CSOM
        1. Understanding client object model fundamentals
          1. Understanding contexts
          2. Loading and executing operations
        2. Working with the managed client object model
          1. Returning collections
          2. Handling errors
          3. Creating, reading, updating, and deleting
        3. Working with the JavaScript client object model
          1. Returning collections
          2. Handling errors
          3. Creating, reading, updating, and deleting in the JavaScript client object model
      4. Working with the REST API
        1. Understanding REST fundamentals
        2. Working with the REST API in JavaScript
          1. Performing basic operations
          2. Performing CRUD in REST
        3. Working with the REST API in C#
          1. Performing basic operations
          2. Performing CRUD in C#
      5. Conclusion
    6. 3. SharePoint App Security
      1. Reviewing the concepts of authentication and authorization
      2. Understanding SharePoint 2013 authentication
        1. Understanding user authentication in SharePoint 2013
          1. Configuring user authentication in web applications
        2. Understanding how SharePoint 2013 authenticates apps
          1. Using Internal Authentication
          2. Using external authentication
        3. Understanding app authentication flow in SharePoint 2013
      3. Managing app permissions
        1. Understanding app permission policies
        2. Reviewing how SharePoint manages user permissions
        3. Requesting and granting app permissions
        4. Requesting app-only permissions
      4. Establishing app identity by using OAuth
        1. Understanding where OAuth fits in
          1. Understanding where OAuth fits in
          2. Understanding OAuth terms and concepts
        2. Understanding app principals
          1. Registering app principals
          2. Understanding app authentication flow in Office 365
        3. Developing with OAuth
          1. Programming with the TokenHelper class
          2. Working with access tokens
          3. Working with app-only access tokens
          4. Acquiring permissions on the fly by using authorization code
      5. Establishing app identity by using S2S trusts
        1. Architecture of an S2S trust
        2. Configuring an S2S trust
        3. Developing provider-hosted apps by using S2S trusts
      6. Conclusion
    7. 4. Developing SharePoint Apps
      1. Understanding app patterns
        1. Building MVVM apps
          1. Understanding JavaScript challenges
          2. Introducing knockout
          3. Utilizing promises
        2. Building MVC apps
          1. Understanding web form challenges
          2. Introducing MVC4
      2. Using the chrome control
      3. Calling across domains
        1. Using the cross-domain library
        2. Using the web proxy
      4. Going beyond the basics
        1. Using remote event receivers
        2. Using the search REST API
        3. Using app-level External Content Types
        4. Using the social feed
      5. Conclusion
    8. Index
    9. About the Authors
    10. Copyright