Langsung ke konten utama

Mengenal IONIC



PENGERTIAN IONIC


.
Apa Itu Ionic Framework?
Ionic adalah platform yang mentargetkan Programer Web agar bisa membuat aplikasi Mobile dengan TEKNOLOGI Web. Artinya Programmer web yang ingin menjadi programer Mobile tidak perlu belajar Java atau Objective C atau C# untuk membuat versi Aplikasi dari layanan webnya. Inilah pandangan dari pendiri Ionic. Sebelumnya, pendiri ionic ingin membuat gebrakan revolusioner dengan konsep mengubah konsep Write one Run Anywhere dengan satu base code berbasis javascript.
Ternyata, ketika ide ini disampaikan ke para programer Android atau iOS, ide ini tidak disambut hangat. Mengapa? karena tidak semua bisa dilakukan dengan teknologi web. Salah satunya adalah pemrograman Game di Smartphone yang memanfaatkan openGL ES atau aplikasi yang sangat tergantung Sensor. Dari sinilah pengembang Ionic akhirnya mempivot targetnya adalah untuk para programer web yang ingin membuat aplikasi mobile (biasanya aplikasi bisnis) tanpa harus belajar bahasa pemrograman lain.

Kelebihan Ionic Framework
Ø Ionic Menggunakan lisensi Opensource
Ionic platform menggunakan lisensi opensource, anda boleh membuat aplikasi free ataupun comercial dengan Ionic.
Ø Menggunakan teknologi web terbaru
Ionic memanfaatkan AngularJS untuk implementasi logicnya. Mengapa tidak memakai jQuery? karena jQuery terkenal lambat di mobile sedangkan Angular menawarkan performa dan respon cepat serasa aplikasi native.
Ø Target Hanya untuk Android 4 dan ios 7 Keatas
Anda bisa melihat ini sebagai kelebihan ataupun kekurangan. Bagi yang suka dengan hal baru dan ingin kode yang bersih tanpa memikirkan kompabilitas dengan versi mobile OS lama, maka ionic adalah platform yang paling pas.
Ø Berbasis Apache Cordova /Phonegap
Perhatikan point ini. Ionic hanya menyediakan frameworknya, untuk membungkusnya menjadi aplikasi Android atau iOS anda tetap pakai phonegap. Artinya bagi para programer phonegap  dengan platform lain, keahliannya tetap bisa dipakai.

Kekurangan Ionic Framework
Ø  Masih sebatas framework, jika untuk membungkusnya menjadi aplikasi Android, iOS atau windows phone tetap menggunakan Phonegap
Ø  Peforma yang medium atau tidak begitu cepat

Tool Resmi Ionic
Ionic CLI
Ionic CLI adalah tool command line yang digunakan untuk membuat project dan menjalankan project. Masih banyak fitur dari ionic CLI ini, silahkan mengacu ke http://ionicframework.com/docs/cli/start.html.
ionic Lab
IonicLab Adalah solusi bagi anda yang ingin kenyamanan. IonicLab adalah Versi GUI dari Ionic CLI, anda tinggal klik untuk melakukan operasi operasi yang semula harus mengetikan perintah di Console.
Ionic Creator
Berbeda dengan jQuery mobile atau platform lain yang memaksa kita coding manual untuk mendesain tampilan UInya. Ionic menyediakan Ionic Creater, produk free yang akan memudahkan anda mendesain tampilan UI dari aplikasi. Ionic Creator sendiri adalah WebApp artinya anda harus mengaksesnya lewat Browser. Untuk Akun Free kita hanya bisa mendesain satu aplikasi saja, Jika ingin lebih belilah paket Premium. Anda bisa mencobanya di https://creator.ionic.io/app/login.
Ionic ViewApp
Aplikasi ini adalah Aplikasi Android. Fungsi utamanya adalah mempreview program Ionic langsung dari Android. Aplikasi yang bisa di preview oleh ViewApp bisa aplikasi yang kita buat atau aplikasi orang lain yang dishare di Ionic Market.

Apa yang harus dipelajari terlebih dahulu
Sebelum mencoba ionic ada beberapa teknologi yang harus anda kuasai, minimal anda tahu sebelum terjun ke Ionic. Ilmu ini harus anda pahami kalau ingin membuat aplikasi bagus. Kalau anda tidak pernah mencoba atau mendengar teknologi dibawah ini, jangan buru buru coba ionic. Teknologi itu adalah
  1. HTML5/CSS/Javascript
  2. Nama komponen visual di mobile App (android/iOS)
  3. AngularJS
  4. Dasar dasar NodeJS/NPM
  5. Phonegap/Apache Cordova
  6. Command line (CMD/Bash/Terminal Linux)
  7. Cara membuatApk  atau membuild /compile  iosApp.
Jadi 7 point itu harus anda pahami dulu, mengapa saya tekankan disini. Untuk point 7, jika anda hanya ingin membuat versi androidnya, maka anda tidak perlu belajar XCode.  karena banyak programer yang berusaha memakai teknologi baru tanpa memperhatikan ilmu dasarnya, makanya jangan heran banyak programer stress dan banyak mahasiswa mentok di tengah jalan karena tergiur berbagai fitur framework yang ditawarkan.
Selain itu, alangkah baiknya anda memahami Ekosistem Ionic secara menyeluruh, minimal tahu teknologi dibalik ionic agar mudah dalam mempelajari dan medebug Program. Anda bisa melihat Ekosistem Ionic dan Hubungannya dengan teknologi lain dari diagram dibawah ini.

Jika anda tidak ingin memahami semuanya, saya sarankan fokuslah ke teknologi AngularJS karena jika diibaratkan HTML5,CSS3,JS adalah badannya maka angularJS adalah rohnya. Dengan bahasa lain, Framework Ionic (UI component) adalah Viewnya dan AngularJS adalah Controllernya.

Ionic Platform
Selain Ionic Framework yang free dan opensource, Ionic juga memperkenalkan ionic Platform. Ionic Platform memberikan layanan tambahan bagi para developer ionic. Ionic Platfrom menambahkan fitur Create, deploy, update, Analytics, Marketing (Ionic Market) dan Push notification kedalam aplikasi yang dibangun dengan ionic. Saat ini, ionic Plaform masih dalam tahap Alpha testing dan anda gratis mencobanya.

Untuk Platform ini memang masih alpha dan belum ready, namun jika sambutan dari Developer positif, maka kedepannya ionic adalah platform paling menjanjikan untuk membuat aplikasi mobile yang terasa Native untuk Platform Android dan iOS.

Ionic vs React native

Ada begitu banyak kerangka kerja mobile hybrid seperti Ionic, NativeScript, React Native, Xamarin, PhoneGap dll. tapi disini kita hanya mencoba untuk membedakan ionic dan react native saja.
perbedaan dari dua framework diatas dijelaskan dalam tabel di bawah ini.

Ionic
React Native
Berbasis Angular 2 yang di kembangkan google
Berbasis React js yang dikembangkan oleh facebook
Dokumentasi mudah dipelajari, sangat jelas dan konsisten
membuat dokumentasi yang basic jika di bandingkan dengan ionic
Medium peforma karena menggunakan semacam web view 
Mempunyai peforma yang bagus
menulis kode satu kali dan dapat berjalan di berbagai platform
Belajar sekali, menulis di mana saja, karena ada perbedaan pada setiap platform yang akan di jalankan
Bisa dengan cepat melakukan testing, karena jika sudah selesai kita bisa melakukan testing di browser
Membutuhkan emulator atau real device untuk melakukan testing
Apache cordoba di gunakan di ionic 2 untuk mengakses fungsi dari hardware phone
React native di kopile langsung ke native code sehingga dapat mengakses langsung feature 
Penulisan kode menggunakan typescript
Penulisan kode menggunakan jsx

dari penjelasan diatas berikut kesimpulannya adalah
Ionic adalah kerangka pengembangan hibrida yang khas. Menggunakan teknologi web untuk menulis dan membuat aplikasi, dan memerlukan jembatan PhoneGap / Cordova untuk mengakses fitur asli. Kemudian akan mencoba mereproduksi perilaku asli untuk memberikan pengalaman pengguna terbaik.



SEMOGA BERMANFAA ^ ^

Komentar