SPTechCon Dev Days SFO 2015 - Building SharePoint Solutions with KnockoutJS

Post on 03-Aug-2015

2.071 views 1 download

Tags:

Transcript of SPTechCon Dev Days SFO 2015 - Building SharePoint Solutions with KnockoutJS

Building SharePoint Solutions with KnockoutJS

Marc D AndersonSharePoint MVPCo-Founder & PresidentSympraxis Consulting LLC

Who Is Marc?

• Co-Founder and President of Sympraxis Consulting LLC, located in the Boston suburb of Newton, MA, USA. Sympraxis focuses on enabling collaboration throughout the enterprise using the SharePoint application platform.

• Over 30 years of experience in technology professional services and software development. Over a wide-ranging career in consulting as well as line manager positions, Marc has proven himself as a problem solver and leader who can solve difficult technology problems for organizations across a wide variety of industries and organization sizes.

• Author of SPServices• Awarded Microsoft MVP for SharePoint

Server 2011-2015

Session Overview

• Building SharePoint solutions is changing a lot. Just a few years ago, creating an entire application client-side seemed too much like a foolhardy idea. However, with the maturing of many solid JavaScript development tools and frameworks, it's not only possible, but in many cases preferable to server-side development.

• In this session, we'll look at how you can use KnockoutJS as part of your development toolkit. Whether you're building on SharePoint 2007 with SPServices as the data layer or in SharePoint 2013 using REST – or anywhere in between - KnockoutJS can help you build rock solid SharePoint solutions that are adaptive and maintainable.

What is KnockoutJS?

• JavaScript framework• Free and open source• Learning curve• Community support

Source: http://knockoutjs.com/

Why Do We Care?

• Once the page is in the browser, it’s not SharePoint’s anymore

• We can build anything as long as we have the data to support it

• Databinding saves us a lot of work• Adding functionality once the foundation is laid is faster

How Does KnockoutJS Compare to Other Approaches/ Frameworks?• Roll your own• No separation of concerns

• KnockoutJS• Data binding• Templating• Simple Single Page Applications (SPAs)

• AngularJS• Routing• “True” SPAs

High Level Structure of KnockoutJS Functionality with SharePoint

Data Access / Initial Manipulation

Document Ready

ViewModel / Application Logic

Templates

JavaScript

HTML

Application Styling

CSS

Working with Data Sources

• REST• SPServices• CSOM

sympmarc/KOBindings

Demos

Real-life KnockoutJS applications

October 24/25 2015 May 7/8 2016