android is client java
DESCRIPTION
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