SlideShare una empresa de Scribd logo
1 de 55
Forward-Looking Statement
Statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or
implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking,
including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements
regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded
services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality
for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and
rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with
completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our
ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment,
our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on
potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent
fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important
disclosures are available on the SEC Filings section of the Investor Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and
may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are
currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
Go Social!
Salesforce Developers
Salesforce Developers
Salesforce Developers
The video will be posted to YouTube & the
webinar recap page (same URL as registration).This webinar is being recorded!
@salesforcedevs / #SalesforceDX
Salesforce DX Webinar Agenda
 Salesforce Development Overview
 Adopting the Salesforce Development Experience
 Understanding Modular, Package Development
 Preparing and Migrating to Modular Projects and Packages
 Managing Org Shape
Have Questions?
 Don’t wait until the end to ask your question!
 Technical support will answer questions starting now.
 Respect Q&A etiquette
 Please don’t repeat questions. The support team is working their way down the
queue.
 Stick around for live Q&A at the end
 Speakers will tackle more questions at the end, time-allowing
 Head to Developer Forums
 More questions? Visit developer.salesforce.com/forums
Salesforce Platform
Development
Development Processes before Salesforce DX
Code
Develop+ Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
Dev
SBX
PROD
Full
SBX
Dev
SBX
Dev
SBX
Partial
SBX
Dev
Pro
SBX
Dev
Pro
SBX
Declarative Development:
Code is promoted through
Change Sets
Source Based Development:
Changes are tracked in a VCS.
The Ant Tool is used to move
source through development,
test, and release Sandboxes.
Version Control System (repo)
Ant Tool Commands/Scripting
Change Set Promotions
Dev
SBX
Dev
SBX
Build with the Tools you love,
within a Process you already understand
Environments are
easily created
and disposable
Metadata
and code are
modular
Flexible
packaging
supports agile
distribution model
Everything is
driven from
source code
Development is
organized around
team
collaboration
Development is
based on open
standards and
extensibility
Processes and
tools facilitate
continuous
delivery
Salesforce Development Experience
Build together and deliver continuously
Source-driven development
Greater agility to test out features with confidence
Team collaboration
Increased dev productivity, faster time to market
Continuous integration and delivery
Higher quality code, more automation
Open and prescriptive
Build with the tools and processes you know and love;
bring together Lightning, Force.com, and Heroku
Improve the Developer Experience
Across Application Lifecycle Management
Plan
Code
BuildTest
Release
CLI for integration with 3rd
party editors
Scratch orgs for devs,
built off of source
Continuous Delivery/ build
automation
Continuous integration
with test automation
Sandboxes for
performance testing, UAT,
staging
Packaging to
streamline delivery
to prod
VCS as the
source of truth
IDEs, Text Editors,
Language Services
Source Based Development Evolving with SFDX
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
Org Based Development:
Org Diffs are developed and
released through Ant
Migration, Metadata API
Deploy and Retrieve
PROD
Full
SBX
Partial
SBX
Dev
Pro
SBX
Dev
SBX
Dev
SBX
Dev
SBX
Version Control System (repo)
force:mdapi:deploy
force:mdapi:retrieve
Module Development:
Changes are developed with
source push and pull.
Modules are released through
Metadata API Deploy.
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Version Control System (repo)force:source:convert
force:mdapi:retrieve
force:source:push
force:source:pull
Scratch
Org
Scratch
Org
Scratch
Org
Scratch
Org
Adopting Salesforce DX
Adopting Salesforce DX
 Salesforce DX CLI
 Migrate your current Force.com development tasks (e.g. Metadata API Deploy,
Apex Testing)
 Continuous Integration and Delivery
 Automate Tests and Releases through CLI commands, Sandboxes and/or
Scratch orgs to produce higher quality code.
 Modular Development with Projects, Scratch Orgs, and DCPs
 Scratch orgs and source change tracking provide greater agility.
to test out features with confidence
Not just all-or-nothing
Migrate Existing Tasks to the CLI
All of your Developer needs in One Tool
Example Tasks Benefit Features & Products
● Metadata API Deploy and
Retrieve
● User Authentication
● Org Creation/Deletion
● All of your commands in one place
● More secure authentication
● Improved scripting and usability
● Salesforce DX CLI
Automate Testing and Release Management
Integrate with Continuous Integration and Delivery Tools
Benefit Features & Products
● Improved product quality
● Increased agility, Faster time to market
● Better governance and stability
● Salesforce DX CLI
● Sandboxes + Scratch Orgs
● 3rd party VCS
● 3rd party CI/CD Tool
Understanding Modular, Package Development
Development Processes before Salesforce DX
Code
Develop+ Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
Dev
SBX
PROD
Full
SBX
Dev
SBX
Dev
SBX
Partial
SBX
Dev
Pro
SBX
Dev
Pro
SBX
Declarative Development:
Code is promoted through
Change Sets
Source Based Development:
Changes are tracked in a VCS.
The Ant Tool is used to move
source through development,
test, and release Sandboxes.
Version Control System (repo)
Ant Tool Commands/Scripting
Change Set Promotions
Dev
SBX
Dev
SBX
Source Based Development Evolving with SFDX
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
PROD
Full
SBX
Partial
SBX
Dev
Pro
SBX
Scratch
Org
Scratch
Org
Scratch
Org
Org Based Development:
Org Diffs are developed and
released through Ant
Migration, Metadata API
Deploy and Retrieve
Package Development:
Package Changes are
developed with source push
and pull. Package Changes
are released through new
Package Versions.
Version Control System (repo)
force:source:push
force:source:pull
PROD
Full
SBX
Partial
SBX
Dev
Pro
SBX
Dev
SBX
Dev
SBX
Dev
SBX
Version Control System (repo)
force:mdapi:deploy
force:mdapi:retrieve
force:packageversion:create
force:package:install
Scratch
Org
What is Org-Based Development?
 Change Management by tracking Org
Diffs
 Releases are designed around updating a
specific Production Org
 All Metadata stored in the Unpackaged
Area of the Org
Org Driven Development with Salesforce DX
 Org Differences are Tracked Manually
 Org Differences are Version Controlled
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
PROD
Full
SBX
Partial
SBX
Dev
Pro
SBX
Dev
SBX
Dev
SBX
Dev
SBX
Version Control System (repo)
force:mdapi:deploy
force:mdapi:retrieve
 Release are scheduled around the Production
Org
 Release Artifacts are specific to a Production Org
 All Phases of the Development Process are
executed via Metadata API
What is a Developer Controlled Package?
 Container for transporting entire modules
of metadata components to your org
 Durable module that exists in your Org
 Releases are designed around the
installation or upgrade of a Package
Version
Package Development with Salesforce DX
 Changes to the Packages are Automatically Tracked
 Entire Package (all metadata) always version
controlled
 Dev, Test and CI executved via force:source
commands
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
 Release schedule for each Package
 Release Artifacts are new Package Version
 CD and Release Mgmt executed via force:package
commands
force:source:push
force:source:pull
force:packageversion:create
force:package:install
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Scratch
Org
Scratch
Org
Scratch
Org
Version Control System (repo)
Scratch
Org
Benefits of Developer Controlled Packages (DCPs)
Easy to add/edit/remove
components
Source-driven
Development
Iterate using
Versions
Improved Audit /
Change Management
Dependency
ManagementSimplified CI / CD
Repeatable, Scriptable, Trackable
Increased
Developer
Productivity and
Release
Management
Preparing for Developer Controlled Packages
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Scratch
Org
Scratch
Org
Scratch
Org
Module Development:
Changes are developed with
source push and pull.
Modules are released through
Metadata API Deploy.
Package Development:
Package Changes are
developed with source push
and pull. Package Changes
are released through new
Package Versions.
Version Control System (repo)
force:source:push
force:source:pull
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Version Control System (repo)force:source:convert
force:mdapi:retrieve
force:packageversion:create
force:package:install
Scratch
Org
force:source:push
force:source:pull
Scratch
Org
Scratch
Org
Scratch
Org
Scratch
Org
Module
Development
Process available
in Winter ’18
Package
Development
Process available
in Spring ’18
Migrate Existing Metadata and
Prepare for Package Development
What is Unpackaged Metadata?
Production Org
Installed AppExchange
Apps
Unpackaged Metadata
Organizing Unpackaged Metadata
using Packages
Production Org
Unpackaged Metadata
Package
Package
Installed AppExchange
Apps
Organizing Unpackaged Metadata using Packages
Production Org
Unpackaged
Metadata
Salesforce DX
Packages
Installed AppExchange
Apps
Identifying Metadata that can migrate into a Package
Package Development
Identifying Metadata that can migrate into a Package
Package Development
 Metadata of an App built in-house
 Metadata that represent extensions of Sales Cloud, Service Cloud,…
 Metadata that represent extensions of an AppExchange App
 Newly created Metadata (Lightning Pages, Apex Classes,…)
Criteria for Identifying Metadata that can migrate into a Package
Package Development
 A group of related code and customizations
 Can be tested independently from other components in your org
 Able to be released independently
 Source components can only live in one project at a time
Things we’ve learned don’t work
Package Development Considerations
 Don’t export entire org as a single project
 Modularize
 Be careful with schema
 Put shared schema in its own project
 Watch for shared objects
 Add to a common project
Preparing for Developer Controlled Packages
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Scratch
Org
Scratch
Org
Scratch
Org
Module Development:
Changes are developed with
source push and pull.
Modules are released through
Metadata API Deploy.
Package Development:
Package Changes are
developed with source push
and pull. Package Changes
are released through new
Package Versions.
Version Control System (repo)
force:source:push
force:source:pull
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Version Control System (repo)force:source:convert
force:mdapi:retrieve
force:packageversion:create
force:package:install
Scratch
Org
force:source:push
force:source:pull
Scratch
Org
Scratch
Org
Scratch
Org
Scratch
Org
Managing Org Shape
Developing with Scratch Orgs using Org Shape
 Current Product Capability
 Org Shape is defined as the edition, features and preferences
 Currently enabled through Scratch Definition files
 Known Issues
 Difficult to specify features and preferences for non-partners
 All available features NOT available (as of Winter ’18)
Ensuring customers can easily setup development orgs
Developing with Scratch Orgs using Org Shape
 Product Roadmap
 Provide more features within Scratch Definition
 Org Shape Pilot enables creation of scratch orgs with the shape of your
production org
Ensuring customers can easily setup development orgs
Salesforce DX | Major Release Milestones
Winter ’18 Spring ’18 Summer ’18
Salesforce CLI GA GA +1 GA+2
Scratch Orgs
GA
Org “Shape” Pilot
GA
Org “Shape” Beta
GA
IDEs, Text Editors & Language
Services
GA GA +1 GA+2
Packaging
Developer Controlled
Packages (DCPs) Pilot
Developer Controlled
Packages (DCPs) Beta
GA
Q & A
Try Trailhead: trailhead.salesforce.com
Join the conversation: @salesforcedevs
Additional Slides
Salesforce DX Automation
Salesforce DX Gaps Understood
 Source Driven Development
 Winter ‘18 – Only supports a subset of Metadata API entities
 Spring ‘18 – Open Beta – Supports use of all Metadata API Entities
 Summer ’18 – GA – Supports use of all Metadata Entities
 Developer Controlled Packages
 Winter ‘18 – Pilot – Only supports a subset of Metadata API entities supported
by managed packages
 Spring ‘18 – Open Beta – Supports use of most Metadata API
Entities
 Summer ’18 – GA – Supports the use of all Metadata Entities
Goal: Get to Parity with Metadata API Functionality and Supported Entities
Metadata API Gaps
 Internal Program working to address API Gaps
 External Metadata Coverage Report (sneak peek)
 Prioritization of Gaps
Which type of Packaging is suitable for Google?
Package Type Suitable for Google? Why?
Managed Packages (aka
Packaging 1)
No Rigid manageability rules; more
suitable for ISV use cases
Unmanaged Packages No No support for package upgrades
Managed Second-Generation
Packages
No Rigid manageability rules; more
suitable for ISV use cases
Developer-Controlled Packages Yes Supports seamless changes,
version upgrades and modularity
Migration Recipe
 Install Salesforce CLI
 Enable Dev Hub in Production/Business Org or sign up for trial
 Scaffold a project workspace, add to VCS
 Update scratch org configuration for desired shape
 Retrieve and/or convert source from existing org or VCS repo
 Commit project workspace source to VCS
 Developers use source-driven development
 Continuous integration and delivery driven from source in repo
High level steps
Deploying Metadata
using Packages
Developing and Deploying an App using DX
and Packages
Scratch orgs for
development
CI Runs
UAT Sandboxes
Prod Orgs
Version Control
System
Local Workspace
with IDE
Package
Maintaining and Enhancing an App using Packages
Deploy new version
to Prod Org
CI Run
Source Control
System
1
2
3
4
Ver 1.0Ver 2.0Ver 3.0
Prod Org
Source Based Development Evolving with SFDX
Code
Develop + Unit Tests
Build
Integration + QA
Test
Staging + UAT
Release
Training + Deploy
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Scratch
Org
Scratch
Org
Scratch
Org
Org Based Development:
Org Diffs are developed and
released through Ant
Migration, Metadata API
Deploy and Retrieve
Package Development:
Package Changes are
developed with source push
and pull. Package Changes
are released through new
Package Versions.
Version Control System (repo)
force:source:push
force:source:pull
PRODFull
SBX
Partial
SBX
Dev
Pro
SBX
Dev
SBX
Dev
SBX
Dev
SBX
Version Control System (repo)
force:mdapi:deploy
force:mdapi:retrieve
force:packageversion:create
force:package:install
Scratch
Org
Why use Packaging?
Additional Slides
How do customers deploy Metadata to
Prod Orgs today?
Force.com
Migration Tool
Changesets Unmanaged
Packages
App Hub - UI for Salesforce DX

Más contenido relacionado

La actualidad más candente

DSC, SNU Orientation 2020
DSC, SNU Orientation 2020DSC, SNU Orientation 2020
DSC, SNU Orientation 2020prakharrathi25
 
DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...
DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...
DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...Mohamed Nizzad
 
Domain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesDomain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesRadosław Maziarka
 
Product Development Roadmap
Product Development RoadmapProduct Development Roadmap
Product Development RoadmapVariChars
 
DevOps & Cloud - The Essentials for Digital Transformation
DevOps & Cloud - The Essentials for Digital TransformationDevOps & Cloud - The Essentials for Digital Transformation
DevOps & Cloud - The Essentials for Digital TransformationCloudJourneee
 
Gap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsGap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsMarc Hornbeek
 
ABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyDerek E. Weeks
 
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...Simplilearn
 
DEVSECOPS: Coding DevSecOps journey
DEVSECOPS: Coding DevSecOps journeyDEVSECOPS: Coding DevSecOps journey
DEVSECOPS: Coding DevSecOps journeyJason Suttie
 
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...Daniel Oh
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...Simplilearn
 
DevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteiraDevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteiraDiego Gabriel Cardoso
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference ArchitecturesSonatype
 
Vmware Tanzu Kubernetes Connect(Spanish)
Vmware Tanzu Kubernetes Connect(Spanish)Vmware Tanzu Kubernetes Connect(Spanish)
Vmware Tanzu Kubernetes Connect(Spanish)GabrielaRodriguez182401
 
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Chandler Anderson
 

La actualidad más candente (20)

DSC, SNU Orientation 2020
DSC, SNU Orientation 2020DSC, SNU Orientation 2020
DSC, SNU Orientation 2020
 
DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...
DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...
DevSecops: Defined, tools, characteristics, tools, frameworks, benefits and c...
 
Domain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and MicroservicesDomain Driven Design - Strategic Patterns and Microservices
Domain Driven Design - Strategic Patterns and Microservices
 
Getting started with Salesforce DX
Getting started with Salesforce DXGetting started with Salesforce DX
Getting started with Salesforce DX
 
Product Development Roadmap
Product Development RoadmapProduct Development Roadmap
Product Development Roadmap
 
DevOps & Cloud - The Essentials for Digital Transformation
DevOps & Cloud - The Essentials for Digital TransformationDevOps & Cloud - The Essentials for Digital Transformation
DevOps & Cloud - The Essentials for Digital Transformation
 
Gap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsGap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOps
 
Benefits of DevSecOps
Benefits of DevSecOpsBenefits of DevSecOps
Benefits of DevSecOps
 
ABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyABN AMRO DevSecOps Journey
ABN AMRO DevSecOps Journey
 
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
What is DevOps? | DevOps Introduction | DevOps Tools | DevOps Tutorial For Be...
 
DEVSECOPS: Coding DevSecOps journey
DEVSECOPS: Coding DevSecOps journeyDEVSECOPS: Coding DevSecOps journey
DEVSECOPS: Coding DevSecOps journey
 
SFDX Presentation
SFDX PresentationSFDX Presentation
SFDX Presentation
 
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
Microservice 4.0 Journey - From Spring NetFlix OSS to Istio Service Mesh and ...
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
 
Salesforce Deck Template
Salesforce Deck TemplateSalesforce Deck Template
Salesforce Deck Template
 
DevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteiraDevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteira
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures
 
Vmware Tanzu Kubernetes Connect(Spanish)
Vmware Tanzu Kubernetes Connect(Spanish)Vmware Tanzu Kubernetes Connect(Spanish)
Vmware Tanzu Kubernetes Connect(Spanish)
 
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?
 

Similar a Simplify your code with Salesforce DX and module development

Modern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesModern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesSalesforce Developers
 
#Df17 Recap Series Build Apps Faster with the Salesforce Platform
#Df17 Recap Series Build Apps Faster with the Salesforce Platform #Df17 Recap Series Build Apps Faster with the Salesforce Platform
#Df17 Recap Series Build Apps Faster with the Salesforce Platform Salesforce Developers
 
TDX19 - Accelerate DevOps with GitLab and Salesforce
TDX19 - Accelerate DevOps with GitLab and SalesforceTDX19 - Accelerate DevOps with GitLab and Salesforce
TDX19 - Accelerate DevOps with GitLab and SalesforceDoug Ayers
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsSalesforce Developers
 
Salesforce DX Pilot Product Overview
Salesforce DX Pilot Product OverviewSalesforce DX Pilot Product Overview
Salesforce DX Pilot Product OverviewSalesforce Partners
 
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSalesforce Admins
 
Dreamforce 2017: Salesforce DX - an Admin's Perspective
Dreamforce 2017:  Salesforce DX - an Admin's PerspectiveDreamforce 2017:  Salesforce DX - an Admin's Perspective
Dreamforce 2017: Salesforce DX - an Admin's PerspectiveMike White
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureAlexander Sutherland
 
DevOps in Salesforce AppCloud
DevOps in Salesforce AppCloudDevOps in Salesforce AppCloud
DevOps in Salesforce AppCloudrsg00usa
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Sudipta Deb ☁
 
Salesforce DX 201 - Advanced Implementation for ISVs
Salesforce DX 201 - Advanced Implementation for ISVsSalesforce DX 201 - Advanced Implementation for ISVs
Salesforce DX 201 - Advanced Implementation for ISVsVivek Chawla
 
Building einstein analytics apps uk-compressed
Building einstein analytics apps   uk-compressedBuilding einstein analytics apps   uk-compressed
Building einstein analytics apps uk-compressedrikkehovgaard
 
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...Andrey Falko
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionSalesforce Developers
 
Salesforce DX for admins - Sydney world tour
Salesforce DX for admins - Sydney world tourSalesforce DX for admins - Sydney world tour
Salesforce DX for admins - Sydney world tourTechforce Services
 
Developer Preview Live – Release Readiness LIVE, Spring '18
Developer Preview Live – Release Readiness LIVE, Spring '18Developer Preview Live – Release Readiness LIVE, Spring '18
Developer Preview Live – Release Readiness LIVE, Spring '18Salesforce Developers
 
TDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer ToolsTDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer ToolsDoug Ayers
 

Similar a Simplify your code with Salesforce DX and module development (20)

Modern App Dev: Modular Development Strategies
Modern App Dev: Modular Development StrategiesModern App Dev: Modular Development Strategies
Modern App Dev: Modular Development Strategies
 
#Df17 Recap Series Build Apps Faster with the Salesforce Platform
#Df17 Recap Series Build Apps Faster with the Salesforce Platform #Df17 Recap Series Build Apps Faster with the Salesforce Platform
#Df17 Recap Series Build Apps Faster with the Salesforce Platform
 
TDX19 - Accelerate DevOps with GitLab and Salesforce
TDX19 - Accelerate DevOps with GitLab and SalesforceTDX19 - Accelerate DevOps with GitLab and Salesforce
TDX19 - Accelerate DevOps with GitLab and Salesforce
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer Highlights
 
Salesforce DX Pilot Product Overview
Salesforce DX Pilot Product OverviewSalesforce DX Pilot Product Overview
Salesforce DX Pilot Product Overview
 
Adopting Salesforce DX
Adopting Salesforce DXAdopting Salesforce DX
Adopting Salesforce DX
 
Get Started with Salesforce DX!
Get Started with Salesforce DX!Get Started with Salesforce DX!
Get Started with Salesforce DX!
 
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
 
Dreamforce 2017: Salesforce DX - an Admin's Perspective
Dreamforce 2017:  Salesforce DX - an Admin's PerspectiveDreamforce 2017:  Salesforce DX - an Admin's Perspective
Dreamforce 2017: Salesforce DX - an Admin's Perspective
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox Architecture
 
DevOps in Salesforce AppCloud
DevOps in Salesforce AppCloudDevOps in Salesforce AppCloud
DevOps in Salesforce AppCloud
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
 
Coding in the App Cloud
Coding in the App CloudCoding in the App Cloud
Coding in the App Cloud
 
Salesforce DX 201 - Advanced Implementation for ISVs
Salesforce DX 201 - Advanced Implementation for ISVsSalesforce DX 201 - Advanced Implementation for ISVs
Salesforce DX 201 - Advanced Implementation for ISVs
 
Building einstein analytics apps uk-compressed
Building einstein analytics apps   uk-compressedBuilding einstein analytics apps   uk-compressed
Building einstein analytics apps uk-compressed
 
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
Srecon18americas lightning talk: Auto-Cascading Security Updates Through Dock...
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
 
Salesforce DX for admins - Sydney world tour
Salesforce DX for admins - Sydney world tourSalesforce DX for admins - Sydney world tour
Salesforce DX for admins - Sydney world tour
 
Developer Preview Live – Release Readiness LIVE, Spring '18
Developer Preview Live – Release Readiness LIVE, Spring '18Developer Preview Live – Release Readiness LIVE, Spring '18
Developer Preview Live – Release Readiness LIVE, Spring '18
 
TDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer ToolsTDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer Tools
 

Más de Salesforce Developers

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSalesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceSalesforce Developers
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base ComponentsSalesforce Developers
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsSalesforce Developers
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaSalesforce Developers
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentSalesforce Developers
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsSalesforce Developers
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsSalesforce Developers
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and TestingSalesforce Developers
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilitySalesforce Developers
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce dataSalesforce Developers
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPSalesforce Developers
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceSalesforce Developers
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureSalesforce Developers
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectSalesforce Developers
 

Más de Salesforce Developers (20)

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component Performance
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX India
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local Development
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web Components
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web Components
 
Live coding with LWC
Live coding with LWCLive coding with LWC
Live coding with LWC
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura Interoperability
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce data
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCP
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in Salesforce
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data Capture
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS Connect
 
Introduction to MuleSoft
Introduction to MuleSoftIntroduction to MuleSoft
Introduction to MuleSoft
 
Dreamforce Developer Recap
Dreamforce Developer RecapDreamforce Developer Recap
Dreamforce Developer Recap
 
Vs Code for Salesforce Developers
Vs Code for Salesforce DevelopersVs Code for Salesforce Developers
Vs Code for Salesforce Developers
 

Último

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Último (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Simplify your code with Salesforce DX and module development

  • 1.
  • 2. Forward-Looking Statement Statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 3. Go Social! Salesforce Developers Salesforce Developers Salesforce Developers The video will be posted to YouTube & the webinar recap page (same URL as registration).This webinar is being recorded! @salesforcedevs / #SalesforceDX
  • 4. Salesforce DX Webinar Agenda  Salesforce Development Overview  Adopting the Salesforce Development Experience  Understanding Modular, Package Development  Preparing and Migrating to Modular Projects and Packages  Managing Org Shape
  • 5. Have Questions?  Don’t wait until the end to ask your question!  Technical support will answer questions starting now.  Respect Q&A etiquette  Please don’t repeat questions. The support team is working their way down the queue.  Stick around for live Q&A at the end  Speakers will tackle more questions at the end, time-allowing  Head to Developer Forums  More questions? Visit developer.salesforce.com/forums
  • 7. Development Processes before Salesforce DX Code Develop+ Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy Dev SBX PROD Full SBX Dev SBX Dev SBX Partial SBX Dev Pro SBX Dev Pro SBX Declarative Development: Code is promoted through Change Sets Source Based Development: Changes are tracked in a VCS. The Ant Tool is used to move source through development, test, and release Sandboxes. Version Control System (repo) Ant Tool Commands/Scripting Change Set Promotions Dev SBX Dev SBX
  • 8. Build with the Tools you love, within a Process you already understand Environments are easily created and disposable Metadata and code are modular Flexible packaging supports agile distribution model Everything is driven from source code Development is organized around team collaboration Development is based on open standards and extensibility Processes and tools facilitate continuous delivery
  • 9. Salesforce Development Experience Build together and deliver continuously Source-driven development Greater agility to test out features with confidence Team collaboration Increased dev productivity, faster time to market Continuous integration and delivery Higher quality code, more automation Open and prescriptive Build with the tools and processes you know and love; bring together Lightning, Force.com, and Heroku
  • 10. Improve the Developer Experience Across Application Lifecycle Management Plan Code BuildTest Release CLI for integration with 3rd party editors Scratch orgs for devs, built off of source Continuous Delivery/ build automation Continuous integration with test automation Sandboxes for performance testing, UAT, staging Packaging to streamline delivery to prod VCS as the source of truth IDEs, Text Editors, Language Services
  • 11. Source Based Development Evolving with SFDX Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy Org Based Development: Org Diffs are developed and released through Ant Migration, Metadata API Deploy and Retrieve PROD Full SBX Partial SBX Dev Pro SBX Dev SBX Dev SBX Dev SBX Version Control System (repo) force:mdapi:deploy force:mdapi:retrieve Module Development: Changes are developed with source push and pull. Modules are released through Metadata API Deploy. PRODFull SBX Partial SBX Dev Pro SBX Version Control System (repo)force:source:convert force:mdapi:retrieve force:source:push force:source:pull Scratch Org Scratch Org Scratch Org Scratch Org
  • 13. Adopting Salesforce DX  Salesforce DX CLI  Migrate your current Force.com development tasks (e.g. Metadata API Deploy, Apex Testing)  Continuous Integration and Delivery  Automate Tests and Releases through CLI commands, Sandboxes and/or Scratch orgs to produce higher quality code.  Modular Development with Projects, Scratch Orgs, and DCPs  Scratch orgs and source change tracking provide greater agility. to test out features with confidence Not just all-or-nothing
  • 14. Migrate Existing Tasks to the CLI All of your Developer needs in One Tool Example Tasks Benefit Features & Products ● Metadata API Deploy and Retrieve ● User Authentication ● Org Creation/Deletion ● All of your commands in one place ● More secure authentication ● Improved scripting and usability ● Salesforce DX CLI
  • 15. Automate Testing and Release Management Integrate with Continuous Integration and Delivery Tools Benefit Features & Products ● Improved product quality ● Increased agility, Faster time to market ● Better governance and stability ● Salesforce DX CLI ● Sandboxes + Scratch Orgs ● 3rd party VCS ● 3rd party CI/CD Tool
  • 17. Development Processes before Salesforce DX Code Develop+ Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy Dev SBX PROD Full SBX Dev SBX Dev SBX Partial SBX Dev Pro SBX Dev Pro SBX Declarative Development: Code is promoted through Change Sets Source Based Development: Changes are tracked in a VCS. The Ant Tool is used to move source through development, test, and release Sandboxes. Version Control System (repo) Ant Tool Commands/Scripting Change Set Promotions Dev SBX Dev SBX
  • 18. Source Based Development Evolving with SFDX Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy PROD Full SBX Partial SBX Dev Pro SBX Scratch Org Scratch Org Scratch Org Org Based Development: Org Diffs are developed and released through Ant Migration, Metadata API Deploy and Retrieve Package Development: Package Changes are developed with source push and pull. Package Changes are released through new Package Versions. Version Control System (repo) force:source:push force:source:pull PROD Full SBX Partial SBX Dev Pro SBX Dev SBX Dev SBX Dev SBX Version Control System (repo) force:mdapi:deploy force:mdapi:retrieve force:packageversion:create force:package:install Scratch Org
  • 19. What is Org-Based Development?  Change Management by tracking Org Diffs  Releases are designed around updating a specific Production Org  All Metadata stored in the Unpackaged Area of the Org
  • 20. Org Driven Development with Salesforce DX  Org Differences are Tracked Manually  Org Differences are Version Controlled Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy PROD Full SBX Partial SBX Dev Pro SBX Dev SBX Dev SBX Dev SBX Version Control System (repo) force:mdapi:deploy force:mdapi:retrieve  Release are scheduled around the Production Org  Release Artifacts are specific to a Production Org  All Phases of the Development Process are executed via Metadata API
  • 21. What is a Developer Controlled Package?  Container for transporting entire modules of metadata components to your org  Durable module that exists in your Org  Releases are designed around the installation or upgrade of a Package Version
  • 22. Package Development with Salesforce DX  Changes to the Packages are Automatically Tracked  Entire Package (all metadata) always version controlled  Dev, Test and CI executved via force:source commands Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy  Release schedule for each Package  Release Artifacts are new Package Version  CD and Release Mgmt executed via force:package commands force:source:push force:source:pull force:packageversion:create force:package:install PRODFull SBX Partial SBX Dev Pro SBX Scratch Org Scratch Org Scratch Org Version Control System (repo) Scratch Org
  • 23. Benefits of Developer Controlled Packages (DCPs) Easy to add/edit/remove components Source-driven Development Iterate using Versions Improved Audit / Change Management Dependency ManagementSimplified CI / CD Repeatable, Scriptable, Trackable Increased Developer Productivity and Release Management
  • 24. Preparing for Developer Controlled Packages Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy PRODFull SBX Partial SBX Dev Pro SBX Scratch Org Scratch Org Scratch Org Module Development: Changes are developed with source push and pull. Modules are released through Metadata API Deploy. Package Development: Package Changes are developed with source push and pull. Package Changes are released through new Package Versions. Version Control System (repo) force:source:push force:source:pull PRODFull SBX Partial SBX Dev Pro SBX Version Control System (repo)force:source:convert force:mdapi:retrieve force:packageversion:create force:package:install Scratch Org force:source:push force:source:pull Scratch Org Scratch Org Scratch Org Scratch Org Module Development Process available in Winter ’18 Package Development Process available in Spring ’18
  • 25. Migrate Existing Metadata and Prepare for Package Development
  • 26. What is Unpackaged Metadata? Production Org Installed AppExchange Apps Unpackaged Metadata
  • 27. Organizing Unpackaged Metadata using Packages Production Org Unpackaged Metadata Package Package Installed AppExchange Apps
  • 28. Organizing Unpackaged Metadata using Packages Production Org Unpackaged Metadata Salesforce DX Packages Installed AppExchange Apps
  • 29. Identifying Metadata that can migrate into a Package Package Development
  • 30. Identifying Metadata that can migrate into a Package Package Development  Metadata of an App built in-house  Metadata that represent extensions of Sales Cloud, Service Cloud,…  Metadata that represent extensions of an AppExchange App  Newly created Metadata (Lightning Pages, Apex Classes,…)
  • 31. Criteria for Identifying Metadata that can migrate into a Package Package Development  A group of related code and customizations  Can be tested independently from other components in your org  Able to be released independently  Source components can only live in one project at a time
  • 32. Things we’ve learned don’t work Package Development Considerations  Don’t export entire org as a single project  Modularize  Be careful with schema  Put shared schema in its own project  Watch for shared objects  Add to a common project
  • 33. Preparing for Developer Controlled Packages Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy PRODFull SBX Partial SBX Dev Pro SBX Scratch Org Scratch Org Scratch Org Module Development: Changes are developed with source push and pull. Modules are released through Metadata API Deploy. Package Development: Package Changes are developed with source push and pull. Package Changes are released through new Package Versions. Version Control System (repo) force:source:push force:source:pull PRODFull SBX Partial SBX Dev Pro SBX Version Control System (repo)force:source:convert force:mdapi:retrieve force:packageversion:create force:package:install Scratch Org force:source:push force:source:pull Scratch Org Scratch Org Scratch Org Scratch Org
  • 35. Developing with Scratch Orgs using Org Shape  Current Product Capability  Org Shape is defined as the edition, features and preferences  Currently enabled through Scratch Definition files  Known Issues  Difficult to specify features and preferences for non-partners  All available features NOT available (as of Winter ’18) Ensuring customers can easily setup development orgs
  • 36. Developing with Scratch Orgs using Org Shape  Product Roadmap  Provide more features within Scratch Definition  Org Shape Pilot enables creation of scratch orgs with the shape of your production org Ensuring customers can easily setup development orgs
  • 37. Salesforce DX | Major Release Milestones Winter ’18 Spring ’18 Summer ’18 Salesforce CLI GA GA +1 GA+2 Scratch Orgs GA Org “Shape” Pilot GA Org “Shape” Beta GA IDEs, Text Editors & Language Services GA GA +1 GA+2 Packaging Developer Controlled Packages (DCPs) Pilot Developer Controlled Packages (DCPs) Beta GA
  • 38.
  • 39. Q & A Try Trailhead: trailhead.salesforce.com Join the conversation: @salesforcedevs
  • 40.
  • 43. Salesforce DX Gaps Understood  Source Driven Development  Winter ‘18 – Only supports a subset of Metadata API entities  Spring ‘18 – Open Beta – Supports use of all Metadata API Entities  Summer ’18 – GA – Supports use of all Metadata Entities  Developer Controlled Packages  Winter ‘18 – Pilot – Only supports a subset of Metadata API entities supported by managed packages  Spring ‘18 – Open Beta – Supports use of most Metadata API Entities  Summer ’18 – GA – Supports the use of all Metadata Entities Goal: Get to Parity with Metadata API Functionality and Supported Entities
  • 44. Metadata API Gaps  Internal Program working to address API Gaps  External Metadata Coverage Report (sneak peek)  Prioritization of Gaps
  • 45. Which type of Packaging is suitable for Google? Package Type Suitable for Google? Why? Managed Packages (aka Packaging 1) No Rigid manageability rules; more suitable for ISV use cases Unmanaged Packages No No support for package upgrades Managed Second-Generation Packages No Rigid manageability rules; more suitable for ISV use cases Developer-Controlled Packages Yes Supports seamless changes, version upgrades and modularity
  • 46. Migration Recipe  Install Salesforce CLI  Enable Dev Hub in Production/Business Org or sign up for trial  Scaffold a project workspace, add to VCS  Update scratch org configuration for desired shape  Retrieve and/or convert source from existing org or VCS repo  Commit project workspace source to VCS  Developers use source-driven development  Continuous integration and delivery driven from source in repo High level steps
  • 47.
  • 49. Developing and Deploying an App using DX and Packages Scratch orgs for development CI Runs UAT Sandboxes Prod Orgs Version Control System Local Workspace with IDE Package
  • 50. Maintaining and Enhancing an App using Packages Deploy new version to Prod Org CI Run Source Control System 1 2 3 4 Ver 1.0Ver 2.0Ver 3.0 Prod Org
  • 51. Source Based Development Evolving with SFDX Code Develop + Unit Tests Build Integration + QA Test Staging + UAT Release Training + Deploy PRODFull SBX Partial SBX Dev Pro SBX Scratch Org Scratch Org Scratch Org Org Based Development: Org Diffs are developed and released through Ant Migration, Metadata API Deploy and Retrieve Package Development: Package Changes are developed with source push and pull. Package Changes are released through new Package Versions. Version Control System (repo) force:source:push force:source:pull PRODFull SBX Partial SBX Dev Pro SBX Dev SBX Dev SBX Dev SBX Version Control System (repo) force:mdapi:deploy force:mdapi:retrieve force:packageversion:create force:package:install Scratch Org
  • 54. How do customers deploy Metadata to Prod Orgs today? Force.com Migration Tool Changesets Unmanaged Packages
  • 55. App Hub - UI for Salesforce DX

Notas del editor

  1. With a focus on source-driven development, Salesforce DX makes it easier for developers to build together and deliver continuously using the tools that make them most productive. It starts starts with our core principles. Everything is driven from source code Environments are easily created and disposable Development is organized around team collaboration Metadata and code are modular Development is based on open standards and extensibility Processes and tools facilitate continuous delivery Flexible packaging supports agile distribution model
  2. With a focus on source-driven development, Salesforce DX makes it easier for developers to build together and deliver continuously using the tools that make them most productive. It starts starts with our core principles. Everything is driven from source code Environments are easily created and disposable Development is organized around team collaboration Metadata and code are modular Development is based on open standards and extensibility Processes and tools facilitate continuous delivery Flexible packaging supports agile distribution model
  3. With a focus on source-driven development, Salesforce DX makes it easier for developers to build together and deliver continuously using the tools that make them most productive. It starts starts with our core principles. Everything is driven from source code Environments are easily created and disposable Development is organized around team collaboration Metadata and code are modular Development is based on open standards and extensibility Processes and tools facilitate continuous delivery Flexible packaging supports agile distribution model