SharePoint Saturday Los Angeles 2011 SharePoint 2010 as The Business Intelligence Platform
Introduction to SharePoint as a development platform
-
Upload
ronald-courville -
Category
Technology
-
view
103 -
download
0
Transcript of Introduction to SharePoint as a development platform
apps for the modern enterprise
INTRODUCTION TO SHAREPOINT AS A DEVELOPMENT PLATFORMRON COURVILLE
apps for the modern enterprise
Welcome to SharePoint Saturday Houston
•Please turn off all electronic devices or set them to vibrate.
•If you must take a phone call, please do so in the hall so as not to disturb others.
•Special thanks to our Diamond Sponsor, HSPUG
Thank you for being a part of the 7th Annual SharePoint Saturday
for the greater Houston area!
apps for the modern enterprise
Thanks to all our Sponsors!
apps for the modern enterprise
Information•Speaker presentation slides should be available from the SPSHOU website within a week or so•This presentation is available at http://slideshare.net/ronaldcourville
•The Houston SharePoint User Group will be having it’s next meeting Wednesday April 20th. Please join us at www.h-spug.org
apps for the modern enterprise
A software team that speaks your language
apps for the modern enterprise
About Me
•LSU alumnus•Working with custom SharePoint development since 2009
•With Entrance Consulting since 2012
apps for the modern enterprise
… !?
“So, what do you do?”
apps for the modern enterprise
Software platform
“A major piece of software, as an operating system, an operating environment, or a database, under which various smaller application programs can be designed to run.”
http://www.dictionary.com/browse/software-platform
apps for the modern enterprise
What is SharePoint? (technically)
•An application?• “Intranet to go”• Core features
Document / Item Versioning Basic workflowsMetadata SitesWikis SearchCollaboration Permissions
apps for the modern enterprise
What is SharePoint? (technically)•An application?•A framework?• Provides functionalities / solution to the particular
problem area• No code solutions (OOTB)
• SharePoint Designer workflows• Content Deployment
• Custom code solutions• APIs• Code libraries
• Higher business value: Custom software can be delivered with…Less time to delivery More consistent user experienceLess bugs More bang for the buck
apps for the modern enterprise
Why have custom development?
Why• The SharePoint application
lacks specific functionality• Automate or assist typical
user functions within SharePoint
• Integrate metadata from other LOB systems into SharePoint
• Surface external applications on SharePoint for a better user experience
Why not• It’s fun / cool • There’s a viable ISV on the
market • It’s a large project (large
scale applications should not be built directly on SharePoint)• SP lists < SQL tables• 5000 list item query threshold
• More costly, could introduce additional bugs
apps for the modern enterprise
SharePoint 2007 server side code•Server side languages• PHP, ASP.Net, Java
•SharePoint is built on ASP.Net
apps for the modern enterprise
SharePoint 2007 server side code
•Application Page = custom ASP.Net page
apps for the modern enterprise
Packaging and deploying custom code
Solution Package• Deploys to IIS application pool
• Dangerous• Memory leaks• Could crash server
• Difficult deployment (server restart)• Not supported in Office 365
apps for the modern enterprise
SharePoint 2010 server side code• Solution package Farm solutions• Elevated access: Timer jobs, event receivers, site definitions,
custom content organizer rules, etc.• Deployable by farm admin• Not supported in Office 365
• Sandbox solutions• Simple, limited scope functions: custom web parts, ribbon button,
menu items, site themes, etc.• Deployable by site collection admin• Deprecated in Office 365
apps for the modern enterprise
SharePoint 2010 custom code web parts
•Server side code•Or JavaScript-based• Primarily using web services (SOAP)• Easier to deploy• Protects the server
•SPServices• https://spservices.codeplex.com/
apps for the modern enterprise
SharePoint 2010: SPServices + Content Editor
apps for the modern enterprise
SharePoint 2013: Client code renaissance
JavaScript Object Model (JSOM)
• Runs in the browser• Language: JavaScript
Client Side Object Model (CSOM)
• Runs on local machine• Languages: C# or
Visual Basic
Representational State Transfer
(REST)• Highly standardized API• Upgraded from SOAP
API in 2010
Enabled SharePoint Apps…
apps for the modern enterprise
• Deployable from the app store• On prem and O365• Delivers functionality and/or
UI to the host SP site
Types of add-ins• SharePoint hosted add-in
• Lives on SharePoint• Provider hosted add-in
• Lives on external, independent website
• Webpage surfaced as an iframe
SharePoint 2013: Apps Add-ins
apps for the modern enterprise
Why host custom code outside of SharePoint?Farm not at risk of memory leaks or unstable code
• Degrade performance; difficult to track, and can take down the whole farm
Dedicated and isolated app resources• Separation of concerns
Complete control over architecture• Supports any programming language or data source
Support large scale applications• > 5000 rows and faster read/write access
Can re-use outside of SharePoint• App data readily accessible by other LOB
apps for the modern enterprise
Example add-in
apps for the modern enterprise
Example add-in
apps for the modern enterprise
Add-ins summary
Versioning Basic workflowsMetadata SitesWikis SearchCollaboration Permissions
Custom Architectu
re
Access core
SharePoint functionali
ty
Guaranteed stable
environment
apps for the modern enterprise
What is SharePoint? (technically)•An application?•A framework? •A platform?
“A major piece of software, as an operating system, an operating environment, or a database, under which various smaller application programs can be designed to run.”
“An ecosystem of applications”
apps for the modern enterprise
What’s next?
Office 365 as a platform
apps for the modern enterprise
What’s next?
apps for the modern enterprise
What’s next?
apps for the modern enterprise
How to get started?
Learning resources• Pluralsight• MSDN• Dev.Office.com• Office 365 Patterns and PracticesStart simple, with low impact project
apps for the modern enterprise
Questions?Learn more at www.entranceconsulting.com