Professional Documents
Culture Documents
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.
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:
Android hanyalah salah satu dari sekian OS yang bisa dikembangkan dengan Java.
API pada Android secara native dikembangkan dengan syntax Java atau C/C++.
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.
Well, Android datang dengan SDK yang memiliki built-in tools untuk berbagai keperluan seperti
membuat Project, compile Project, membuat AVD dan sebagainya.
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
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
C#
Xamarin SDK
ActionScript 3
Haxe
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 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".