SlideShare uma empresa Scribd logo
1 de 32
Building Enterprise Apps Rapidly
with Salesforce Mobile Packs
Pat Patterson, salesforce.com, Principal Developer Evangelist
@metadaddy
Raja Rao DV, salesforce.com, Developer Evangelist
@rajaraodv
Join the conversation: #forcewebinar
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 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
intellectual property and other litigation, 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-Q for the most recent fiscal quarter ended July 31, 2012. This
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.
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Pat Patterson
Principal Developer
Evangelist,
@metadaddy
Raja Rao DV
Developer Evangelist,
@rajaraodv
Speakers
Join the conversation: #forcewebinar
Follow Developer Force for the latest news
@forcedotcom / #forcewebinar
Developer Force group
Developer Force – Force.com Community
+Developer Force – Force.com Community
Developer Force
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Have questions?
 We have an expert support team at the ready to answer your
questions during the webinar.
 Ask your questions via the GoToWebinar Questions Pane.
 The speaker(s) will choose top questions to answer live at the
end of the webinar.
 Please post your questions as we go along!
 Only post your question once; we’ll get to it as we go down the
list.
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Agenda
 Mobile at Salesforce
• Core Apps
• Platform
• Marketplace
 Mobile Pack for AngularJS
• AngularJS in 15 Minutes
• Overview of the Mobile Pack
 Roundup
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Assumptions
This webinar assumes the following:
 Some minimal knowledge of the Force.com
platform
 Some minimal knowledge of JavaScript
But don’t worry, this is an introduction to Mobile
Packs and AngularJS – we won’t leave you behind!
Join the conversation: #forcewebinar
We’re living in the post-PC era
iPhone Revenue
Q1 FY12
$24.42 billion
TOTAL Microsoft Revenue
Q2 FY12
$20.89 billion
>
Join the conversation: #forcewebinar
Suite of downloadable apps for
accessing Salesforce data from
a mobile device
Mobile AppExchange for
discovering purpose-built apps
or vertical solutions by industry
Custom mobile apps
designed and built by you or
an ISV partner
Salesforce Has The Answer For Every Mobile Need
Join the conversation: #forcewebinar
Three Mobile Development Options
Join the conversation: #forcewebinar
Salesforce Mobile Packs
The Fastest Path From Idea to Connected Mobile App
Idea
Build App
with Modern
Frameworks
Connect
Customer &
Business Data
Connected
Mobile Apps
Join the conversation: #forcewebinar
Mobile Packs
Jumpstart web and hybrid mobile development
Focus on modern JavaScript frameworks
Simplify Salesforce data access
Deploy on the Force.com platform or elsewhere
(e.g. Heroku)
JavaScript based
Quick Starts and tutorials
Join the conversation: #forcewebinar
Current Mobile Packs
First of many mobile packs and samples
Open-source and community driven
Join the conversation: #forcewebinar
AngularJS
In 15mins
Join the conversation: #forcewebinar
AngularJS – In 15mins
 One of the most popular JavaScript frameworks.
 Provides “declarative” MVC framework
 Uses several advanced concepts like directives,
services, factories, modules, dependency injection etc. to
help quickly build (& test) production quality apps.
 Has vibrant community support and funded by Google.
Join the conversation: #forcewebinar
Directives
 Directives are simply strings on HTML that represent some function (behind-the-scene).
 They look like:
• <span my-dir="exp"></span> or <span data-my-dir="exp"></span> or <span my-dir></span>
• <span class="my-dir: exp;"></span>
• <my-dir></my-dir> //custom element!
• <!-- directive: my-dir exp --> //Even comments
 AngularJS calls and keeps track of directives and associated functions.
 AngularJS has tons of built-in directives like ng-model, ng-repeat, ng-click etc.
Example 1: Show Hello <name>! as & when the user types in a field.
Join the conversation: #forcewebinar
Directives
Example 2: Show “Hello <username>” as the user types it BUT only if there
is some text.
Join the conversation: #forcewebinar
MVC
Join the conversation: #forcewebinar
ng-controllers, $scope & $rootScope
sdfsdf
<div ng-controller=“topBarCtrl”>has its own $scope </div><div ng-controller=“topBarCtrl”>has its own $scope </div>
<div ng-
controller=
“LeftBarCtrl”>
// has its own
$scope
</div>
<div ng-
controller=
“LeftBarCtrl”>
// has its own
$scope
</div>
<div ng-controller=“MainCtrl”>
//has it’s own $scope
</div>
<div ng-controller=“MainCtrl”>
//has it’s own $scope
</div>
<html ng-app=“appName”> $rootScope • Use Controller to divide up your app
• Every Controller gets its own $scope.
• $scope is an empty object w/ AngularJS functions.
• $rootScope is a global object.
function toolbarCtrl($rootScope, $scope) {
$rootScope.loggedIn = true; //visible to all ctrls
$scope.somFunc = function() {};
$scope.contactsList = [{}, {}, {}];
}
function mainCtrl($rootScope, $scope) {
if($rootScope.loggedIn) { //use $rootScope
//do something
}
$scope.onItemClick = function() { … }
}
Module.controller(‘LeftBarCtr’, function() {});
A tablet app
Join the conversation: #forcewebinar
Single page app – ng-view
<div ng-view></div><div ng-view></div>
Contact Edit Page (edit.html)
<div ng-controller=“EditCtrl”></div>
Contacts DetailsView Page (view.html)
<div ng-controller=“ViewCtrl”></div>
Contacts List Page (list.html)
<div ng-controller=“ListCtrl”></div>
Main Page (index.html)
<script src=‘bla.js’></script>
<div ng-view> //Directive that allows switching different views
</div>
Join the conversation: #forcewebinar
$routeProvider & $location “services” to switch views
 Angular provides ‘#’ based routing via $routeProvider.
 Configure when some #path is hit, which controller to use and which view to inject.
 Use $location to actually change views inside a controller.
Join the conversation: #forcewebinar
Modules – Packaging it all up
 Modules provides namespace & help divide your app into different pieces.
var myModule = angular.module(‘myModule’, [‘dependentMod1’,
‘dependantMod2’]);
 You can create and attach custom “directives”, “controllers”, “services”, “factories” etc to a module.
myModule.directive(…) or myModule.controller(…) etc.
 In AngularJS, your app itself is a module.
var myApp = angular.module(‘myAppName’, [depMod1, depMod2]
 Note: App name should match ng-app in html!.
<html ng-app=“myAppName”>
</html>
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Best places to learn AngularJS..
 http://docs.angularjs.org/tutorial/index
• AngularJS Tutorial
 http://www.egghead.io/
• Excellent 44 short videos from @johnlindquist
 http://www.youtube.com/user/angularjs
• AngularJS Youtube Channel
Join the conversation: #forcewebinar
AngularJS
MobilePack
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Recap & Resources
 AngularJS provides “declarative” MVC via directives
• Less code = more quality, quicker development.
• Learn more:
• http://docs.angularjs.org/tutorial/index - AngularJS Tutorial
• http://www.egghead.io/ - 44 short videos from @johnlindquist
• http://www.youtube.com/user/angularjs AngularJS Youtube Channel
 Other tools mentioned in the webinar:
• http://gruntjs.com/ - Grunt: JavaScript Task Runner
• http://yeoman.io/ - Yeoman: Workflow for Modern Webapps
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Recap & Resources
 AngularJS Mobile Pack provides a template to
kickstart your development
• https://github.com/developerforce/MobilePack-AngularJS
Github
• http://www2.developerforce.com/mobile/services/mobile-packs
Quick Start
 Sign up for a FREE Developer Edition account
• http://developer.force.com/join
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Next Steps
 Get further acquainted with AngularJS
 Run through the Mobile Pack Quick Start(s)
 Build your own mobile app!
2013 Mobile Dev Challenge
May the best mobile app win
Create your killer app with our New Mobile Packs
$16,000 up for grabs!
http://bit.ly/mobiledevchallenge13
Upcoming Online Events
June 13:
CodeTalk with James Governor –
Developers are the new Kingmakers
http://bit.ly/kingcodetalk-mp
June 26:
Mobile SDK 2.0 Webinar
(details TBA)
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Survey
Your feedback is crucial to the success of our webinar programs.
Thank you!
http://bit.ly/mobilepacksurvey
*Look in the GoToWebinar chat
window now for a hyperlink.
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Q&A
Pat Patterson
Principal Developer
Evangelist,
@metadaddy
Raja Rao DV
Developer Evangelist,
@rajaraodv
Join the conversation: #forcewebinarJoin the conversation: #forcewebinar
Survey
Your feedback is crucial to the success of our webinar programs.
Thank you!
http://bit.ly/mobilepacksurvey
*Look in the GoToWebinar chat
window now for a hyperlink.

Mais conteúdo relacionado

Mais procurados

Apex for Admins: Beyond the Basics
Apex for Admins: Beyond the BasicsApex for Admins: Beyond the Basics
Apex for Admins: Beyond the Basics
Salesforce Developers
 
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Salesforce Developers
 

Mais procurados (20)

JavaScript Integration with Visualforce
JavaScript Integration with VisualforceJavaScript Integration with Visualforce
JavaScript Integration with Visualforce
 
Salesforce1 for Developers
Salesforce1 for DevelopersSalesforce1 for Developers
Salesforce1 for Developers
 
Intro to Apex - Salesforce Force Friday Webinar
Intro to Apex - Salesforce Force Friday Webinar Intro to Apex - Salesforce Force Friday Webinar
Intro to Apex - Salesforce Force Friday Webinar
 
Snap-in Service to Web and Mobile Apps
Snap-in Service to Web and Mobile AppsSnap-in Service to Web and Mobile Apps
Snap-in Service to Web and Mobile Apps
 
S1 and Visualforce Publisher Actions
S1 and Visualforce Publisher ActionsS1 and Visualforce Publisher Actions
S1 and Visualforce Publisher Actions
 
Visualforce in Salesforce1: Optimizing your User Interface for Mobile
Visualforce in Salesforce1: Optimizing your User Interface for MobileVisualforce in Salesforce1: Optimizing your User Interface for Mobile
Visualforce in Salesforce1: Optimizing your User Interface for Mobile
 
Chatter Publisher Actions and Salesforce1
Chatter Publisher Actions and Salesforce1Chatter Publisher Actions and Salesforce1
Chatter Publisher Actions and Salesforce1
 
Apex for Admins: Beyond the Basics
Apex for Admins: Beyond the BasicsApex for Admins: Beyond the Basics
Apex for Admins: Beyond the Basics
 
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
Apex for Admins: Get Started with Apex in 30 Minutes! (part 1)
 
Mastering Force.com: Advanced Visualforce
Mastering Force.com: Advanced VisualforceMastering Force.com: Advanced Visualforce
Mastering Force.com: Advanced Visualforce
 
Taking Flow to the Next Level with Just Enough Code
Taking Flow to the Next Level with Just Enough CodeTaking Flow to the Next Level with Just Enough Code
Taking Flow to the Next Level with Just Enough Code
 
Dreamforce 14 : Responsive Design with Visualforce and Twitter Bootstrap
Dreamforce 14 : Responsive Design with Visualforce and Twitter BootstrapDreamforce 14 : Responsive Design with Visualforce and Twitter Bootstrap
Dreamforce 14 : Responsive Design with Visualforce and Twitter Bootstrap
 
Build Smarter Apps with Einstein Platform Services
Build Smarter Apps with Einstein Platform ServicesBuild Smarter Apps with Einstein Platform Services
Build Smarter Apps with Einstein Platform Services
 
Create Engaging Apps with Visualforce and Bootstrap
Create Engaging Apps with Visualforce and BootstrapCreate Engaging Apps with Visualforce and Bootstrap
Create Engaging Apps with Visualforce and Bootstrap
 
Salesforce1 UX Overview for ISVs and Partners
Salesforce1 UX Overview for ISVs and PartnersSalesforce1 UX Overview for ISVs and Partners
Salesforce1 UX Overview for ISVs and Partners
 
Intro to Building Mobile Apps with Salesforce1: No Code Required Webinar
Intro to Building Mobile Apps with Salesforce1: No Code Required WebinarIntro to Building Mobile Apps with Salesforce1: No Code Required Webinar
Intro to Building Mobile Apps with Salesforce1: No Code Required Webinar
 
sf tools from community
sf tools from communitysf tools from community
sf tools from community
 
Secure Development on the Salesforce Platform - Part I
Secure Development on the Salesforce Platform - Part ISecure Development on the Salesforce Platform - Part I
Secure Development on the Salesforce Platform - Part I
 
Embed Customer Support into your Apps with Snap-ins
Embed Customer Support into your Apps with Snap-insEmbed Customer Support into your Apps with Snap-ins
Embed Customer Support into your Apps with Snap-ins
 
Build Better Communities with Lightning
Build Better Communities with LightningBuild Better Communities with Lightning
Build Better Communities with Lightning
 

Semelhante a Mobile pack developer webinar

Building JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 PlatformBuilding JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 Platform
Salesforce Developers
 
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps WebinarIntro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Salesforce Developers
 
Spring '14 Release Developer Preview Webinar
Spring '14 Release Developer Preview WebinarSpring '14 Release Developer Preview Webinar
Spring '14 Release Developer Preview Webinar
Salesforce Developers
 
Build Customer Centric Applications Using the Salesforce Toolkits for .NET
Build Customer Centric Applications Using the Salesforce Toolkits for .NETBuild Customer Centric Applications Using the Salesforce Toolkits for .NET
Build Customer Centric Applications Using the Salesforce Toolkits for .NET
Salesforce Developers
 
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Salesforce Developers
 

Semelhante a Mobile pack developer webinar (20)

Building JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 PlatformBuilding JavaScript Applications on the Salesforce1 Platform
Building JavaScript Applications on the Salesforce1 Platform
 
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps WebinarIntro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
Intro to Salesforce Mobile SDK: Building Hybrid Apps Webinar
 
Force.com Friday - Intro to Visualforce
Force.com Friday - Intro to VisualforceForce.com Friday - Intro to Visualforce
Force.com Friday - Intro to Visualforce
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDK
 
Force.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comForce.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.com
 
Salesforce API Series: Integrating Applications with Force.com Webinar
Salesforce API Series: Integrating Applications with Force.com WebinarSalesforce API Series: Integrating Applications with Force.com Webinar
Salesforce API Series: Integrating Applications with Force.com Webinar
 
AngularJS App In Two Weeks
AngularJS App In Two WeeksAngularJS App In Two Weeks
AngularJS App In Two Weeks
 
Dependency Injection with the Force DI Framework
Dependency Injection with the Force DI FrameworkDependency Injection with the Force DI Framework
Dependency Injection with the Force DI Framework
 
Spring '14 Release Developer Preview Webinar
Spring '14 Release Developer Preview WebinarSpring '14 Release Developer Preview Webinar
Spring '14 Release Developer Preview Webinar
 
Intro to the Salesforce Mobile SDK: Building Android Apps
Intro to the Salesforce Mobile SDK: Building Android AppsIntro to the Salesforce Mobile SDK: Building Android Apps
Intro to the Salesforce Mobile SDK: Building Android Apps
 
Java Best Practices - Tools, Performance, and Deployment
Java Best Practices - Tools, Performance, and DeploymentJava Best Practices - Tools, Performance, and Deployment
Java Best Practices - Tools, Performance, and Deployment
 
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
 
Build Customer Centric Applications Using the Salesforce Toolkits for .NET
Build Customer Centric Applications Using the Salesforce Toolkits for .NETBuild Customer Centric Applications Using the Salesforce Toolkits for .NET
Build Customer Centric Applications Using the Salesforce Toolkits for .NET
 
Build Customer Centric Applications Using the Salesforce Toolkits for .NET
Build Customer Centric Applications Using the Salesforce Toolkits for .NETBuild Customer Centric Applications Using the Salesforce Toolkits for .NET
Build Customer Centric Applications Using the Salesforce Toolkits for .NET
 
Coding Apps in the Cloud with Force.com - Part 2
Coding Apps in the Cloud with Force.com - Part 2Coding Apps in the Cloud with Force.com - Part 2
Coding Apps in the Cloud with Force.com - Part 2
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
 
Force.com Friday: Intro to Visualforce (May 8, 2015)
Force.com Friday: Intro to Visualforce (May 8, 2015)Force.com Friday: Intro to Visualforce (May 8, 2015)
Force.com Friday: Intro to Visualforce (May 8, 2015)
 
Force.com Friday: Intro to Force.com Slides
Force.com Friday: Intro to Force.com SlidesForce.com Friday: Intro to Force.com Slides
Force.com Friday: Intro to Force.com Slides
 
[MBF2] Plate-forme Salesforce par Peter Chittum
[MBF2] Plate-forme Salesforce par Peter Chittum[MBF2] Plate-forme Salesforce par Peter Chittum
[MBF2] Plate-forme Salesforce par Peter Chittum
 
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
Force.com Canvas: Salesforce1, SAML, & Apex...Oh My!
 

Último

Último (20)

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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
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
 

Mobile pack developer webinar

  • 1. Building Enterprise Apps Rapidly with Salesforce Mobile Packs Pat Patterson, salesforce.com, Principal Developer Evangelist @metadaddy Raja Rao DV, salesforce.com, Developer Evangelist @rajaraodv
  • 2. Join the conversation: #forcewebinar 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 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 intellectual property and other litigation, 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-Q for the most recent fiscal quarter ended July 31, 2012. This 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. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Pat Patterson Principal Developer Evangelist, @metadaddy Raja Rao DV Developer Evangelist, @rajaraodv Speakers
  • 4. Join the conversation: #forcewebinar Follow Developer Force for the latest news @forcedotcom / #forcewebinar Developer Force group Developer Force – Force.com Community +Developer Force – Force.com Community Developer Force
  • 5. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Have questions?  We have an expert support team at the ready to answer your questions during the webinar.  Ask your questions via the GoToWebinar Questions Pane.  The speaker(s) will choose top questions to answer live at the end of the webinar.  Please post your questions as we go along!  Only post your question once; we’ll get to it as we go down the list.
  • 6. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Agenda  Mobile at Salesforce • Core Apps • Platform • Marketplace  Mobile Pack for AngularJS • AngularJS in 15 Minutes • Overview of the Mobile Pack  Roundup
  • 7. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Assumptions This webinar assumes the following:  Some minimal knowledge of the Force.com platform  Some minimal knowledge of JavaScript But don’t worry, this is an introduction to Mobile Packs and AngularJS – we won’t leave you behind!
  • 8. Join the conversation: #forcewebinar We’re living in the post-PC era iPhone Revenue Q1 FY12 $24.42 billion TOTAL Microsoft Revenue Q2 FY12 $20.89 billion >
  • 9. Join the conversation: #forcewebinar Suite of downloadable apps for accessing Salesforce data from a mobile device Mobile AppExchange for discovering purpose-built apps or vertical solutions by industry Custom mobile apps designed and built by you or an ISV partner Salesforce Has The Answer For Every Mobile Need
  • 10. Join the conversation: #forcewebinar Three Mobile Development Options
  • 11. Join the conversation: #forcewebinar Salesforce Mobile Packs The Fastest Path From Idea to Connected Mobile App Idea Build App with Modern Frameworks Connect Customer & Business Data Connected Mobile Apps
  • 12. Join the conversation: #forcewebinar Mobile Packs Jumpstart web and hybrid mobile development Focus on modern JavaScript frameworks Simplify Salesforce data access Deploy on the Force.com platform or elsewhere (e.g. Heroku) JavaScript based Quick Starts and tutorials
  • 13. Join the conversation: #forcewebinar Current Mobile Packs First of many mobile packs and samples Open-source and community driven
  • 14. Join the conversation: #forcewebinar AngularJS In 15mins
  • 15. Join the conversation: #forcewebinar AngularJS – In 15mins  One of the most popular JavaScript frameworks.  Provides “declarative” MVC framework  Uses several advanced concepts like directives, services, factories, modules, dependency injection etc. to help quickly build (& test) production quality apps.  Has vibrant community support and funded by Google.
  • 16. Join the conversation: #forcewebinar Directives  Directives are simply strings on HTML that represent some function (behind-the-scene).  They look like: • <span my-dir="exp"></span> or <span data-my-dir="exp"></span> or <span my-dir></span> • <span class="my-dir: exp;"></span> • <my-dir></my-dir> //custom element! • <!-- directive: my-dir exp --> //Even comments  AngularJS calls and keeps track of directives and associated functions.  AngularJS has tons of built-in directives like ng-model, ng-repeat, ng-click etc. Example 1: Show Hello <name>! as & when the user types in a field.
  • 17. Join the conversation: #forcewebinar Directives Example 2: Show “Hello <username>” as the user types it BUT only if there is some text.
  • 18. Join the conversation: #forcewebinar MVC
  • 19. Join the conversation: #forcewebinar ng-controllers, $scope & $rootScope sdfsdf <div ng-controller=“topBarCtrl”>has its own $scope </div><div ng-controller=“topBarCtrl”>has its own $scope </div> <div ng- controller= “LeftBarCtrl”> // has its own $scope </div> <div ng- controller= “LeftBarCtrl”> // has its own $scope </div> <div ng-controller=“MainCtrl”> //has it’s own $scope </div> <div ng-controller=“MainCtrl”> //has it’s own $scope </div> <html ng-app=“appName”> $rootScope • Use Controller to divide up your app • Every Controller gets its own $scope. • $scope is an empty object w/ AngularJS functions. • $rootScope is a global object. function toolbarCtrl($rootScope, $scope) { $rootScope.loggedIn = true; //visible to all ctrls $scope.somFunc = function() {}; $scope.contactsList = [{}, {}, {}]; } function mainCtrl($rootScope, $scope) { if($rootScope.loggedIn) { //use $rootScope //do something } $scope.onItemClick = function() { … } } Module.controller(‘LeftBarCtr’, function() {}); A tablet app
  • 20. Join the conversation: #forcewebinar Single page app – ng-view <div ng-view></div><div ng-view></div> Contact Edit Page (edit.html) <div ng-controller=“EditCtrl”></div> Contacts DetailsView Page (view.html) <div ng-controller=“ViewCtrl”></div> Contacts List Page (list.html) <div ng-controller=“ListCtrl”></div> Main Page (index.html) <script src=‘bla.js’></script> <div ng-view> //Directive that allows switching different views </div>
  • 21. Join the conversation: #forcewebinar $routeProvider & $location “services” to switch views  Angular provides ‘#’ based routing via $routeProvider.  Configure when some #path is hit, which controller to use and which view to inject.  Use $location to actually change views inside a controller.
  • 22. Join the conversation: #forcewebinar Modules – Packaging it all up  Modules provides namespace & help divide your app into different pieces. var myModule = angular.module(‘myModule’, [‘dependentMod1’, ‘dependantMod2’]);  You can create and attach custom “directives”, “controllers”, “services”, “factories” etc to a module. myModule.directive(…) or myModule.controller(…) etc.  In AngularJS, your app itself is a module. var myApp = angular.module(‘myAppName’, [depMod1, depMod2]  Note: App name should match ng-app in html!. <html ng-app=“myAppName”> </html>
  • 23. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Best places to learn AngularJS..  http://docs.angularjs.org/tutorial/index • AngularJS Tutorial  http://www.egghead.io/ • Excellent 44 short videos from @johnlindquist  http://www.youtube.com/user/angularjs • AngularJS Youtube Channel
  • 24. Join the conversation: #forcewebinar AngularJS MobilePack
  • 25. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Recap & Resources  AngularJS provides “declarative” MVC via directives • Less code = more quality, quicker development. • Learn more: • http://docs.angularjs.org/tutorial/index - AngularJS Tutorial • http://www.egghead.io/ - 44 short videos from @johnlindquist • http://www.youtube.com/user/angularjs AngularJS Youtube Channel  Other tools mentioned in the webinar: • http://gruntjs.com/ - Grunt: JavaScript Task Runner • http://yeoman.io/ - Yeoman: Workflow for Modern Webapps
  • 26. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Recap & Resources  AngularJS Mobile Pack provides a template to kickstart your development • https://github.com/developerforce/MobilePack-AngularJS Github • http://www2.developerforce.com/mobile/services/mobile-packs Quick Start  Sign up for a FREE Developer Edition account • http://developer.force.com/join
  • 27. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Next Steps  Get further acquainted with AngularJS  Run through the Mobile Pack Quick Start(s)  Build your own mobile app!
  • 28. 2013 Mobile Dev Challenge May the best mobile app win Create your killer app with our New Mobile Packs $16,000 up for grabs! http://bit.ly/mobiledevchallenge13
  • 29. Upcoming Online Events June 13: CodeTalk with James Governor – Developers are the new Kingmakers http://bit.ly/kingcodetalk-mp June 26: Mobile SDK 2.0 Webinar (details TBA)
  • 30. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Survey Your feedback is crucial to the success of our webinar programs. Thank you! http://bit.ly/mobilepacksurvey *Look in the GoToWebinar chat window now for a hyperlink.
  • 31. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Q&A Pat Patterson Principal Developer Evangelist, @metadaddy Raja Rao DV Developer Evangelist, @rajaraodv
  • 32. Join the conversation: #forcewebinarJoin the conversation: #forcewebinar Survey Your feedback is crucial to the success of our webinar programs. Thank you! http://bit.ly/mobilepacksurvey *Look in the GoToWebinar chat window now for a hyperlink.

Notas do Editor

  1. Reported Jan 2012, same for later quarters.
  2. This post-pc era requires a new way of thinking. Mobility should be at the heart of your business strategy. Success in the Post-PC era is not about developing a single app or one tool, but bringing all the pieces together. No single approach will satisfy the mobile needs of every customer, which is why we offer multiple ways for you to maximize your productivity while on the go. ----------------------------------------------- MOBILE SOLUTIONS: • CORE APPLICATIONS – Touch.salesforce.com, Salesforce Mobile, and Chatter Mobile are great examples of applications. Native apps like Salesforce Mobile and Chatter Mobile are instantly responsive and they deliver a rich user experience. Hybrid or web-based apps like touch.salesforce.com offer native app-like qualities but are capable of running on a wide range of smartphones and tablets. These applications, including the hybrid version of Touch, can be used in an offline mode. • MARKETPLACE – Ever since the launch of the AppExchange, salesforce.com has proven its commitment to developing a partner-driven app marketplace and mobile is no exception. The Mobile AppExchange contains both partner-built and Salesforce-built apps all designed to give our customers a richer, more productive experience. It ’s a democratic way for end users to custom-tailor their mobile Salesforce experience by choosing apps that closely match the way they work, by industry or by function. • PLATFORM – Sometimes, you have no option but to build a completely customized app. With the Force.com mobile platform, you can build custom, non-Salesforce-branded apps on virtually any device platform using SDK ’s and other tools that Salesforce provides.
  3. That ’s where the Salesforce Platform comes in and offers the best of both worlds. It ’s the fastest path from idea to mobile app. We remove all the traditional steps of building apps on legacy platforms. And give modern web developers all the latest mobile frameworks they know and love. And they can easily connect it to customer data – making the app more engaging and more useful long term to both the user and the company. Finally – apps built on the Salesforce Platform are powered by the safest, most secure and trusted enterprise platform in the market. Offering scale, security, governance, and performance visibility. The same platform over 100K businesses trust with their most prized possession – their customer and business data.