Beruflich Dokumente
Kultur Dokumente
cross-platform app
development: pros and cons
Dr. Michael J. Garbade Follow
Aug 23, 2018 · 4 min read
Statista, a popular provider of market and consumer data, projects that the global mobile
app market will be worth $190 billion in 2020, from $70 billion in 2015.
Amid the remarkable growth of the industry, the “native vs. cross-platform” app
development debate is also raging.
In 2017, Android and iOS, the two commonly used operating systems for smartphones,
held a market share of 85.1% and 14.8% respectively. As of March 2018, there were 3.8
million apps in Google Play (for Android) and 2 million in Apple’s App Store (for iOS).
So, should you invest in developing native applications or kill two birds with one stone
by developing cross-platform ones like those that Maxim, who has more than 10 years of
software development experience, teaches people to develop?
This article talks about the differences between native and cross-platform applications
and explains some of their advantages and disadvantages.
The native apps are created specifically to be run on the target platform — with the
support of all the native technologies and other hardware components such as camera
and calendar.
Here are some advantages and disadvantages of using the native approach in mobile app
development.
High performance
Since the technologies used in developing native applications are platform-specific, the
native code enjoys direct access to the host’s operating system and functionalities.
This easier interaction with the native features of the mobile devices enhances the
overall performance of the application, especially when rendering graphics or
multimedia content.
Therefore, building complex applications using native code could reduce the risks of
downtimes from crashes or freezes.
The quality of user experience is an important rating standard in the app stores. If an app
has a high positive rating, it can be ranked highly, leading to greater visibility and
increased revenues.
And, native apps are likely to be positioned better on the app stores because of their high
performance and ease-of-use.
Without a doubt, creating apps natively for more than one operating system can
significantly prolong the development process. The same code cannot be deployed on
different platforms and programmers will require more time to convert and rewrite the
code, increasing costs and development time.
Missed opportunities
Developing apps that focus only one platform could result in missed opportunities,
especially if other platforms are not taken into consideration. The reduced target market
could lead to revenue losses for your development efforts.
As the name suggests, cross-platform entails creating applications that can run on a
variety of operating systems. After writing the application’s code, it can be deployed on
different devices and platforms without worrying of incompatibility issues. It’s an all-in-
one approach that is popularly used to save time and money.
Here are some advantages and disadvantages of using the cross-platform approach in
mobile app development.
The “write once, run anywhere” approach allows developers to utilize a single code on
multiple platforms, which greatly reduces costs and shortens the development time —
unlike native apps.
Since there is no need for creating different codebases, the initial deployment on the
target platforms is much faster.
Developing cross-platform apps provides access to a wider target audience, which could
lead to increased revenues.
Performance glitches
Apps developed using shared code may fail to offer robust user experiences. Cross-
platform apps cannot fully take advantage of native-only features and provide excellent
user experiences.
Wrapping up
The choice between native vs. cross-platform app development may sometimes be
difficult to make. Native applications win on certain expectations such as high-
performance while cross-platform applications are preferred on certain aspects such as
savings on time and money.
Ultimately, you should go for a platform that works best for your specific requirements
and ensures you attain the goals of your application development efforts.