SharePoint Design Basics
This topic includes guidance about some of the fundamental challenges that architects and developers face when they create a SharePoint application. The examples that provide guidance on how to address these challenges come from the Training Management reference implementation. This application demonstrates how to develop a basic SharePoint application. For a detailed discussion about the Training Management application, see Training Management Reference Implementation.
The following subtopics describe the design decisions that were made for the Training Management application:
- Using Site Definitions. This topic explains the reasons for using a site definition to package the Training Management application.
- Content Types. This topic is a general discussion of content types and their relationships to list.
- Using SharePoint Lists vs. Database Tables. This topic explains the reasons why lists, instead of databases, are used for data storage in the Training Management application.
- Using List Definitions. This topic explains the reasons for using list definitions in the Training Management application.
- Extending SharePoint List UIs. This topic explains the options that were evaluated when extending the SharePoint list user interfaces.
- Enforcing Custom List Item Data Validation. This topic explains the reasons for using custom event receivers to perform data validation.
- Using Standard and Custom Web Parts. This topic explains when to use standard SharePoint Web Parts and when to use custom Web Parts.
- Using Workflows and Event Receivers. This topic explains when to use workflows and when to use event receivers.
- Using SharePoint Permissions. This topic explains how the Training Management application uses custom groups and permission levels to implement security.
- Organizing Features. This topic explains how to organize SharePoint features in a solution. It uses the Training Management application as an example.