Upload
john-ferringer
View
2.537
Download
2
Embed Size (px)
DESCRIPTION
While its very true that SharePoint’s development model is firmly rooted in the .NET development world, at the same time SharePoint can be appear to be a completely alien beast to even the most experienced of .NET developers. In this session, John will introduce the fundamental practices that a .NET developer should understand about SharePoint and needs to follow when building custom solutions for the platform, whether its creating web parts or building complex workflows and Line of Business applications for deployment within a SharePoint farm.
Citation preview
WHAT IS SHAREPOINT?
Maybe you’ve heard it called…
Or…
Perhaps You’ve Seen…
Or…
Let’s simplify things… SharePoint is:
• Collaboration
• Search
• Content Aggregation
• Content Management
• Applications
What kind of Applications?
• Data Display
• Business Collaboration
• Line of Business Applications
• Business Intelligence
• Process Management
• Public Web Sites
.NET AND SHAREPOINT
They have a lot in common
• Architecture
• Infrastructure
• Security
• Deployment
• Web Parts, Fields, User Controls
Why SharePoint?
With SharePoint you get:
• Security
• Search
• Content Management
• Workflows
• Provisioning
TOOLS FOR SHAREPOINT’S NUTS AND BOLTS
Visual Studio 2010
• Broad SharePoint Support
• Build web parts, templates, workflow, and much more
• Package and deploy
• View live SharePoint sites
• TFS Integration
• Extensible
SharePoint Designer 2010
• “No Code” development
• Customize sites, lists, web parts
• Design workflow
• Edit pages
• Free
Debugging Tools
(and the IE Developer Toolbar)
Supplemental Tools
Visual Studio 2010 SharePoint Power Tools
CKS:DEV
Managed
Code
• Traditional SharePoint & .NET Development
• Compiled
• Runs Server-Side
Client-Side
Code
• Not compiled
• JavaScript
• Silverlight
SharePoint
Development
Gotchas
Beware of Greedy Objects
• SPSite
• SPWeb
Similar,
but different:
• SPList.Items
No Unsupported Changes!
• SharePoint Root
…but its ok sometimes
• SharePoint Databases
NEVER!
Deployment Packaging
• Always deliver via Solution Packages
(WSP)
• Perfection = 3 files
– .WSP
– Deployment Script
– Retraction Script
• Avoid Backup/Restore or Export/Import
• Remember to address configuration
What’s a WSP?
• Cabinet file
• Contains:
– XML Files • Manifest.xml
• Feature.xml
– Assemblies
– Other Files • Master Pages
• Page Layouts
• User Controls
• Image Files
• Stylesheets
Keys to Successful WSP Deployment
• Where is it going?
– Sandbox?
– Large Env
(instrument your
code!)
• Temper your
expectations
• Test your
deployments!
TESTING
Compilation ≠ Testing
Three Critical
Testing Stages
• Unit Testing
• Deployment Testing
• System Testing
PROVEN PRACTICES
Have Development Standards
• Naming
• Source Control
• Labeling Code Files
Use Virtualization
Code the Right Way
• Don’t get fancy
• Don’t expect Full Privilege
• Dispose your objects
• Log errors & activity
Avoid Tunnel
Vision
• No perfect solutions
• No “One-Size Fits All”
• Heed warnings
Document Everything
Have you thanked your
administrator today?
Questions? QUESTIONS?