Transcript
Page 1: iPhone & Java Web Services

iPhone Development and

Java Web Services 101

a Practical Tour And Demo

Matthew McCullough, Ambient Ideas, LLC

Page 2: iPhone & Java Web Services

Thanks for calling to upgrade your DSL

Page 3: iPhone & Java Web Services

What operating system do you use?

Page 4: iPhone & Java Web Services

Mac OS

Page 5: iPhone & Java Web Services

Is that before or after Vista?

Page 6: iPhone & Java Web Services

...umm

Page 7: iPhone & Java Web Services

I’d say, about 10 years after

Page 8: iPhone & Java Web Services

Ok, thanks for confirming that sir.

Page 9: iPhone & Java Web Services
Page 10: iPhone & Java Web Services

Whythe iPhone?

Page 11: iPhone & Java Web Services
Page 12: iPhone & Java Web Services
Page 13: iPhone & Java Web Services

Overtaken Blackberry

in sales

Page 14: iPhone & Java Web Services
Page 15: iPhone & Java Web Services

even Overtaken Moto RAZR in sales

Page 16: iPhone & Java Web Services

2,000,000 apps soldas of Oct 21, 2008

Page 17: iPhone & Java Web Services
Page 18: iPhone & Java Web Services

Why

Web Services?

Page 19: iPhone & Java Web Services

★Java

★.NET

★Ruby

★PHP

★Perl

★Python

★C

Web Service Languages

Page 20: iPhone & Java Web Services

Independent of platform

Consumed by any type of app

•Desktop

•RIA

•Headless

Page 21: iPhone & Java Web Services

Nearly EVERY app is becoming network aware

Page 22: iPhone & Java Web Services

iPhone Objective C

Java Web Services

SOAP/REST/HTTP

Page 23: iPhone & Java Web Services

Java Web Services

Page 24: iPhone & Java Web Services

JWS Tools•IntelliJ

•Native support

•Eclipse

•SOA Plugin

•NetBeans

•SOA Plugin

•Maven

•Axis Archetype

Page 25: iPhone & Java Web Services

RESTfulvs

SOAPful

Page 26: iPhone & Java Web Services

SOAP

Page 27: iPhone & Java Web Services

REST

http://localhost/drawing/

Page 28: iPhone & Java Web Services

Java Web Service Servers• JAX-WS

• Axis

• JAX-RS

• JSR311, Glassfish component “Jersey”

• Java 6

• Local HTTP server

• APT, or BARE needed for SOAP

Page 29: iPhone & Java Web Services

iPhone Objective C

Page 30: iPhone & Java Web Services

iPhone Dev ProcessFree Membership

• SDK

• SimulatorPaid Membership

• Provisioning

• Deploy to Dev Device

• Digitally Sign Apps

• App Store

Page 31: iPhone & Java Web Services

iPhone Dev Tools

• Dashcode = JavaScript

•Interface Builder, NIBs

•XCode

Page 32: iPhone & Java Web Services

Objective C

• No Garbage Collector• GC only on Mac OSX Desktop

• Manual Release of Memory

•C with Objects

Page 33: iPhone & Java Web Services
Page 34: iPhone & Java Web Services
Page 35: iPhone & Java Web Services

Objective C REST

•Minimal Parsing•Text Based (Primarily)

•Simple HTTP request

•Changing of request types

•@GET, @POST, @PUT

Page 36: iPhone & Java Web Services

iPhone REST Demo

Page 37: iPhone & Java Web Services

Objective C XML

• SOAP

• Heavy Wrappers, Headers, No Libs

• Help with XML Parsing

• NSXMLParser API

Page 38: iPhone & Java Web Services

iPhone SOAP Demo

Page 39: iPhone & Java Web Services

Otherdev Tools

Page 40: iPhone & Java Web Services

•SOAPui

•Apache TCPMon

•TCPDump

•Firefox Poster

•Netbeans WS/REST Tester

Page 41: iPhone & Java Web Services

• Java

• Native? Sun has promised

• Flash

• Native? Adobe has pledged

• JavaFX

• Does anyone care

• Let’s get it on the desktop first (Dec 2)

What’s next

Page 42: iPhone & Java Web Services

Takeaways•iPhone Dev is Challenging

• Application process painful

• Manual memory management

• Cryptic APIs

•Java Web Services are Easy

• Minimal Gotchas

• Rest vs SOAP decisions

Page 43: iPhone & Java Web Services

Q&A

Email questions to:[email protected]

Slides & Source Code at:www.AmbientIdeas.com/engineering/engineering-presentation.html


Top Related