63
Build your first Native iOS app with an API Backend! twitter:@mdobs @timburks Tuesday, September 3, 13

Matt training-obj-v2

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Matt training-obj-v2

Build your first Native iOS app with an API

Backend!twitter:@mdobs

@timburks

Tuesday, September 3, 13

Page 2: Matt training-obj-v2

Matt [email protected]@apigee.comTim Burks@timburks

Tuesday, September 3, 13

Page 3: Matt training-obj-v2

Do you have XCode installed?

Tuesday, September 3, 13

Page 4: Matt training-obj-v2

I work @ Apigee.

Tuesday, September 3, 13

Page 5: Matt training-obj-v2

We help power eBayBest Buy, Walgreens, Gilt Groupe, NewEgg, Cars.com, Dell, Getty Images, GraceNote, Shazam, HomeAway, Pearson, cheezburger

Tuesday, September 3, 13

Page 6: Matt training-obj-v2

Why do we do this?Why free?

Tuesday, September 3, 13

Page 7: Matt training-obj-v2

Apigee is always free for developersFree Hosted Accounts25GB storage limit,10M push notifs/mono API/bandwidth limitCommercial use OKFree OSS versiongit.io/usergrid

Tuesday, September 3, 13

Page 8: Matt training-obj-v2

1.Objective - C2.UI3.API Backend4.Q&A

Tuesday, September 3, 13

Page 9: Matt training-obj-v2

Meetup tonight @ DUMBO Kitchen

Tuesday, September 3, 13

Page 10: Matt training-obj-v2

Have you developed for iOS before? What do you want to learn today?

Tuesday, September 3, 13

Page 11: Matt training-obj-v2

Building Apps!

Tuesday, September 3, 13

Page 12: Matt training-obj-v2

What makes native so great?

Tuesday, September 3, 13

Page 13: Matt training-obj-v2

What about PhoneGap?

Tuesday, September 3, 13

Page 14: Matt training-obj-v2

XCode + Objective-C

Tuesday, September 3, 13

Page 15: Matt training-obj-v2

XCode

Tuesday, September 3, 13

Page 16: Matt training-obj-v2

Primary tool of app dev

Tuesday, September 3, 13

Page 17: Matt training-obj-v2

Let’s open XCode

Tuesday, September 3, 13

Page 18: Matt training-obj-v2

Tuesday, September 3, 13

Page 19: Matt training-obj-v2

Demo

Tuesday, September 3, 13

Page 20: Matt training-obj-v2

Objective-C

Tuesday, September 3, 13

Page 21: Matt training-obj-v2

What is Objective-C?

Tuesday, September 3, 13

Page 22: Matt training-obj-v2

Created at NeXT in the early 1980s

Tuesday, September 3, 13

Page 23: Matt training-obj-v2

Object Oriented CompiledSuperset of C

Tuesday, September 3, 13

Page 24: Matt training-obj-v2

Let’s get started with Objective-C

Tuesday, September 3, 13

Page 25: Matt training-obj-v2

What is a class?

Tuesday, September 3, 13

Page 26: Matt training-obj-v2

Tuesday, September 3, 13

Page 27: Matt training-obj-v2

Tuesday, September 3, 13

Page 28: Matt training-obj-v2

Open XCode and Create a project

Tuesday, September 3, 13

Page 29: Matt training-obj-v2

Demo

Tuesday, September 3, 13

Page 30: Matt training-obj-v2

Working with UI

Tuesday, September 3, 13

Page 31: Matt training-obj-v2

UI tools for iOS?

Tuesday, September 3, 13

Page 32: Matt training-obj-v2

Code

Tuesday, September 3, 13

Page 33: Matt training-obj-v2

NIBs

Tuesday, September 3, 13

Page 34: Matt training-obj-v2

StoryBoards

Tuesday, September 3, 13

Page 35: Matt training-obj-v2

Interface Builder

Tuesday, September 3, 13

Page 36: Matt training-obj-v2

Let’s open XCode and use IB

Tuesday, September 3, 13

Page 37: Matt training-obj-v2

Demo

Tuesday, September 3, 13

Page 38: Matt training-obj-v2

Build with a Backend.

Tuesday, September 3, 13

Page 39: Matt training-obj-v2

Why use a Backend?

Tuesday, September 3, 13

Page 40: Matt training-obj-v2

It’s remote data storage you can access in your code.

Tuesday, September 3, 13

Page 41: Matt training-obj-v2

It’s like iCloud or Dropbox, because it lets you sync data across devices.

Tuesday, September 3, 13

Page 42: Matt training-obj-v2

ServerInfrastructure

AppCode SDK API

Tuesday, September 3, 13

Page 43: Matt training-obj-v2

UserGrid? Apigee?

Tuesday, September 3, 13

Page 44: Matt training-obj-v2

Let’s take a look at Apigee

j.mp/apigee-sign-up

Tuesday, September 3, 13

Page 45: Matt training-obj-v2

Template Projectj.mp/tmp-app

Completed Projectj.mp/full-app

Tuesday, September 3, 13

Page 46: Matt training-obj-v2

Add some data

Tuesday, September 3, 13

Page 47: Matt training-obj-v2

SDKs available for…

JS, node.js, iOS, Android, Ruby, Rails,C#, Java, WP8, etc.

Tuesday, September 3, 13

Page 48: Matt training-obj-v2

Getting data

Tuesday, September 3, 13

Page 49: Matt training-obj-v2

Answer:

j.mp/all-books

and

j.mp/book-titleTuesday, September 3, 13

Page 50: Matt training-obj-v2

Storing Data

Tuesday, September 3, 13

Page 51: Matt training-obj-v2

Answer:

j.mp/creating-book

Tuesday, September 3, 13

Page 52: Matt training-obj-v2

Deleting Data

Tuesday, September 3, 13

Page 53: Matt training-obj-v2

Answer:

j.mp/delete-book

Tuesday, September 3, 13

Page 54: Matt training-obj-v2

Congrats!

Tuesday, September 3, 13

Page 55: Matt training-obj-v2

What else can be done?

Tuesday, September 3, 13

Page 56: Matt training-obj-v2

Push NotificationsGeolocationUser ManagementFile StoragePicture SharingSocial NetworkingSecurity

Tuesday, September 3, 13

Page 57: Matt training-obj-v2

Build your own...

Tuesday, September 3, 13

Page 58: Matt training-obj-v2

iCloudRetail StoreSocial Networks

Tuesday, September 3, 13

Page 59: Matt training-obj-v2

Scale to Millions

Tuesday, September 3, 13

Page 60: Matt training-obj-v2

Advanced Class? Training for your company? Questions?

[email protected]

Tuesday, September 3, 13

Page 61: Matt training-obj-v2

Ask for help!Announce projects!

j.mp/app-craft

Sign up now :)

Tuesday, September 3, 13

Page 62: Matt training-obj-v2

Thanks!

We’d love feedback on how to make it better. Let us know!

Tuesday, September 3, 13