CF.Objective Notes -- Getting Started With Mobile Development

July 14, 2012

Getting Started With Mobile Development -- Jeff Tapper

Understanding the mobile landscape
Browser based
-Flash? (On some devices)
-HTML5

Native Apps
-HTML
-AIR
-Java
-Objective-C
-C#
etc

Design Challenges
Many devices, sizes, resolutions, form factors

There are times when a native app is the right choice
But if we CAN write something that will run in many places, that's generally better than something that only runs in 1 place

Several cross-platform solutions
AIR
HTML/JavaScript

People are making a LOT of money selling PlayBook apps because there are so FEW of them

Benefits of AIR
Compiled
Strongly typed
Consistent runtime
Native extensions

Downsides of AIR
Proprietary runtime
-- because of Adobe announcements on Flash/Mobile, some developers are gun-shy
slow startup
requires knowledge of AS3

Benefits of HTML
runs pretty much everywhere, starts up very quickly
if using something like PhoneGap, makes browser differences very easy to deal with

Downsides of HTML
No compile time checking
Slower debugging
Different performance on different platforms

Sencha makes a really nice UI, but there is a big performance gap between the platforms

Bridging the gap w/ PhoneGap

Easily compile an HTML/JS app into native apps on many platforms
Plug into IDE or use Phone Gap Build
Provides many hooks to native APIs (Accelerometer, GPS, Camera, etc)
Extensible w/ native code

Testing / Debugging
AIR and PhoneGap allow for direct testing/debugging on devices (android and playbook)
Adobe Shadow allows for desktop monitoring of devices
Chrome Canary allows for nice desktop simulation

having your cake and eating it too
attempts to compile strongly type languages into javascript
jangaroo
coffeescript
have - will compile out to 15 languages, but only "lowest common denominator" stuff
sharp kit compiles c#
etc
...for people that are used to compilers

What's the right solution?
it depends
one platform or many?
performance requirements
are native extensions necessary?
in house expertise?
project size
there is no 1 right answer

new book by Ray Camden and Andy Matthews

PhoneGap.com