Code Standards, Practices, and Utilities for SharePoint

 

Two years ago I added a blog post on “MOSS Solution and Code Naming Conventions”. This subject comes up from time to time and, as a “quick reference”, I am posting some refinements and updates. The original is here: https://scottcurrier.wordpress.com/2009/03/01/moss-solution-and-code-naming-conventions/

Updated Links Next,

Life Cycle and Methods

Application Lifecycle Management (General): http://msdn.microsoft.com/en-us/library/gg604045.aspx

Application Lifecycle Management (Visual Studio): http://msdn.microsoft.com/en-us/vstudio/ff625779

Developing Applications for SharePoint 2010: http://msdn.microsoft.com/en-us/library/ff770300.aspx

Sandboxed Solution Considerations: http://msdn.microsoft.com/en-us/library/ee231562.aspx

Code Acceptance: http://technet.microsoft.com/en-us/library/cc707802(office.12).aspx

SharePoint Development Center: http://msdn.microsoft.com/en-us/sharepoint/default.aspx

Office 365

Office 365 Developers Guide: http://msdn.microsoft.com/en-us/library/hh147180.aspx

Utilities and Tools

SP Dispose Check (memory leaks): http://archive.msdn.microsoft.com/SPDisposeCheck

MSOCAF: https://caf.sharepoint.microsoftonline.com/Default.aspx

StyleCop (style and consistency rules): http://stylecop.codeplex.com/releases/view/64494

FxCop: See http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=8279 

For FxCop, as of this writing you will need to manually extract out of the SDK .ISO file if you don’t want the full SDK installed. see http://www.alexatnet.com/content/how-install-fxcop-10-0 

Team Foundation Server: http://msdn.microsoft.com/en-us/vstudio/ff637362

Roger Lamb’s Blog: http://blogs.msdn.com/b/rogerla/

ULS Viewer: http://archive.msdn.microsoft.com/ULSViewer <== added 5/16/2012

SPDiag 3.0: http://technet.microsoft.com/en-us/library/hh144782.aspx

Performance

Performance Counters: http://technet.microsoft.com/en-us/library/ff758658.aspx  <== added  1/18/2012

Quicker Downloads: http://technet.microsoft.com/en-us/library/hh206324.aspx

Web Performance Testing: Visual Studio Ultimate 2010 + SP1, see http://msdn.microsoft.com/en-us/library/aa337591.aspx

Web Testing Videos: http://www.bing.com/videos/search?q=Visual+Studio+2010+Load+Test+Wizard&mid=4320C2158B7365AF11B94320C2158B7365AF11B9&view=detail&FORM=VIRE3

lodctr.exe http://technet.microsoft.com/en-us/library/bb490926.aspx <== added 5/16/2012 (even helped fix User Code Host Service issues with SharePoint, using lodctr /r)

Web Performance Test TIP: if you are running on a local computer testing a remote machine on a different domain then run this command to be sure your remote performance counters map to the correct credentials

runas /netonly /user:domain\user "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe" 

General Testing: http://msdn.microsoft.com/en-us/library/bb385901.aspx

Results and Recommendations: http://www.microsoft.com/download/en/details.aspx?displayLang=en&id=12768

Configure Usage Reporting: http://technet.microsoft.com/en-us/library/cc262541(office.12).aspx

Diagnostic Logging: http://technet.microsoft.com/en-us/library/ee748606.aspx

Conventions

http://msdn.microsoft.com/en-us/library/aa291596(VS.71).aspx

http://10rem.net/articles/net-naming-conventions-and-programming-standards—best-practices

http://weblogs.asp.net/lhunt/pages/CSharp-Coding-Standards-document.aspx

Summary

Use your judgment ! You can’t do it all….be thoughtful, not draconian

Cheers!

PS: on a different topic – check out XAPTIC and SPDragon, my Silverlight and HTML5 widget library for SharePoint 2010 http://www.youtube.com/user/scottcurrier

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s