SlideShare a Scribd company logo
Jaipur Dev Fest www.jaipurdevfest.com @jaipurdevfest
Get Struck by
Lightning
Mustafa Jhabuawala
Sr. Salesforce Developer
Mustafa.jhabuawala@zen4orce.com
@MustafaJhabua
#JDF17
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Hello!I am Mustafa Jhabuawala
I work @Zen4orce as a Sr. Salesforce Developer
I always strive to work with cutting edge technologies.
5 years exp | PD-1 Certified | Microsoft Certified | Crazy for
Salesforce Lightning | UI designing & development | .NET |
Sharepoint | JavaScript | jQuery | jQueryUI | BootStrap | HTML |
CSS
#JDF17 | 2
Tweet me @MustafaJhabua
#JDF17 | 3
Getting
Started…
▪ Prerequisites
▪ How to start with Lightning
▪ Framework Basics
▪ Lightning Components
▪ Lightning Events
▪ Lightning Locker Service
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Javascript
Basic knowledge of javascript
and its working.
Prerequisites
DOM
Understanding on DOM creation
and manipulation.
#JDF17 | 4
HTML & CSS
Basic understanding on HTML &
CSS.
Salesforce Ecosystem
Apex Development.
How to start with
lightning ?.....
▪ Lightning Components
▪ Lightning Events
▪ Lightning App Builder
▪ Lightning Connect
▪ Lightning Out
▪ Lightning Extension
▪ Lightning Dataservice
▪ Base Lightning Components
▪ Aura Framework
▪ Javascript
▪ SLDS
#JDF17 | 5
Difference
between
Visualforce
&
Lightning?
#JDF17 | 6
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Visualforce
▪ Page-Centric model
▪ More server side
▪ Built for Web
▪ Native visualforce page tags
▪ Monolithic
▪ Building SPA can be tedious
Visualforce &
Lightning
Lightning
▪ App- Centric model
▪ More Client Side
▪ Built for Mobile
▪ HTML & CSS
▪ Component driven
▪ Building SPA can be fun
#JDF17 | 7
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Why
Lightning ?
Lightning ?
▪ Business ready components
▪ Ready to use in S1,Lightning Experience & Communities
▪ Faster performance
▪ Increase in application efficiency
▪ Rich component ecosystem
▪ Event-driven architecture
▪ Device-aware and cross browser compatibility
#JDF17 | 8
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
What is
Lightning ?is
Lightning ?
▪ Combination of :
▫ JavaScript framework
▫ CSS framework
▫ Series of UI components
▪ Used for developing dynamic web apps for :
▫ Mobile
▫ Desktop devices
#JDF17 | 9
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Tools▪ Developer Console
▪ MavensMate + Sublime
▪ Welkins Suite
▪ Force.com IDE
#JDF17 | 10
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Framework’s
#JDF17 | 11
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Aura Framework
#JDF17 | 12
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
XML Component
Definition
Lightning
Component Bundle
XML
#JDF17 | 13
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
XML Component
Definition
Lightning
Component Bundle
XML
#JDF17 | 14
JS
JS Controller, Helper,
Renderer, etc..
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
XML Component
Definition
Lightning
Component Bundle
XML
#JDF17 | 15
JS CSS
JS Controller, Helper,
Renderer, etc..
Styling
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
XML Component
Definition
Lightning
Component Bundle
XML
#JDF17 | 16
JS CSS Apex
JS Controller, Helper,
Renderer, etc..
Styling Apex Controller
App
Demo
#JDF17 | 17
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 18
Application
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 19
Component
Thor
Application
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 20
Component
Thor
Application
Component
Iron Man
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 21
Component
Thor
Application
Component
Iron Man
Component
Batman
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 22
Component
Thor
Application
Component
Iron Man
Component
Hulk
Component
Batman
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 23
Component
Thor
Application
Component
Iron Man
Component
Hulk
Component
Batman
A B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component Based
Development
#JDF17 | 24
Component
Thor
Application
Component
Iron Man
Component
Hulk
Component
Batman
A B C D
E
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 25
Application
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 26
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 27
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 28
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 29
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 30
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 31
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 32
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 33
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 34
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Event Driven
Programming
#JDF17 | 35
Component
Thor
Application
Component
Iron Man
A
B
Back to
Demo
#JDF17 |
36
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
▪ Self-contained + Reusable units.
▪ Rich-set of prebuilt components.
▪ Rendered to produce HTML DOM elements.
▪ Can contain other
▫Components
▫HTML
▫CSS
▫JavaScript
▫Any other Web-enabled code.
▪ Enables you to build apps with sophisticated UIs.
#JDF17 | 37
Lightning
Components
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Lightning
Components
#JDF17 | 38
Using
Developer
Console
#JDF17 | 39
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Bundle
#JDF17 | 40
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Markup
#JDF17 | 41
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
IDs
▪ A component has two types of IDs:
▫ Local ID
▫Global ID
#JDF17 | 42
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
CSS in
Component
#JDF17 | 43
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Attributes
▪ Similar to member variables in Apex Class
▪ Make components more dynamic
▪ Attributes have:
▫ Name
▫ Type
▫ Required
▫ Default
#JDF17 | 44
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Data Binding
Between Components
▪ Passing attribute from parent to child component results in
data binding also known as value binding
▪ Expression types –
▫ Bound Expressions
▫ Unbound Expressions
#JDF17 | 45
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Bound
Expression
▪ Syntax – {!v.data}
▪Data updates in either component are reflected through bidirectional data binding
in both components.
#JDF17 | 46
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Unbound
Expression
▪ Syntax – {#v.data}
▪ Data updates in a component is NOT reflected in other component
#JDF17 | 47
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Lightning
Events
▪ There are two types of events :
▫ Component events
▫ Application events
#JDF17 | 48
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
▪ Fired from an instance of a component
▪ Handled
▫ Component that fired the event
▫ Component in the containment hierarchy that receives the event.
#JDF17 | 49
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 50
Component
Thor
Application
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 51
Component
Thor
Application
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 52
Component
Thor
Application
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 53
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 54
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 55
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Component
Events
#JDF17 | 56
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
▪ Fired from an instance of a component
▪ Components that provide a handler for the event are
notified
#JDF17 | 57
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
#JDF17 | 58
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
#JDF17 | 59
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
#JDF17 | 60
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
#JDF17 | 61
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
#JDF17 | 62
Component
Thor
Application
Component
Iron Man
A
B
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Application
Events
#JDF17 | 63
Component
Thor
Application
Component
Iron Man
A
B
Lightning
Locker Service
#JDF17 |
64
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Locker
Service
▪ Enforces security into SPA built using lightning components
▪ It prevents from
▫ Causing XSS and similar security issues
▫ Reading other component’s rendered data
▫ From calling undocumented/private APIs
▪ Resulting In -
▫ Faster security review
▫ Better and more secure JS development practices
▫ And many more….
#JDF17 | 65
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com #JDF17 | 66
Any Questions ?
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Resources
#JDF17 | 67
▪ Trailhead
▪ Lightning Developer Guide
▪ And our awesome community members
Jaipur Dev Fest www.jaipurdevfest.com @jaipurdevfest
Thanks!!
You can find me at @MustafaJhabua &
mustafa.jhabuawala@zen4orce.com
#JDF17
www.jaipurdevfest.com @jaipurdevfest jaipurdevfest@googlegroups.com
Credits
Special thanks to :
▪ Jina Chetia
▪ Jaipur Dev Fest (Gaurav Kheterpal, Abhinv Gupta & team)
#JDF17 |

More Related Content

KEY
Agile toolkit present 2012
DOC
CV_Abhay_Pawar
PDF
Android DevConference - Scaling Mobile Development
PPTX
Java Clients and JavaFX: The Definitive Guide
PDF
Lightning Components Explained
PDF
Salesforce Lightning Development What Do You Need to Know.pdf
PPTX
Lightning components ver1.0
PDF
September SDG - Lightning
Agile toolkit present 2012
CV_Abhay_Pawar
Android DevConference - Scaling Mobile Development
Java Clients and JavaFX: The Definitive Guide
Lightning Components Explained
Salesforce Lightning Development What Do You Need to Know.pdf
Lightning components ver1.0
September SDG - Lightning

Similar to Get Struck By Lightning (20)

PPTX
Salesforce developer
PPTX
SFDC Lightning Demo
PDF
Lightning Components - Down Under Dreaming Sydney
PDF
Salesforce developer
PPTX
6th Salesforce Developer Group - Bilbao
PPTX
Salesforce.com Lightning
PPTX
Introduction to lightning lifecycle
PDF
Denver Salesforce DUG DF 2018 roundup
PPTX
14th Salesforce Developer Group meeting in Bilbao
PDF
Building a Lightning App with Angular Material Design
PDF
Dreamwares: Lightning Experience
PDF
Salesforce Lightning
PPTX
Lightning Component - Components, Actions and Events
PPTX
An Introduction to Lightning Web Components
PDF
Lightning Design System and Components for Visualforce Developers
PDF
Deep diving into building lightning components
PPTX
Lightning Web Components by Abdul Gafoor
PPTX
Lightning Web Components
PPTX
Lightning Components Introduction
PPTX
Lightning web components - Introduction, component Lifecycle, Events, decorat...
Salesforce developer
SFDC Lightning Demo
Lightning Components - Down Under Dreaming Sydney
Salesforce developer
6th Salesforce Developer Group - Bilbao
Salesforce.com Lightning
Introduction to lightning lifecycle
Denver Salesforce DUG DF 2018 roundup
14th Salesforce Developer Group meeting in Bilbao
Building a Lightning App with Angular Material Design
Dreamwares: Lightning Experience
Salesforce Lightning
Lightning Component - Components, Actions and Events
An Introduction to Lightning Web Components
Lightning Design System and Components for Visualforce Developers
Deep diving into building lightning components
Lightning Web Components by Abdul Gafoor
Lightning Web Components
Lightning Components Introduction
Lightning web components - Introduction, component Lifecycle, Events, decorat...
Ad

Recently uploaded (20)

PDF
Web App vs Mobile App What Should You Build First.pdf
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPTX
TLE Review Electricity (Electricity).pptx
PPTX
Chapter 5: Probability Theory and Statistics
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
Hybrid model detection and classification of lung cancer
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PPTX
Modernising the Digital Integration Hub
PDF
Getting Started with Data Integration: FME Form 101
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
project resource management chapter-09.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
WOOl fibre morphology and structure.pdf for textiles
Web App vs Mobile App What Should You Build First.pdf
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
TLE Review Electricity (Electricity).pptx
Chapter 5: Probability Theory and Statistics
NewMind AI Weekly Chronicles - August'25-Week II
cloud_computing_Infrastucture_as_cloud_p
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Getting started with AI Agents and Multi-Agent Systems
Hybrid model detection and classification of lung cancer
Group 1 Presentation -Planning and Decision Making .pptx
Modernising the Digital Integration Hub
Getting Started with Data Integration: FME Form 101
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
A novel scalable deep ensemble learning framework for big data classification...
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
project resource management chapter-09.pdf
Zenith AI: Advanced Artificial Intelligence
O2C Customer Invoices to Receipt V15A.pptx
gpt5_lecture_notes_comprehensive_20250812015547.pdf
WOOl fibre morphology and structure.pdf for textiles
Ad

Get Struck By Lightning