synebo talk #1 Salesforce lightning

24
Introduction to Lightning #synebotalk #sfdc #lightning #synebo February 24th, 2017

Transcript of synebo talk #1 Salesforce lightning

Page 1: synebo talk #1 Salesforce lightning

Introduction to Lightning#synebotalk #sfdc #lightning #synebo

February 24th, 2017

Page 2: synebo talk #1 Salesforce lightning

Salesforce Lightning

- Fundamentally new, potentially powerful (but a bit raw) technology, which is able to change Salesforce development.

What is proposed:

Page 3: synebo talk #1 Salesforce lightning

Plan Why do we need Lightning?Components.

What works.What doesn’t work.So what do we do?

Page 4: synebo talk #1 Salesforce lightning

Why do we need Lightning?Give us back our favourite Salesforce Classic!

Page 5: synebo talk #1 Salesforce lightning

our pain solution

Classic UI

Visualforce: stateful, backend-rendered MVC

Низкая модульность

Modern UI(e.g. Material, ...)

SPA:stateless API+ JS app (Aura)

Компонентный подход

Page 6: synebo talk #1 Salesforce lightning

Lightning New architecture, which solves problems

Lightning Design System

SPA Framework (Aura)

Lightning Components

Page 7: synebo talk #1 Salesforce lightning

Developmentmethods

Get Lightning-ready!

● Lightning-styled Visualforce (<slds/>)

● Lightning-styled web app (ng-lightning)

● Lightning Components

Page 8: synebo talk #1 Salesforce lightning

Components’ approachInterface. Reuse. “Matryoshka doll”.

Page 9: synebo talk #1 Salesforce lightning

Where does Lightning components work?One component – different platforms

Lightning Cloud

Sales Cloud,App Cloud, ...

Lightning Community

Napili Template

Salesforce1

Android / iOS

Lightning Out

Gmail, Chrome Extension, ...

AppExchange

Page 10: synebo talk #1 Salesforce lightning

How is Lightning Component designed?Interface.

Input parameters.

Controller.

Developments.

Inharitance.

Subsidiary components (standard and customized)

-- /aura/

-- -- /ComponentName/ (Component Bundle)

-- -- -- /ComponentName.cmp

-- -- -- /ComponentName.css

-- -- -- /ComponentName.design

-- -- -- /ComponentNameController.js

-- -- -- /ComponentNameHelper.js

-- -- -- /ComponentNameRenderer.js

-- -- -- /ComponentName.auradoc

Page 11: synebo talk #1 Salesforce lightning

Component Example<aura:component controller=”SyneboTalkComponentContoller" implements="force:hasRecordId,flexipage:availableForAllPageTypes">

<aura:attribute name="recordId" type="Id" />

<aura:handler name="init" value="{!this}" action="{!c.doInit}" />

<aura:handler event="force:refreshView" action="{!c.doInit}" />

<center> <!-- Feel free to use plain HTML in components -->

<aura:if isTrue="{!10 > 1}">

<ui:spinner aura:id="spinner"/>

Hello Synebo!

<aura:set attribute="else">

<ui:button aura:id="testButton"

buttonTitle="Click Me!"

class="button"

label="Click on this wonderful button!"

press="{!c.onTestButtonClick}"

disabled="{!v.isTestButtonDisabled == true}">

</ui:button>

</aura:set>

</aura:if>

</center>

</aura:component>

Page 12: synebo talk #1 Salesforce lightning

Lightning Application:

● Special component of the up level.● Almost like a component, but <aura:application>● Available under /<namespace>/<appName>.app● Isolated scope: doesn’t cooperate with components beyond an

app.● Supports templates.

Page 13: synebo talk #1 Salesforce lightning

Where does components allocated

● Code-defined Lightning Apps● Configuration-defined lightning apps:

○ Custom App Page (Tab)○ Custom Home Page○ Custom Record Page

● Visualforce Pages● Lightning Quick Actions● Lightning Community Pages (Napili)● Utility Bar● Lightning Console

Page 14: synebo talk #1 Salesforce lightning

What does Lightning (Aura) cosists of?

● Custom interfaces;● Custom events;● Interface tokens.

Page 15: synebo talk #1 Salesforce lightning

So what does eventually work?Fumctional. Development tools.

Page 16: synebo talk #1 Salesforce lightning

Functional● Layouts, apps, tabs – almost “from box”● Visualforce / Custom Actions● Majority of standard objects● Majority of standard functional● Lightning-only functional:

○ New Deduplication○ Many-to-many Accounts to Contacts○ Lead Score (Salesforce Einstein AI)○ Kanban Board○ Lightning Community Dashboards

● Visualforce Pages (with restrictions)Majority of things, which work in Classic works (or will work) in Lightning. BUT NOT vice versa.

Page 17: synebo talk #1 Salesforce lightning

Инструменты разработки

● Developer Console● Force.com IDE● MavensMate● Salesforce Lightning Inspector Chrome Extension● .. console.log()

Coming soon:

● Lightning API● Built-in support of web-frameworks (Angular, …)

Page 18: synebo talk #1 Salesforce lightning

What doesn’t work?Functional. Development tools.

Page 19: synebo talk #1 Salesforce lightning

Functional

● What’s Not Available in Lightning Experience you may find here [https://releasenotes.docs.salesforce.com/en-us/winter16/release-notes/lex_gaps_limitations.htm]

● Some functional in Visualforce○ For example, navigation with help of PageReference

● Some functional of settings○ For example, redefinition of standard actions (“New”, “Edit”, ...) with help of

components.■ You still can redefine them with Visualforce pages.■ You may add Lightning Actions.

Page 20: synebo talk #1 Salesforce lightning

Existing issues

● Speed● Bugs. Too many bugs.● Tools: debugger.● Documentation and code samples.

Page 21: synebo talk #1 Salesforce lightning

So what do we do?

● Used to be Developer Console● There was not debugger before● There was not Metadata API● We didn’t have all those fascinating methods in a standard

library

You say difficult? We are used to this :)

Page 22: synebo talk #1 Salesforce lightning

Salesforce Lightning

● New customers choose Lightning● Numerous AppExchange downloads of Lightning● All new features are available in Lightning● Salesforce developer itself introduces lightning as well

– Fundamentally new, potentially powerful (but a bit raw) technology, which is able to change Salesforce development.

.

Page 23: synebo talk #1 Salesforce lightning

“Lightning First”– is a foreground strategy for Synebo

Page 24: synebo talk #1 Salesforce lightning