Skip to content

01 Intro

Mobile OS market share

Mobile

Tablet OS market share

Tablet

Hybrid Dev Platforms

  • React Native, NativeScript, Titanium
  • Flutter
  • Ionic, Cordova, PhoneGap
  • Xamarin
  • Progressive Web Apps


And many more – Framework7, Mobile Angular UI, Onsen UI, Sencha, Kendo UI, Quasar

React Native

  • React Native is a JavaScript framework for writing real, natively rendering mobile applications for iOS and Android.
  • Based on React, Facebook’s JS library for building user interfaces
  • React Native applications are written using a mixture of JavaScript and XML-esque markup – JSX
  • React Native “bridge” invokes the native rendering APIs in Objective-C (for iOS) or Java (for Android).
  • React Native also exposes JavaScript interfaces for platform APIs, apps can access platform features – GPS, Camera, Motion, ...

NativeScript

  • When you write NativeScript apps, your code has 3 parts: JavaScript, XML, and CSS. The JavaScript component runs business logic, accesses data, or controls the flow of the app. The XML portion defines the user interface (UI), and CSS is used to style the UI, much like an HTML application.
  • When run, the UI code renders native UI elements in the app.
  • Based on typescript!
  • Similar to React Native in many ways.
  • Apps can be based of Angular or Vue

Flutter

  • Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.
  • Supports almost anything – iOS, Android, Win, Linux, Mac, Fuchsia
  • Doesn’t use the underlying Android or iOS platforms, except for hardware access – GPS, Camera, etc.
  • UI, drawing to the screen, business logic – direct rendering. Like full screen 2d game (Skia engine). Does not use native UI components.
  • Programming is done in Dart (improved java, mostly like C#)

Xamarin

  • Open source app platform from Microsoft for building modern & performant iOS and Android apps with C# and .NET.
  • Xamarin.Forms cross-platform UI framework for building iOS, Android, & Windows apps with .NET from a single, shared codebase (XAML).
  • App is compiled to MSIL and bundled with .NET implementation for specific platform. AOT compiling for performance and security.

Ionic, PhoneGap, Cordova

  • Cordova is a framework which runs a JavaScript app in a WebView that has additional native extensions – to access hardware
  • PhoneGap is a distribution of Cordova with a few custom packages and tweaks (Adobe).
  • Ionic is based on Cordova and comes with Angular. It has set of standard controls that mimic native controls.
  • They are all essentially websites embedded in a mobile app.

Progressive Web Apps

  • Regular websites, enhanced to work in mobile phones.
  • Responsive, Connectivity independent, App-like-interactions, Fresh, Safe, Discoverable, Re-engageable, Installable, Linkable
  • Uses modern web technologies – https, service workers, manifest, etc.
  • Service Worker is a script that works on browser background without user interaction independently. Also, It resembles a proxy that works on the user side. With this script, you can track network traffic of the page, manage push notifications and develop “offline first” web applications with Cache API.

Native development

native

Javascript

javascript

Xamarin

xamarin

Flutter

flutter