Transcript
Page 1: Best way to create a share point app

1 | SharePoint Saturday Italy – Rome – 25 January 2014

25 January 2014

Page 3: Best way to create a share point app

3 | SharePoint Saturday Italy – Rome – 25 January 2014

Fabio Franzini – SharePoint Server MVP – [email protected] - @franzinifabio – www.fabiofranzini.com

Best way to create a SharePoint App

Page 4: Best way to create a share point app

4 | SharePoint Saturday Italy – Rome – 25 January 2014

About Me SharePoint MVP Senior Consultant and Software Engineer MCT Trainer MCPD Web Applications, MCTS SharePoint

2010/2007 Web Stack Lover Official Ignite Trainer for SharePoint 2013 &

2010 in Italy Over 9 years experience in IT as a

software engineer

Page 5: Best way to create a share point app

5 | SharePoint Saturday Italy – Rome – 25 January 2014

Agenda Evolution in SharePoint Development

New App Model Kinds of Apps

What is the best model? UI Layer Biz Layer Server Side Code

Page 6: Best way to create a share point app

6 | SharePoint Saturday Italy – Rome – 25 January 2014

SharePoint2007

SharePoint2010

SharePoint 2013

Services(Azure, IIS, Apache,etc…)

SP2007WSP

SP2010WSP

SP2013App

Declar. App & Workflow Events

Custom Code

Custom Code

CSOM

_api

_api

Evolution in SharePoint Development

CSOM

Page 7: Best way to create a share point app

7 | SharePoint Saturday Italy – Rome – 25 January 2014

New App Model Apps no longer live in SharePoint

Reduces the ramp-up time for those building apps (Don’t need to know/be as familiar with SharePoint “-isms”)

Custom code executes in the client, cloud or on-premise Easier to upgrade to future versions of SharePoint Works in hosted environments w/o limitations

Apps communicate with SharePoint via REST / CSOM

Apps are granted permissions to SharePoint via OAuth

Acquire apps via centralized Marketplace Some Examples http://

code.msdn.microsoft.com/officeapps

Page 8: Best way to create a share point app

8 | SharePoint Saturday Italy – Rome – 25 January 2014

Kinds of Apps

Provision an Isolated sub web on a parent web Reuse web elements

(lists, files, out-of-box web parts)

No server code allowed; use client JavaScript for logic, UX

Server side code allowed

Any web stack allowed

Windows Azure + SQL Azure provisioned invisibly as apps are installed

Page 9: Best way to create a share point app

9 | SharePoint Saturday Italy – Rome – 25 January 2014

What is the best model?

Hosted Sitefor Services

+If you need!

Using existing services / reuse of services across multiple apps

Does not require a hosting service for apps Multi-tenancy free through sharepoint

Page 10: Best way to create a share point app

10 | SharePoint Saturday Italy – Rome – 25 January 2014

Or….

HTML5 +

JavaScript+

Server Side Services

+

Using Client Side Coder for UI Logic

Using Server Side Code for Services

Easy to Upgrade and Bug-Fix

Any language supported by your web server or hosting service

Page 11: Best way to create a share point app

11 | SharePoint Saturday Italy – Rome – 25 January 2014

UI Layer 1/3

Page 12: Best way to create a share point app

12 | SharePoint Saturday Italy – Rome – 25 January 2014

UI Layer 2/3 Using Standard SharePoint Styles

MSDN: http://bit.ly/1hO8ToL, http://bit.ly/KMSzIF Add custom styles

Add Prefix to all css styles to prevent conflicts

Page 13: Best way to create a share point app

13 | SharePoint Saturday Italy – Rome – 25 January 2014

UI Layer 3/4 No PostBack or Server Side Page

Rendering Using Client Side Framework for UI

Logics and Custom Controls KnockoutJS / DurandalJS

(MVVM) / Complete SPA Framework on top of KnockoutJS

AngularJS Complete SPA Framework from Google

Another or Custom Solution

Page 14: Best way to create a share point app

14 | SharePoint Saturday Italy – Rome – 25 January 2014

Demo

UI Layer – Styles and Controls

Page 15: Best way to create a share point app

15 | SharePoint Saturday Italy – Rome – 25 January 2014

Biz LayerClient Code (JavaScript)

+ SharePoint Client API (CSOM / REST)

+ Custom Services (ASP.NET, NodeJS, PHP,

Java, …)

Modularizing your client code!!!!!! Uses RequireJS for example

Page 16: Best way to create a share point app

16 | SharePoint Saturday Italy – Rome – 25 January 2014

Demo

Biz Layer

Page 17: Best way to create a share point app

17 | SharePoint Saturday Italy – Rome – 25 January 2014

Server Side Code Every time you need to functionality

difficult to do on the client DB Access Long Running Process Server Side Generation …

Uses the technology that you want ASP.NET NodeJS PHP JSP ….

Page 18: Best way to create a share point app

18 | SharePoint Saturday Italy – Rome – 25 January 2014

Recap What is the best model? – SharePoint Hosted +

Services / Provider Hosted with Client Side Logics + Services

UI Layer – Client Side Templating Biz Layer – Client Side Code + Services Server Side Code – ASP.NET, NodeJS, JSP, PHP…

Page 19: Best way to create a share point app

19 | SharePoint Saturday Italy – Rome – 25 January 2014

Q&A

Page 20: Best way to create a share point app

20 | SharePoint Saturday Italy – Rome – 25 January 2014

Session Feedback

Best way to create a SharePoint Apphttp://www.surveymonkey.com/s/NVL3VZN

Page 21: Best way to create a share point app

21 | SharePoint Saturday Italy – Rome – 25 January 2014

Grazie


Recommended