Download - Oscon presentation

Transcript

Can't we all just get along?

Android is client Java

Tablet devices, and mobile devices in

general, are revolutionizing IT

It is practical to treat Android's Java

runtime environment as separate from

Android

When we say“Android is client

Java”that is a more-general statement than, say,

“Objective-C is a mainstream language”

Client Java was...AWT

SwingSWT

JavaFXQt bindings

Etc.

Step1: “Write once, run everywhere”Step 2: Convince everyone this is a

good ideaStep 3: ?????

Step1: Make a really appropriate mobile managed language

runtimeStep 2: Watch ISVs write 200,000+ apps

I'm good enough, I'm

smart enough, and doggone it, people like

me!

The recipe for modern smartphone OSs:

Linux or other embedded UNIX-like OS

Managed language runtime

Full-featured browser

Examples:iOS

AndroidWindows Phone

Partial:Meego – more like Linux-goes-mobile

Bada – C++ app runtime and APIs

Android is client Java

Real multi-processing – multiple VM instancesLow memory overhead

per instanceFast launch

Share-able data heap – copy-on-write

Save/restore component and process state

Security benefits from true multi-processingProcess per app

UID per publisherEffective sandboxing of

multiple publishers

VM efficiency for mobile

Smaller bytecodeFaster bytecode

Mobile-tuned JIT compilerMuch less CPU/power-

intensive than previous JIT compilers

Compiles much less codeRelies on efficiency of non-

compiled code

Android is a really good, mature client

Java, and far ahead of other managed

language runtimes for mobile devices

So it is reasonable to want the Android application

runtion on another platform, but can you get it

without diluting the advantages with

virtualization, emulation, hypervizors, etc?

Why?

Here comes another guy prophesying the

end of the PC era

Source: Hitslink

Plummeting!

Why believe it this time?

The dominance of PCs in IT is artificialPCs were...

Personal – you own itA revolution

Empowering to individuals

Some people need PCs

Some people need this stove

So why did all the alternatives fail?

The economics of PC manufacturing crushed

all challengersTablets are “large

smartphones” - they inherit the economics of

smartphones

Tablets and touch make everything easier Cheaper

to supportTablets can support

legacy apps through desktop virtualization

Tablets are a great delivery vehicle for Web

apps

A new revolution in enterprise

collaboration and communication

To sum up

Java is a good languageAndroid Java is the best

managed language runtime for mobile

devices

Tablets are an IT revolutionTablets will become the

basis of a new collaborative work and

communications paradigmJava can be a big part of

this revolution

There will be lots of Android devices, but...You can treat Android

as a runtime separately from

Android OS, if you need or want to

Learn Android Java


Top Related