Guidelines

For more information about specific guidance for SharePoint applications, you can explore the following guidance sections:

  • Developing SharePoint Applications. This topic contains an overview of the SharePoint platform for ASP.NET developers and a quick tour of the Partner Portal application. It is intended for developers who are familiar with ASP.NET concepts but who are new to SharePoint.
  • Patterns. Patterns provide general solutions to commonly occurring problems. This guidance describes patterns that can be adapted to the SharePoint context. These include the following application and design patterns:
    • Event-Driven Site Creation. This pattern describes a model for creating a site in response to an event.
    • Application Instance Resolution. This pattern describes a model that automatically directs users to the appropriate area for information partitioned across site collections.
    • Business Event Coordination. This pattern describes a model for coordinating events between external systems and SharePoint.
    • The Model-View-Presenter (MVP) Pattern. The MVP pattern maximizes the amount of code that can be tested with automation and separates business logic from user interface (UI) logic to make the code easier to understand and maintain.
    • The Repository Pattern. This pattern separates the logic that retrieves application data. The repository separates the low-level entity model from the business logic that acts on the model.
    • The Service Locator Pattern. The service locator decouples classes from their dependencies so that these dependencies can be replaced or updated with little or no change to the classes. This is useful for a number of testing, versioning, and deployment scenarios.
    • The Trusted Façade Pattern. The trusted façade helps you authenticate external users of a SharePoint application that is located in a perimeter network.
  • Integrating Line-of-Business Systems. This section discusses how to integrate line-of-business (LOB) systems with SharePoint. It describes how to consume LOB services in SharePoint and expose services from SharePoint. It also gives security considerations for LOB integration.
  • Considerations for Content-Driven Applications. Creating a content-driven application can involve many people with skills in many different areas. Each area has its own challenges. This section includes the following topics:
    • Integrating Publishing Sites and Collaboration Sites. Microsoft Office SharePoint Server 2007 includes publishing capabilities. This topic describes how publishing sites can be integrated with SharePoint collaboration sites.
    • Techniques for Aggregating List and Site Information. Although SharePoint offers several approaches that minimize the impact of aggregating data, developers and architects should perform this task judiciously. This topic gives guidance for aggregating list and site information.
    • Cross-Site Collection Navigation. Cross-site collection navigation refers to a Web-based user interface that allows you to access sites that are located in different site collections. This topic explains how to use XML to customize the SPXmlContentMapProvider class and how to implement global navigation by creating a custom navigation solution.
    • Understanding Custom Site Navigation. This topic gives the general steps that are required to implement a breadcrumb user interface for custom site navigation.
    • Developing Custom Publishing Page Layouts. This topic describes how to use rich HTML field controls, how to develop custom field controls, and how to use Web Parts on a publishing page.
    • Options for Site Branding. This topic describes the site branding options that are available in SharePoint. Site branding is the process of customizing a Web site to reflect organizational identity.
    • Understanding Publishing and Content Deployment. This topic explains how to deploy content from an authoring farm to a production farm.
    • Using the Central Template Gallery. This topic gives procedures for customizing the central template gallery using the STSADM command.
    • Extracting Artifacts Created with SharePoint Designer and the Browser. This topic describes how to extract authored artifacts that are stored in the content database and convert them into source files that you can manage as Visual Studio solution artifacts under version control.
  • Considerations for Enterprise-Scale Applications. This section of the guidance addresses some common scenarios in enterprise-scale application development. Considerations for enterprise-scale applications include the following topics:
    • Managing Application Configuration. This topic covers the various application configuration options available to SharePoint developers.
    • Providing Application Diagnostics. This topic addresses some techniques and tools for creating code that is easy to instrument and troubleshoot
    • Improving Application Quality Through Testing. This topic provides a comprehensive overview of the types of testing needed for enterprise applications.
    • Building for Scale. For an enterprise application to scale appropriately, the underlying code most be written in a scalable way and sufficient stress testing needs to be performed to evaluate its behavior under normal and excessive user load. The Building for Scale section covers some of the decisions and techniques needed for creating scalable SharePoint code. It also describes scale and stress testing for SharePoint applications.
  • Considerations for Extranet Development. This topic briefly describes some of the security issues you should consider when you develop an extranet for SharePoint. It also links to the relevant SharePoint product documentation and gives several procedures.

Home page on MSDN | Community site