Web Apps vs. Native vs. Hybrid

Afif Alfiano
5 min readDec 13, 2020

--

https://clearbridgemobile.com/mobile-app-development-native-vs-web-vs-hybrid/#:~:text=Progressive%20web%20apps%20(PWAs)%20are

Tentu ketika berbicara mengenai mobile apps kita akan mengarah kepada aplikasi di android, aplikasi di ios atau bahkan aplikasi website. Tapi ternyata ada satu teknologi yang dapat melakukan hybrid mode baik ke android ataupun ke ios.

Berdasarkan objective bisnis yang dijalankan tentunya terdapat alasan tertentu kenapa menggunakan salah satu teknologi tersebut. Baik itu web apps, android apps ataupun ios apps. Tentunya di masing-masing teknologi memiliki kekurangan dan kelebihannya.

1. Web App Development

Pada dasarnya sebuah website menawarkan sebuah informasi yang dapat user konsumsi dan tentunya selalu ada improvisasi disetiap jamannya. Sebuah website aplikasi dimuat oleh browser seperti chrome, safari atau firefox dan ketika mengakses web app kita tidak perlu menginstall aplikasi dari playstore dan juga tidak memakan banyak ruang penyimpanan.

Jika goal dari bisnis kita adalah mobile friendly untuk menjangkau user yang lebih luas dan dengan biaya minimum maka kita dapat menggunakan metode ini untuk mengembangkan aplikasi.

a. PWA

Progressive web apss adalah sebuah metode supaya web apps seperti layaknya aplikasi native apps. Overall, pwa ini mencoba mengimplementasikan behavior native untuk sebuah web apps dengan beberapa fitur seperti send push notifications, access to device with vibration, improve touch gestures dan masih banyak lagi yang dikembangkan.

Beberapa keunggulannya:

  • Relatif ringan dan mudah dimaintenance karena multiple mobile platform
  • Dapat digunakan di ios ataupun android.
  • Jika dibandingkan dengan nativev apps, web apps jauh lebih murah dalam pembiayaannnya

Beberapa kekurangannya:

  • Web apps memliki lingkup yang lebih kecil pada sebuah devices dibandingkan native apps.
  • Web apps lebih lambat dan kurang responsive ketimbang native apps.
  • Web apps kurang interaktif dan intuitif dibandingkan native apps

2. Native App

Native apps adalah aplikasi android pada umumnya yang mana kita install dari play store dan kita gunakan layaknya aplikasi android atau ios. Contoh bahasa yang digunakan seperti swift untuk native ios dan java atau kotlin untuk native apps.

Beberapa kelebihan native app

  • Native apps mendeliver performa terbaik
  • Native apps menerima seluruh support dari app store
  • Native apps lebih interaktif, intuitif dan lebih smooth

Beberapa kekurangan native app

  • Native app menggunakan bahasa pemrograman yang sulit dimana diharuskan developer yang berpengalaman
  • Native apps bukan satu satunya pilihan untuk membuat aplikasi simpel

3. Hybrid App Development

Hybrid apps bekerja dicross platorm dan berjalan layaknya native apps. Hybrid apps ini aslinya merupakan kombinasi dari native app dan web app. Walaupun tipe yang kita install seperti native app, tapi teknilaki seperti web app. Seperti html, css dan javascript dan menjalankannya di web view.

Sebuah hybrid app selalu terdiri 2 part:

  1. Kode backend yang ditulis dalam HTML, CSS dan Javascript
  2. Native shell. Shell ini bisa didownload dan dimuat menggunakan webview

Beberapa kelebihannya:

  • Hyrbid apps tiak membutuhkan web browser seperti web apps
  • Hybrid apps bisa diakses melalui interal API dan perangkat keras
  • Hanya satu codebase yang dibutuhkan untuk hybrid apps

Beberapa kekurangannya:

  • Lebih lambat ketimbang native apps
  • Dengan hybrid app development, kita memliki 3 platform untuk dideploy pada sebuah wrapper

Itulah beberapa perbandingan web apps, native apps dan hybrid apps

https://clearbridgemobile.com/mobile-app-development-native-vs-web-vs-hybrid/#:~:text=Progressive%20web%20apps%20(PWAs)%20are

4. Perbandingan Java/Kotlin dengan Flutter

Berikut ini perbandaingan membuat aplikasi native atau hybrid dengan java/kotlin atau flutter.

Android With Java/Kotlin

Berikut ini ketika membuat aplikasi native apps menggunakan android studio dan ya seperti teman-teman ketahui ketika running android studio saja prosesnya lumayan lama.

Kemudian ketika mendebug aplikasi di android studio kita perlu menunggu lagi proses build and run selesai.

Kelebihannya:

  • Performa dan keamanan lebih baik
  • Dokumentasi resim yang sangat baik dan rapi
  • Dukungan jangka panjang yang baik
  • Library dan 3rd party yang lebih terpercaya

Kekurangannya:

  • Berat ketika menggunakan atau mendevelop
  • Mudah didkeompilasi
  • Codebase hanya bisa untuk spesifik platform
  • Pengunaan memori banyak

Hybrid Apps With Flutter

Beriku ini program sederhana started with flutter dengan fungsi counting number setiap klik tombol plus. Flutter ini juga mengunakan android device simulator dari android studio atau juga bisa menggunakan debug langsung dari perangkat mobile. Installasi lebih cepat dan lebih ringan ketika graddle atau build aplikasi dan bisa dijalankan di ios ataupun android. Fitur flutter doctor yang sangat membantu kita mengecek aplikasi atau plugin apa yang diperlukan untuk menjalankan flutter ini.

Kelebihan:

  • Dukungan google dan dokumentasi resmi lengkap dan terstruktur.
  • Satu codebase untuk banyak platform(ios, android dan webapps)
  • Menggunakan bahasa dart.
  • Proses pembuatan aplikasi lebih cepat dari pada native apps.
  • Memiliki fitur flutter docter untuk memastikan plugin dan komponen yang harus disediakan apa saja.

Kekurangan:

  • Perofrma masih kalah dengan native app
  • Library yang belum selengkap react native
  • Umur yang relatif muda ketimbang native app
  • Developer yang lebih kewalahan karena menulis dua platform

NIM : 195411020

Nama: Muhammad Afif Alfiano Hermasyah

Program Studi/Jurusan: Teknik Informatika — K1

STMIK AKAKOM YOGYAKARTA

2020

--

--

No responses yet