Developing Microsoft SharePoint® Server 2013 Core Solutions (20488B)
In this course, students learn core skills that are common to almost all SharePoint development activities. These include working with the server-side and client-side object models, developing and deploying features, solutions, and apps, managing identity and permissions, querying and updating list data, managing taxonomy, using workflow to manage business processes, and customizing the user interface.
The course is intended for professional developers who develop solutions for SharePoint products and technologies in a team-based, medium-sized to large development environment. While some familiarity with SharePoint solution development is required, candidates are not expected to have prior experience with the new features in SharePoint Server 2013.
Module 1: SharePoint as a Developer Platform
This module examines different approaches that can be used to develop applications with SharePoint Server 2013 the scenarios in which each approach might be appropriate.
Lab: Comparing Web Parts and App Parts
Module 2: Working with SharePoint Objects
This module introduces the server-side SharePoint object model and how the core classes relate to sites and collections. The server-side SharePoint object model provides a core set of classes that represent different items in the logical architecture of a SharePoint deployment. Students also learn how manage permissions for server-side code.
Lab: Working with Sites and Webs
Lab: Working with Execution Contexts
Module 3: Working with Lists and Libraries
This module explains how to interact with lists and libraries. Students learn about how to work with lists and libraries programmatically using the server-side SharePoint object model and how to use query classes and LINQ to SharePoint to query and retrieve data from SharePoint lists. Student also learn how to efficiently work with lists that contain large numbers of items.
Lab: Querying and Retrieving List Data
Lab: Working with Large Lists
Module 4: Designing and Managing Features and Solution
This module examines creating and deploying custom Developing a SharePoint solutions and features. The students also learn how and when to use sandbox solutions.
Lab: Working with Features and Solutions
Module 5: Working with Server-Side Code
This module describes how to develop and deploy Web Parts and event receivers in a solution.
Lab: Working with Server-Side Code
Module 6: Managing Identity and Permissions
This module describes how manage permissions through code and customize authentication using custom claims providers.
Lab: Managing Permissions Programmatically in SharePoint 2013
Lab: Creating and Deploying a Custom Claims Provider
Module 7: Introducing Apps for SharePoint
This module introduces the SharePoint App, a new way to customize SharePoint functionality with SharePoint Server 2013.
Lab: Creating a Site Suggestions App
Module 8: Client-Side SharePoint Development
Lab: Using the Client-Side Object Model for Managed Code
Module 9: Developing Remote Hosted SharePoint Apps
This module examines the difference between provider hosted Apps and Remote Hosted Apps. The students will also create and deploy a Provider Hosted App.
Lab: Configuring a Provider Hosted SharePoint App
Lab: Developing a Provider Hosted SharePoint App
Module 10: Publishing and Distributing Apps
This module introduces the App Catalog so users to locate, purchase, and install apps easily. The students learn how to package and publish Apps to the App Catalog.
Lab: Publishing an App to a Corporate Catalog
Lab: Installing, Updating, and Uninstalling Apps
Module 11: Automating Business Processes
This module explains how to create workflows and workflow actions using Visio 2013, SharePoint Designer 2013 and Visual Studio 2012.
Lab: Building Workflows in Visio 2013 and SharePoint Designer 2013
Lab: Creating Workflow Actions in Visual Studio 2012
Module 12: Managing Taxonomy
This module explains the importance of a good taxonomy in SharePoint and working with the components of the taxonomy. The students also see how to tie event receivers to the taxonomy.
Lab: Working with Content Types
Lab: Working with Advanced Features of Content Types
Module 13: Managing Custom Components and Site Life Cycles
This module explains how you can create custom component definitions and templates, which enable you to deploy custom sites, lists and other components across a farm.
Lab: Managing Custom Components and Site Life Cycles
Module 14: Customizing User Interface Elements
This module explains different ways of customizing the SharePoint user interface, such as adding buttons to the ribbon or modifying the appearance of list views.
Lab: Using the Edit Control Block to Launch an App
Lab: Using jQuery to Customize the SharePoint List User Interface
Module 15: Working with Branding and Navigation
Lab: Branding and Designing Publishing Sites
Lab: Configuring Farm-Wide Navigation
After completing this course, students will be able to:
- Design and manage features and solutions.
- Develop code for custom server-side components.
- Manage and customize authentication and authorization.
- Create custom sites and lists and manage the site lifecycle.
- Explain the capabilities and design choices for SharePoint apps.
- Use the client-side object model and the REST API.
- Develop provider-hosted and auto-hosted SharePoint apps.
- Distribute and deploy SharePoint apps.
- Create custom workflows to automate business processes.
- Use fields and content types to manage taxonomy.
- Customize the appearance and behaviour of user interface elements.
- Customize navigation and site branding.
Participants and RequirementsBefore attending this course, students must have:
• A working knowledge of using Visual Studio 2010 or Visual Studio 2012 to develop solutions.
• A basic working knowledge of SharePoint solution development, either in SharePoint 2013 or in earlier
versions of SharePoint.
• A working knowledge of Visual C# and the .NET Framework 4.5.
• A basic understanding of ASP.NET and server-side web development technologies, including request/
response and the page lifecycle.
• A basic understanding of AJAX and asynchronous programming techniques.
• Familiarity with approaches to authentication and authorization, including claims-based authentication.
Course Duration5 days