The process of developing for SharePoint is naturally quite elaborate and encompasses several steps. In order to have a complete overview of the development on this much popular and preferred web application platform, it is good to go step-by-step and accordingly, begin with a conceptual overview of the SharePoint foundation.
Understanding SharePoint Foundation
The application of Microsoft SP Foundation is built on top of the Microsoft ASP.NET framework and the Internet Information Services. Server Farm, which is basically a set of servers running the various components of SharePoint Foundation, also comprises more than one front-end web servers along with Microsoft SQL server database servers. Every farm has an individual configuration database consisting of information about the front-end web servers in the administrators of the farm. Each content including that of the user information, on the other hand, is stored in the content database while the server farms too have multiple content databases.
Choosing the Best-Suited SharePoint API
Microsoft SP comes with three different types of APIs and the next question that arises with regards to the development on this platform is which of the APIs to be used. Here is an overview of the three kinds along with their advantages and limitations.
- Server-Side Object Model
To begin with, there is the server-side object model coming up with a wide range of options for extending the capabilities of SP 2010. The good part of this is that it has all APIs that are documented in the SP 2010 Class Libraries and Web Service References section of the MS SP 2010 software development kit.
- Client Object Model
The client object model allows for integration of SharePoint 2010 capabilities into script. This can be executed in the browser or code, in a .NET framework managed application or in a Microsoft Silverlight application. The APIs in this particular model act as wrappers around a customized web service, dispatching the calls to the server- side object model.
- SharePoint 2010 Web Services
The SP 2010 web services pave the way for an integration of the SP capabilities into a code that runs in a client- side or server-side applications remotely. This specific variety offers a limited set of REST interfaces for developers, who happen to be familiar with the particular standard.
Glide Path for ASP.NET Developers
This area concerns the use of SharePoint Foundation as an ASP.NET application. Developers must be aware of the manner in which development differs with respect to ASP.NET and SharePoint. The areas that need to be taken into account are mobile adapter development, modification of Web.config files, page development as well as user and group authorization.
SharePoint Foundation Development Tools
Several tools are implemented when it comes to developing solutions for this remarkable web application development platform. These tools can accordingly be customized to maximize the efficiency of the developer and lead to a better outcome. The setting up of the development environment for SP 2010 on Windows 7, Windows Vista and Windows Server 2008 is an essential consideration. At the same time, one must also be informed about the usage of visual studio and SharePoint designer for SP development.
Important SharePoint Programming Tasks
A number of SharePoint programming tasks are taken up as a part of the process of developing for SP 2010. Following are some of these tasks:
- Conversion of date as well as time values
- Description of forms of URL strings
- Addition or deleting of list items
- Returning items from a list
- Registering as well as Importing of Namespaces
- Security validation and making of posts to update data
Knowing about the Best Practices
When it comes to development on the highly advanced platform of SP 2010, understanding the best practices is essential to ensure perfect execution of the task. Some of the best practices include the following:
- Avoidance of the suspended impersonation of the calling user
- Avoidance of unnecessary construction of SPWeb and SPSite objects
- Disposal of objects
- Restrictions on file naming
- Techniques of object caching
- Optimizing of the code performance
The above-mentioned steps offer an overview of how the development process can take place in a smooth manner. If you were to attempt a SharePoint site migration project, understanding of these best practices would ensure a successful migration.