Salesforce Platform APIs
14 March, 2015
Guillaume Roques
Director Developer Relations EMEA
@groques
Peter Chittum
Developer Evangelist
@pchittum
Safe Harbor
Safe harbor 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 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, 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, risks associated with 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 quarter ended July 31, 2011. This document and
others 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 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.
Agenda
 Salesforce Overview
 Salesforce1 Platform
 API Demo
 Q & A
https://developer.salesforce.com/
Salesforce Overview
https://developer.salesforce.com/
Traditional app development is slow
Custom
development
Connect to
Data Sources
Code Business
Processes
Build
App
user iteration
user iteration
Developers can not keep up with Business needs
Salesforce1 Lightning: The Fastest Way To Build Apps
New release of the Salesforce1 Platform
Salesforce is a Platform Company.
Period. -Alex Williams, TechCrunch
1BAPI Calls Per
Day6BLines of Apex
4M+Apps Built on
the Platform
72BRecords Stored
Salesforce1 Platform
Salesforce1 Platform is the Fastest Path from Idea to App
Idea
Build App
Idea
buy &
setup
hardware
install
complex
software
define user
access
build & test
security
make it
mobile &
social
setup
reporting &
analytics
build
app
Traditional Platforms
6-12 Months?
App
App
Salesforce1 Platform
https://developer.salesforce.com/
https://developer.salesforce.com/
Employee
Apps
Customer
Apps
Apps
Build Apps Fast. Build Business Faster.
Platform Services
Core
Services
Chatter
Multi-
language
Translation
Workbench
Email
Service
s
Analytics
Cloud
Database
Scheema
Builder
Search
Visualforce
MonitoringMulti-tenant
Apex
Data-level
Security
Workflows
APIs
Mobile
Services
Social
APIs
Analytics
APIs
Bulk
APIs
Rest
APIs
Metadata
APIs
Soap
APIs
Private App
Exchange
Custom
Actions
Identity
Mobile
Notifications
Tooling
APIs
Mobile
Packs
Mobile
SDK
Offline
Support
Streaming
APIs
Geolocation
ET 1:1 ET Fuel
Heroku1
Heroku
Add-Ons
Sharing
Model
ET API
Multi Tenant Architecture
https://developer.salesforce.com/
A Cloud Database is The Core of Our Platform
• WSIWSG data modeling tool
• Auto generated CRUD UI
• Rich Data Types
• Built-in full text search
• Full Internationalization support
• Built in audit and tracking
https://developer.salesforce.com/
Use Standard or Custom Data Model
Car
Account (Banking)
Mobile Device
Expenses
Time Off
Schedule
Project
Job Application
Job Candidate
Account (Business)
Contact
User*
Lead
Opportunity
Case
Order
Product
Task
Event (Calendar)
Attachment
Standard Business Entities Common Custom Entities
https://developer.salesforce.com/
Two Approaches to Development
Visualforce Pages
Visualforce Components
Apex Controllers
Apex Triggers
Metadata API
REST API
Bulk API
Formula Fields
Validation Rules
Workflows and Approvals
Custom Objects
Custom Fields
Relationships
Page Layouts
Record Types
User
Interface
Business
Logic
Data
Model
Declarative Approach Programmatic Approach
https://developer.salesforce.com/
• Creating an object, instantly provisions an API endpoint
• Create your Own API endpoints with Apex
Everything you create is API Enabled
Your App
GET
POST
PATCH
DELETE
OAuth 2.0
HTTPS
Strong, built-in, configurable security model
• Fine grained access controls
• Field and Row level data security
• Rich set of SSO options
• All APIs respect the security controls
• Salesforce Identity
https://developer.salesforce.com/
Rich set of point-and-click tools to build business
apps
• Page Layouts
• Formula Fields
• Validation Rules
• Workflow Engine
• Approvals
https://developer.salesforce.com/
Programmatic tools for developers - Apex
• Object-Oriented Language
(similar to C# or Java)
• Cloud based compiling &
debugging
• Built-in code testing framework
• Strong binding with DB
public with sharing class myControllerExtension implements Util {
private final Account acct;
public Contact newContact {get; set;}
public myControllerExtension(ApexPages.StandardController stdController) {
this.acct = (Account)stdController.getRecord();
}
public PageReference associateNewContact(Id cid) {
newContact = [SELECT Id, Account from Contact WHERE Id =: cid LIMIT 1];
newContact.Account = acct;
update newContact;
}
}
Class and Interface based Scoped Variables Inline SOQL Inline DML
https://developer.salesforce.com/
Programmatic tools for developers - Visualforce
• Component-based HTML5
framework
• Customize the Salesforce
UI/UX
• Combine with any HTML,
JavaScript or CSS library
Class and Interface based Scoped Variables Inline SOQL Inline DML
<apex:page StandardController="Contact"
extensions="duplicateUtility"
action="{!checkPhone}">
<apex:form>
<apex:outputField var="{!Contact.FirstName}” />
<apex:outputField var="{!Contact.LastName}" />
<apex:inputField var="{!Contact.Phone}" />
<apex:commandButton value="Update" action="{!quicksave}" />
</apex:form>
</apex:page>
https://developer.salesforce.com/
Analytics: Reports & Dashboards Provide Real-Time
Visibility
• Reports are easily built by Analysts
and Business Users
• Dashboards provide a birds eye view
of your key business metrics
• All Reports are API enabled
(Analytics API)
https://developer.salesforce.com/
API Demo
Salesforce1 Platform Mobile Services
Mobile PacksCustomer Data
Push
Notifications
Geolocation Analytics API
Trust
Social: Chatter
Mobile Device
Management
REST API
Mobile SDKs
Business Logic
Offline Storage
Salesforce
Identity
Build Engaging, Connected
Enterprise Mobile Apps
https://developer.salesforce.com/
When building consumer or
customer-facing apps
To leverage “open source”
developer skills and
frameworks
To easily integrate apps
with Salesforce system of
record
When To User Heroku
Ruby
Java
node
PHP
Python
Scala
https://developer.salesforce.com/
Heroku Connect
Implementing Synchronization with Heroku Connect
Heroku
Connect
Postgres
orgA
orgB
orgC
db trigger
App
reads
writes
Force.com
orgA
orgB
orgC
Heroku Connect
Next Steps
Salesforce Tools
 Workbench
workbench.developerforce.com
 IDE
Force.com IDE
MavensMate for Sublime Text
 Command Line
force-cli.heroku.com
Salesforce Learning Resources
 Trailhead
developer.salesforce.com/trailhead
 Workbooks
developer.salesforce.com/workbooks
 Salesforce University
In Salesforce environment: Help>Take Training
Salesforce Developer Community
 Developer Forums
developer.salesforce.com/forums
 Salesforce StackExchange
salesforce.stackexchange.com
 Twitter
#askforce or @SalesforceDevs
 Salesforce IRC Channel
Freenode: #salesforce
Salesforce Mobile Banking Factory Webinars
 25 mars, 2015 13h00
 9 avril, 2015 18h00
 Le lien pour s’inscrire sera disponible bientôt…
Thank You

[MBF2] Plate-forme Salesforce par Peter Chittum

  • 1.
  • 2.
    Guillaume Roques Director DeveloperRelations EMEA @groques Peter Chittum Developer Evangelist @pchittum
  • 3.
    Safe Harbor Safe harborstatement 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 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, 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, risks associated with 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 quarter ended July 31, 2011. This document and others 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 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.
  • 4.
    Agenda  Salesforce Overview Salesforce1 Platform  API Demo  Q & A https://developer.salesforce.com/
  • 5.
  • 6.
    Traditional app developmentis slow Custom development Connect to Data Sources Code Business Processes Build App user iteration user iteration Developers can not keep up with Business needs
  • 7.
    Salesforce1 Lightning: TheFastest Way To Build Apps New release of the Salesforce1 Platform
  • 8.
    Salesforce is aPlatform Company. Period. -Alex Williams, TechCrunch 1BAPI Calls Per Day6BLines of Apex 4M+Apps Built on the Platform 72BRecords Stored Salesforce1 Platform
  • 9.
    Salesforce1 Platform isthe Fastest Path from Idea to App Idea Build App Idea buy & setup hardware install complex software define user access build & test security make it mobile & social setup reporting & analytics build app Traditional Platforms 6-12 Months? App App
  • 10.
  • 11.
  • 12.
  • 13.
    A Cloud Databaseis The Core of Our Platform • WSIWSG data modeling tool • Auto generated CRUD UI • Rich Data Types • Built-in full text search • Full Internationalization support • Built in audit and tracking https://developer.salesforce.com/
  • 14.
    Use Standard orCustom Data Model Car Account (Banking) Mobile Device Expenses Time Off Schedule Project Job Application Job Candidate Account (Business) Contact User* Lead Opportunity Case Order Product Task Event (Calendar) Attachment Standard Business Entities Common Custom Entities https://developer.salesforce.com/
  • 15.
    Two Approaches toDevelopment Visualforce Pages Visualforce Components Apex Controllers Apex Triggers Metadata API REST API Bulk API Formula Fields Validation Rules Workflows and Approvals Custom Objects Custom Fields Relationships Page Layouts Record Types User Interface Business Logic Data Model Declarative Approach Programmatic Approach https://developer.salesforce.com/
  • 16.
    • Creating anobject, instantly provisions an API endpoint • Create your Own API endpoints with Apex Everything you create is API Enabled Your App GET POST PATCH DELETE OAuth 2.0 HTTPS
  • 17.
    Strong, built-in, configurablesecurity model • Fine grained access controls • Field and Row level data security • Rich set of SSO options • All APIs respect the security controls • Salesforce Identity https://developer.salesforce.com/
  • 18.
    Rich set ofpoint-and-click tools to build business apps • Page Layouts • Formula Fields • Validation Rules • Workflow Engine • Approvals https://developer.salesforce.com/
  • 19.
    Programmatic tools fordevelopers - Apex • Object-Oriented Language (similar to C# or Java) • Cloud based compiling & debugging • Built-in code testing framework • Strong binding with DB public with sharing class myControllerExtension implements Util { private final Account acct; public Contact newContact {get; set;} public myControllerExtension(ApexPages.StandardController stdController) { this.acct = (Account)stdController.getRecord(); } public PageReference associateNewContact(Id cid) { newContact = [SELECT Id, Account from Contact WHERE Id =: cid LIMIT 1]; newContact.Account = acct; update newContact; } } Class and Interface based Scoped Variables Inline SOQL Inline DML https://developer.salesforce.com/
  • 20.
    Programmatic tools fordevelopers - Visualforce • Component-based HTML5 framework • Customize the Salesforce UI/UX • Combine with any HTML, JavaScript or CSS library Class and Interface based Scoped Variables Inline SOQL Inline DML <apex:page StandardController="Contact" extensions="duplicateUtility" action="{!checkPhone}"> <apex:form> <apex:outputField var="{!Contact.FirstName}” /> <apex:outputField var="{!Contact.LastName}" /> <apex:inputField var="{!Contact.Phone}" /> <apex:commandButton value="Update" action="{!quicksave}" /> </apex:form> </apex:page> https://developer.salesforce.com/
  • 21.
    Analytics: Reports &Dashboards Provide Real-Time Visibility • Reports are easily built by Analysts and Business Users • Dashboards provide a birds eye view of your key business metrics • All Reports are API enabled (Analytics API) https://developer.salesforce.com/
  • 22.
  • 23.
    Salesforce1 Platform MobileServices Mobile PacksCustomer Data Push Notifications Geolocation Analytics API Trust Social: Chatter Mobile Device Management REST API Mobile SDKs Business Logic Offline Storage Salesforce Identity Build Engaging, Connected Enterprise Mobile Apps
  • 24.
    https://developer.salesforce.com/ When building consumeror customer-facing apps To leverage “open source” developer skills and frameworks To easily integrate apps with Salesforce system of record When To User Heroku Ruby Java node PHP Python Scala
  • 25.
    https://developer.salesforce.com/ Heroku Connect Implementing Synchronizationwith Heroku Connect Heroku Connect Postgres orgA orgB orgC db trigger App reads writes Force.com orgA orgB orgC Heroku Connect
  • 26.
  • 27.
    Salesforce Tools  Workbench workbench.developerforce.com IDE Force.com IDE MavensMate for Sublime Text  Command Line force-cli.heroku.com
  • 28.
    Salesforce Learning Resources Trailhead developer.salesforce.com/trailhead  Workbooks developer.salesforce.com/workbooks  Salesforce University In Salesforce environment: Help>Take Training
  • 29.
    Salesforce Developer Community Developer Forums developer.salesforce.com/forums  Salesforce StackExchange salesforce.stackexchange.com  Twitter #askforce or @SalesforceDevs  Salesforce IRC Channel Freenode: #salesforce
  • 30.
    Salesforce Mobile BankingFactory Webinars  25 mars, 2015 13h00  9 avril, 2015 18h00  Le lien pour s’inscrire sera disponible bientôt…
  • 31.