Net CF - Iowa State University

hungryhorsecabinSoftware and s/w Development

Dec 14, 2013 (3 years and 8 months ago)

85 views

Development Platforms

for Mobile Applications


Damianos

Gavalas

and Daphne
Economou
, University of the Aegean


IEEE Software

January/February 2011

Application Development:



What is it’s Portability?


What is it’s Functionality?


What is it’s Development Speed?


What is it’s Performance?


Java ME



.NET CF



Flash Lite



Android


How do platforms compare?

“Devices Vary along so many axes

that it’s almost impossible

to write a single version of

a mobile application.”

Issue #1: Implementation

Java ME
: 1,000 lines of code, 400 line of code to modify to
port the desktop application, application size of 29 Kbytes


.Net

CF
: 800 lines of code, 150 line of code to modify to
port the desktop application, application size of 63 Kbytes


Flash Lite
: 600 lines of code, 50 line of code to modify to
port the desktop application, application size of 12.6
Kbytes



Andriod
: 900 lines of code, 200 line of code to modify to
port the desktop application, application

size of 23 Kbytes

Issue #2: Developers

Java ME
: Java Development language, learning curve is
moderate(includes APIs that aren’t part of the Java SE platform),
extensive developer community and support


.Net

CF
: C#, VB.NET Development language, learning curve is
average (APIs overlaps), MSDN developer community and support


Flash Lite
:
ActionScript

1.0,2.0 Development language, learning
curve is steep(reuse of the same
ActionScript

code), extensive
developer community and support



Andriod
: Java Development language, learning curve

is average(APIs overlap), resent and growing

developer community and support



Issue #3: Functionality

Java ME
: Varies by
h
andset, depending on available JSRs;
no high
-
resolution pictures, no cell ID, limited file access


.Net

CF
: Limited audio support


Flash Lite
: No support for accessing native components



Andriod
: Touch screen, accelerometer, GPS, cell ID,
interapplication

communication


Issue #4: Software Architecture

Java ME
: RMS and
Perst

Lite from
mObject

storage and database
support, automatic memory management provided by the traditional
garbage collector


.Net

CF
: Local database support for SQL Serve Mobile Edition,
Automatic memory management provided by Common Language
Runtime


Flash Lite
: Persistent storage through shared objects and support for
interaction with PHP scripts and use of MySQL database, garbage
collection executed automatically every minute or whenever an
application’s memory use increases by 20 percent or more



Andriod
: Android APIs contain support for SQLite database,

automatic memory management handled by
Dalvik’s


garbage collector


Issue #5: Device Support

Java ME
: All devices support Connected Limited Device
Configuration (CLDC), Mobile Information Dance Profile


.Net

CF
: Pocket PC 2000, Pocket PC 2002, Windows Mobile
2003
-
based Pocket PC’s and smartphones embedded
systems running Windows CE .NET 4.1 and later


Flash Lite
: Mobile phones and PDA from major
manufacturers such as Fujitsu, Hitachi, LG, Mitsubishi,
Motorola, Nokia, Panasonic, Samsung, Sanyo, Sharp, and
Sony Ericsson



Andriod
: View and
ViewGroup

objects;
DroidDraw


tool serves for rapid UI design; J2ME Polish enables

conversion of Java ME
MIDiets
’ UT to Android

compatible UI


Pro’s & Con’s of Platforms

In terms of…


Portability


Functionality


Development Speed


Performance