Choosing your Mobile Development Platform

quantityforeheadMobile - Wireless

Dec 10, 2013 (3 years and 4 months ago)

54 views

Whitepaper






Choosing your Mobile Development P
latform










Challenge

Enterprise Mobility, a hot topic these days…

The days of being tied to one’s desk for 40+ hours
a week are long gone. Using tablets
&

smartphones in the enterprise, it creates opportunities for
employees, but also challenges and risks for organizations. Companies of all sizes are struggling
with an ever
-
growing array of IT management and security concerns, as more and more business
data

moves to mobile devices.

Before starting with
mobile apps
, you should realize that there a
re some questions that need to be
answered.

Each IT environment is different and each environment has his own needs.

Which budget is

available?
For which platform d
o you want to create your application? Will you
allow BYOD* in your company? How critical is native functionality? How important is the time
to roll out?
How important is speed & performance? What is my budget? Does that app require
the use any special dev
ice features? What programming languages do I already know? And so
on…

Many

questions will come up when it comes down to mobile development platforms. When you
compare one with

another, you’ll see that there a
re

three main ways in which you can develop an
app:

1) Native code, 2)
Flex / AIR,

3) HTML5.

Each of these three ha
ve

their advantages and disadvantages and it’s important to choose the
development methodology that will benefit your
business

the most.

Whitepaper



Native Code

Native code has some significant adva
ntages:
i
t can be highly optimized for performance and it
can take advantage of a specific functionality not available to other development methods.

Some
mobile apps can only be build using native code because they require a specific functionality.

With
native code, these mobile
applications are fast, reliable, and
powerful but are tied to a mobile platform.
Th
is

means

that

you must duplicate them
using the appropriate programming
language in order to target another mobile
platform.

Some big advantages fo
r native development are:

-

Tools, Support & standard development best practices provides by device manufacturers
can help speed up the development

-

Performance

-

Access to all/most platform features

-

More familiar UI (look & f
eel)

-




Flex / AIR

When Adobe announced that they would bring Adobe Flex to the
Apache foundation, people where already yelling that flash was
dead. But, that’s definitely not the case!

Adobe is not going to continue support
ing

flash on mobile like
before, but Adobe AIR is
still making progress!
Apache

Flex /
Adobe
AIR can be used for desktop, mobile

devices (Android, iOS,
…),

TV applications etc
.
, quickly, while retaining a consistent look
and feel.
In

addition
to
native extensions it has been extended to
include more and m
ore native functionality.

While Flex was donated to the Apache foundation, a new area
was started. The Apache Flex SDK will now not only be
improved by Adobe, but also by a
much
larger community. With
new releases from the Apache Flex SDK, Adobe AIR runti
me &
the Adobe Flash Builder
, this environment was never as strong
for cross
-
platform development as it is today!



Whitepaper


For example:

-

The latest release of the Adobe AIR Runtime (3.5) includes already the iOS 6 SDK
support.

-

The new version of the Adobe Flash Bu
ilder (4.7) supports iOS on
-
device

&

simulator
testing & debugging


HTML5

A whole new area for mobile apps! The evolution of HTML, in
combination with CSS &
JavaScript is amazing! HTML5 mobile

apps
can be acce
ssed on mobile browsers and run

on different mobile
platforms just like native apps

with the help of hybrid frameworks
.


But be careful
:

HTML5 is still browser capabilities

and

mobile
environment

(
WebKit**
) dependent
.


HTML5 provides developers tools for using the Offline Web Storage, G
eoLocation

API
, Canvas
drawing and many more…

With HTML5 and mobile web development
,

new tools and frameworks are popping up to
provide a more consistent and comprehensive HTML5 support across mobile browsers
. Already
more than a dozen of such frameworks a
re available on the market. Some examples here are:

-

JQuery Mobile

-

Sencha Touch

-

Backbone.js

-



The idea that apps can be built using a mix of native and web technologies is becoming a popular
choice. Usually split on a feature basis, these apps can benefit

from faster
-
to
-
build HTML
components, re
-
use between platforms or even seamless updates
bypassing approval processes… and still maintain a high
-
end user
experience where it matters. Let’
s take f
or example Phonegap.
Phonegap does allow you to embed an HTML
5/JS/CSS “web page”
into a native shell but
its

real strength
lies in its more advanced usage
as a hybrid framework.

So, what is a

hybrid framework
?

Displaying web components, it all starts with a web view. This web

view should be able to load HTML
(locally or remotely), and run Java
S
cript and CSS. Next
step
is allowing JavaS
cript code in that web

view to call your native code, and vice versa. All
platforms can do this, but unfortunately they all do it differently.

Whitepaper



Conclusion

The perfect mobile deve
lopment platform doesn’t exist, but choosing the best platform for your
business is definitely something that can be done. There are a lot of questions, but there are
solutions. When starting with mobility you have to think big, but you have to start small
!
!



* “Bring Your Own Device (BYOD) describes the recent trend of employees bringing personally
-
owned
mobile devices to their place of work, and using those devices to access privileged company resources
such as email, file servers, and databases.” (Wikip
edia)

** WebKit is a layout engine designed to allow web browsers to render web pages. (Wikipedia)


Who am I? A

SAP Technology
C
onsultant with interest
s

in User Experience, Process Efficiency,
Innovation & Creativity.

Twitter:
@Verreydths

LinkedIn:
http://www.linkedin.com/in/verreydths