Smart Learning Lab
HTML-5, Cross-Plattform Framework, or native? What is your migration strategy for your user interface?
Smartphones, tablets and the corresponding apps are spreading at breakneck speed. In order to make the user interface of existing applications fit for these end devices, a migration to the corresponding programming frameworks is inevitable.
Often the decision has to be made whether (a) the user interface should be implemented as a WebApp with HTML-5, whether (b) a cross-platform framework (such as Mono or PhoneGap) should be used, or whether (c) it makes more sense to write the user interface directly as a native application with Objective-C for iOS or Java for Android.
The simple rules of thumb for this decision are quickly summarized:
Mono is always suitable if a lot of .Net legacy code and .Net developer know-how is available. It should be noted, however, that platform-specific development skills are still required for programming the visible user interface components (windows, buttons, etc.). As with other cross-platform frameworks and HTML, care must be taken when evaluating sensor information (e.g. GPS), or when establishing connections via Bluetooth, for example.
Implementing the user interface as a WebApp with HTML-5 is always a good idea if only basic user interface components are used. A user interface that consists of four list views and corresponding detail views with text fields and save/cancel buttons is probably well suited for an implementation with HTML-5 -- as long as it is a free app and the processing of sensor data and Bluetooth connections does not play a role.
Cross-platform frameworks such as PhoneGap (also available as an open source Apache Cordova product) allow HTML-5 based WebApps to be encapsulated and made available for iOS, Android and WinPhone as apps in the respective AppStores.
Finally, many app developers decide to write the software directly as a native app using Objective-C for iOS or Java for Android. The reasons for this are often that the user experience can be easily optimized for the respective platform. The performance (and thus "naturalness") of the user interface can be ensured most easily this way and special functions of the respective platform can be used without detours.
So much for the rules of thumb.
But often the devil is in the details. That is why it is important not only to clarify the characteristics of the market, the availability of skills and the rough technical product features. In order to achieve a high degree of planning reliability in projects for the implementation of a user interface, it often makes sense to create an architecture prototype as part of a feasibility study. In this way, important technical risks during the migration can be illuminated and the problem does not arise that in the middle of the implementation it turns out that central features of the software cannot be implemented with the chosen implementation strategy.
In an initial one to two hour consultation at HSR, many of the basic questions can often be clarified and plans for possible further procedures can be outlined. This initial consultation is billed as a low-cost standard offering of CHF 250.
If needed, you can book an appointment with the assistant at the Institute for Software, Ms. Silvia Mazzoli:
058 257 4626