Memilih Bahasa Pemrograman Android




Android saat ini sudah menjadi platform utama dalam membuat aplikasi mobile setelah ambruknya Blackberry dan Windows Phone. Banyak pilihan bahasa pemrograman yang bisa anda gunakan untuk menjadi programer Android.

Artikel ini akan membahas 6 bahasa yang mendukung pembuatan aplikasi Android. Topik disini fokus pada pilihan bahasa, untuk masing masing contoh kode program, library, IDE, tool dan sebagainya insyaallah akan saya bahas dilain kesempatan.

Java

Java adalah bahasa utama Android,  Pemilihan bahasa ini dikarenakan android terinstall diberbagai perangkat yang beda  form factor, vendor ataupun fungsi perangkatnya. Saya sangat menyarankan anda mempelajari dasar dasar Java terlebih dahulu sebelum menjadi pemrograman Android; Minimal anda paham dengan Struktur code java, Konsep OOP, Class, Object dan Interface serta aturan dasar di bahasa ini sebelum terjun ke pemrograman Android.

Referensi :

  1. Guide https://developer.android.com/guide/
  2. Code sample https://developer.android.com/samples/
  3.  Refensi  Java Android https://developer.android.com/reference/
  4. Android Studio : https://developer.android.com/studio/

C/C++

Java memang tidak sempurna dan terkenal lambat serta boros memori. Ketika programer akan membuat aplikasi Game atau aplikasi yang mangakses Sistem Android, maka pilhan bisa jatuh ke C/C++. Contoh aplikasi yang membutuhkan C/C++ adalah aplikasi Game 3D atau aplikasi yang harus mengakses sensor atau hardware.

Biasanya C/C++ tidak dipakai murni 100% dalam pembuatan aplikasi,  namun dipakai untuk membuat modul JNI ( Java Native Interface) yang ujung jungnya di panggil lagi dari Java.  Google menyediakan Development toolkit khusus untuk C/C++ bernama Native Development kit.

Bahasa ini sangat jarang dipakai oleh Pemula. Kebanyakan yang menggunakan C++ adalah kalangan profesional dan programer sistem seperti Vendor smartphone, Pembuat Game 3D, Aplikasi Benchmark, utiltiy System dan programer IoT.

Referensi: https://developer.android.com/ndk/

Kotlin

Kotlin adalah bahasa baru yang dibuat oleh JetBrain untuk mengatasi kekurangan Java.  Android Studio saat ini mendukung penuh kotlin. Kelebihan utama dari kotlin adalah sintaknya ringkas dan fungsi atau kelas bahasa ini tetap bisa dipanggil dari Java. Bahkan di Android studio kita bisa mencampur kode antara Kotlin dan java. Bahasa ini lebih ringkas kodenya dan lebih mudah dipahami. Namun saya tidak menyarankan kotlin dijadikan bahasa pertama karena anda pasti banyak yang tidak paham konsepnya. Untuk menunjukan seriusnya google mendukung kotlin dalam Android studio, anda bisa mengkonversi kode java ke kotlin hanya dengan sekali klik.

Saran saya dalami Java dan kemudian bertahap belajar kotlin. Ini akan jauh lebih mudah karena salah satu tujuan kotlin adalah mengurangi baris kode java yang terlalu bertele tele.

referensi:

  1. Tutorial Kotlin https://kotlinlang.org/docs/tutorials/
  2. https://developer.android.com/reference/kotlin/packages

Dart – Flutter

Ini juga bahasa resmi dari Google. Dart adalah bahasa pemrogramannya dan flutter adalah Mobile UI Frameworknya.  Sebenarnya dari sini saya juga kesal karena google tidak fokus dalam pembuatan aplikasi Android. Bayangkan Google mendukung Java, Kotlin dan sekarang Dart – Fullter. Satu perusahaan mempunyai 3 bahasa yang berbeda dan dibuat oleh tim yang berbeda. Seakan akan tim di google saling bersaing untuk menjadi Best Dev Tool untuk android.

Dart-Flutter memang sangat menjanjikan; UI nya modern, bahasanya sederhana dan dengan Flutter , desain dan kode menjadi satu. Berbeda dengan java dimana UI di buat di XML dan logika di Kode java. Hal ini bisa menjadi kelebihan sekaligus kekurangan. Bagi yang suka memisah antara desain dan logika maka Java tetap menjadi pilihan. Namun bagi yang suka keserhananan tanpa mengurangi fitur dan tampilan modern, flutter bisa menjadi pilihan.

Sekedar tambahan, Bahasa ini PALING saya rekomendasikan karena akan dijadikan bahasa utama di Fushia OS. Bagi yang belum tahu, Fuscia adalah sistem operasi yang akan menggantikan Android dimasa mendatang.  Dengan demikian,  mempelajari Dart – Flutter maka secara tidak langsung anda menyiapkan bekal untuk menjadi programer Fushia OS.

referensi: 

  1. https://www.dartlang.org/
  2. https://flutter.io

C# – Xamarin

Xamarin adalah framework yang memberikan solusi membuat program NATIVE untuk windows phone, Android dan Iphone dengan bahasa  C#. Jika latar belakang anda  .NET cara tercepat menjadi programer android adalah dengan Xamarin. Dulu, Xamarin adalah perusahan tersendiri, namun sekarang sudah di beli oleh Microsoft. Untuk bisa memulai memprogram dengan  Xamarin anda cukup  install plugin xamarin di Visual Studio.

Xamarin reference

  1.  https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/
  2. visualstudio.microsoft.com/xamarin/

Javascript

Solusi javascript umumnya adalah solusi HybridApp. Aplikasi yang dibangun cenderung aplikasi bisnis yang mempunyai backend database dibelakangnya seperti website / Blog. Javascript tidak dipakai secara mentah namun menggunakan framework pihak ketiga seperti Apache COrdova atau React Native. Hybrid App cocok untuk membuat versi ‘mobile-app’ dari sebuah website atau ecommerce.  Walaupun banyak solusi hybrid App berbasis Javascript, Bahasa ini tidak cocok untuk membuat aplikasi system, Game 3D atau aplikasi yang  mengakses ke sensor/ Hardware di smartphone.

Referensi 

  1. Apache cordova : https://cordova.apache.org/
  2. https://facebook.github.io/react-native/
  3. https://ionicframework.com/

Saran pribadi 

Jika anda baru mulai belajar Pemrograman Android, mulailah dengan bahasa Java. Setelah anda nyaman dengannya, langsung LONCAT ke Dart Flutter.

Bagi yang basisnya adalah programer C# atau berasal dari dunia Microsoft, langkah yang bijak adalah menggunakan Xamarin. Saya bilang ini langkah bijak ya, bukan langkah tepat karena tidak semua layanan / Library Android dari Google mendukung C#.

Untuk opsi terakhir, jika anda merasa berat dengan Java atau C# anda bisa pilih javascript. Tentunya setelah anda memilih javascript anda juga harus fokus pada salahsatu solusi yang disediakan apakah menggunakan react Native atau Angular. Sementara Untuk UI Frameworknya anda punya banyak pilihan, dari OnsenUI, Jquery Mobile, Ionic Framework, Native script dan sebagainya.

1 thought on “Memilih Bahasa Pemrograman Android”

  1. Eka says:

    Mantap info nya, mas.. Sangat bermanfaat..

Tinggalkan Komentar plz!