Koding Mobile - Mobile Trik Tips dan Programming

Koding, Design, Trik Tips dan Programming Mobile

Thursday, September 24, 2020

1. Apa itu Flutter? (Intro)


Flutter adalah Mobile App SKD (Software Development Kit) yang sedang populer digunakan untuk membangun aplikasi mobile multi platform yaitu Android dan IOS dengan menggunakan kodebase yang sama, yang artinya tidak butuh dua kali kerja untuk membuat sebuah aplikasi yang sama pada Andoid dan IOS yang tentunya dengan performa tinggi karena flutter merupakan aplikasi native. Dengan kata lain kita tidak perlu mempelajari bahasa pemrograman yang berbeda untuk membuat aplikasi Android dan IOS, cukup mempeljari flutter sebagai codebasenya.

Kenapa Harus Pakai Flutter

Ini merupakan pertanyaan dasar yang seringkali dipertanyakan, mengingat begitu banyaknya bahasa pemrograman untuk mobile bahkan yang mengklaim multiplatform juga, seperti argumen beberapa rekan kepada saya, kenapa g pakai ionic? atau React Native atau Xamarin (yang rekomendasikan ini pasti programmer .net :D).

Jawaban saya untuk pertanyaan ini hampir sama yaitu :
1. Flutter menggunakan bahasa pemrograman yang tidak asing bagi saya yaitu dart, kenapa tidak asing karena saya dahulu terbiasa membuat aplikasi dengan C++ dan ternyata dart ini merupakan pengembangan dari bahasa tersebut, tentunya ini juga berlaku untuk programmer bahasa serumpunnya seperti PHP atau Typescript misalnya :D
2. Dapat mengembangkan aplikasi multiplatform hanya dengan sebuah codebase.
3. Native Performance hingga 60 FPS (Lihat presentasi Flutter Design)
4. Fitur Hot-reload yang membuat kita dapat mengubah code saat aplikasi sedang berjalan.
5. Customize interface dan user experience dengan fleksibel tanpa limitasi OEM Widgets.

Sedangkan seperti yang kita ketahui untuk membuat sebuah aplikasi mobile single platform ataupun multiplatform ada 2 hal yang menjadi point mendasar yaitu :
1. Menggunakan Metode Native
    kita dapat menggunakan bahasa pemograman Native yang dimiliki/disupport oleh penyedia platform. Seperti Java & Kotlin untuk Android. Dan Objective-C & Swift untuk iOS.
2. Metode Hybrid
    kita dapat menggunakan bahasa pemograman Web (HTML, CSS, Javascript). Misalnya menggunakan framework React Native, Nativescript (Angular).

Tetapi dari point 2 dan 3 diatas tentunya masing masing memiliki kelebihan dan kekurangannya sendiri, seperti misalnya metode native dimana kita harus belajar 2 bahasa pemrograman sekaligus untuk dapat membuat kedua aplikasi pada platform tersebut (Android dan IOS).
Sedangkan untuk aplikasi Hybrid seringkali bermasalah dengan platform dan memory yang berimbas pada performa aplikasi, walaupun sisi positifnya hanya perlu belajar satu codebase, misalnya ionic ataupun xamarin.

Dan akhirnya menurut saya pribadi, flutter akan menjadi solusi dan penantang baru didunia Mobile Development karena dapat memberi solusi dari kedua permasalahan pengembangan aplikasi baik secara native maupun hybrid, yaitu hanya perlu belajar satu codebase dan dengan performa tinggi.
Jika kita membutuhkan untuk membuat aplikasi secara cepat seperti membuat Prototype atau aplikasi tahap awal, maka Flutter merupakan solusi terbaik. Tapi jika kita mengincar stabilitas maka silahkan kembali ke Native, karena belum ada jaminan tidak akan ada masalah menggunakan Flutter.

Kesimpulannya, dalam melakukan development sebuah system kembali kepada apa yang dikita kuasai dan dapat berjalan stabil untuk menghasilkan value to money tentunya tapi tidak ada salahnya mempelajari sebuah bahasa pemrograman baru seperti flutter misalnya. untuk tetap mengupgrade skill dan kemampuan kita dibidang programming dan design aplikasi berbasis mobile.

Sekian tulisan singkat saya, terimakasih dan semoga bermanfaat.

No comments:

Post a Comment