You are on page 1of 3

Salah Kaprah/Miskonsepsi Tentang Pemrograman Android

Banyak programmer Android pemula yang masih salah kaprah memahami workflow pemrograman
Android. BAP (Belajar Pemrograman Android) merasa perlu untuk membngkar dan membenahi
pandangan tersebut agar mereka kembali ke jalan yang lurus pemahaman yang benar.

Berikut adalah 3 miskonsepsi tentang pemrograman Android:

Android adalah Java

Haha, ngawur ah. Android adalah sistem operasi yang dikembangkan dengan Bahasa Java dan C,
dengan mengambil Linux Kernel sebagai basis sistemnya. Android dengan Java sendiri secara mendasar
tentu jauh berbeda.

Sebagai klarifikasi:

Belajar Java , tidak berarti langsung belajar dan mengerti Android

Tidak semua API di Java mampu dijalankan di Android, misalnya Swing.

Android hanyalah salah satu dari sekian OS yang bisa dikembangkan dengan Java.

API pada Android secara native dikembangkan dengan syntax Java atau C/C++.

Android adalah OS dan SDK, sedangkan Java adalah bahasa pemrograman.

Tidak semua versi Java bisa dipakai untuk memprogram Android. Misalnya untuk saat ini, fitur
spesifik Java 8 seperti Lambda Expression , tidak bisa dipakai untuk memprogram Java. Untuk saat ini,
hingga Android 5, hanya hingga Java versi 7 saja yang sintaksnya compatible dengan Android SDK.

Untuk membuat program Android harus pake Eclipse

Well, Android datang dengan SDK yang memiliki built-in tools untuk berbagai keperluan seperti
membuat Project, compile Project, membuat AVD dan sebagainya.

Jadi anggapan ini SALAH BESAR karena:

Kita bisa membuat project dan melakukan task programming dari tools yang ada di Android SDK.
Untuk menggunakna tools tersebut secara global di sistem kita, perlu ditambahkan ke System Path.

Karena Android datang dengan SDK, maka development Android bisa dilakukan dengan IDE/Editor
apapun selain Eclipse. Misalnya dengan Intellij Idea, Sublime Text , atau juga dengan tools resmi Android
Studio. Yang penting adalah ,setelah SDK terinstall programmer harus mereferensikan SDK tersebut ke
masing masing IDE yang dipakai, atau kompilasi lewat CMD

Untuk membuat program Android harus ngerti Bahasa Java


Jawabnya: Tergantung. Karena nyatanya saat ini membuat program di Android tidak hanya dengan
Java , tetapi dengan HTML/JS/CSS juga bisa yang nantinya dikompilasi dengan bridge semisal Apache
Cordova. Bahkan SDK Android sendiri datang dengan native SDK sehingga bisa diprogram dengan bahasa
C/C++.

Yang paling penting dalam mengembangkan apliaksi Android adalah mengerti bagaiamana life cycle
aplikasi Android itu sendiri. AKAN TETAPI , harus diakui untuk menggunakan API Android yang low level ,
pengetahuan tentang Java sangat kritikal. Tetapi intinya anda tidak harus ngerti Java, kecuali anda ingin
menulis aplikasi Android tersebut secara Native.

Aplikasi Android yang dikembangkan dengan bahasa selain dengan Java/C/C++ sering disebut dengan
"Hybrid Application".

Berikut adalah daftar bahasa selain Java dan C/C++ yang memungkinkan programmer
mengembangkan aplikasi secara hybrid:

Bahasa

SDK&Compiler Bridge

HTML/JS/CSS

Apache Cordova, PhoneGap

C#

Xamarin SDK

ActionScript 3

Apache Flex, Feathers, dll + Adobe AIR

Haxe

OpenFL SDK dengan Android NDK

Delphi

Bundled IDE

Lazarus
Laz4Android

Swift

RemObject Silver

Sebagai catatan:

aplikasi Andoid Native yang dibuat dengan Java/C cenderung memiliki performa yang lebih cepat
dari aplikasi yang dikembangkan dengan tool hybrid.

Alasan mengapa programmer menggunakan bahasa selain Java/C untuk mengembangkan Android
antara lain:

Mereka tidak familiar dengan Java , atau bukan programmer Java

Mereka ingin mengembangkan aplikasi yang cross platform dengan codebase yang sama.

Kelemahan aplikasi Hybrid (selain relative lebih lambat dari Native) adalah sulitnya menggunakan
fitur" yang bersifat low level dari Android, seperti Native Camera, dsb. Sehingga untuk menggunakan
native feature tersebut dipakai pendekatan semacam "plugin" pada tiap-tiap tool hybrid tersebut.
Sebagai contoh pada Flash Platform, fitur native diakses dengan menggunakan "Native Extension".

You might also like