SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

13
Building SharePoint Solutions with KnockoutJS Marc D Anderson President Sympraxis Consulting LLC

Transcript of SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

Page 1: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

Building SharePoint Solutions with KnockoutJS

Marc D AndersonPresidentSympraxis Consulting LLC

Page 2: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

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

Page 4: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

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.

Page 5: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

What is KnockoutJS?

JavaScript frameworkFree and open sourceLearning curveCommunity support

Source: http://knockoutjs.com/

Page 6: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

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 workAdding functionality once the

foundation is laid is faster

Page 7: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

How Does KnockoutJS Compare to Other Approaches/ Frameworks?Roll your own

No separation of concernsKnockoutJS

Data binding Templating Simple Single Page Applications (SPAs)

AngularJS Routing True SPAs

Page 8: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

High Level Structure of KnockoutJS Functionality with SharePointData accessDocument readyApplication logicView modelTemplates (HTML with data binding)CSS

Page 9: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

Basic KnockoutJS Set Up

Data Access / Initial

Manipulation

Document Ready

ViewModel

Templates

JavaScript HTML

Application Styling

CSS

Page 10: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

Working with Data Sources

RESTSPServicesCSOM

Page 12: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

Demo

REAL-LIFE KNOCKOUTJS APPLICATIONS

FundraisingTask ManagementProcurement

Page 13: SharePoint Evolutions 2015 - Building SharePoint Solutions with KnockoutJS

Thank you for attending!

Marc D Anderson