Jumat, Februari 24, 2012

Pengenalan Android OS - Part 1

PENGENALAN ANDROID OS

Android adalah sebuah sistem operasi untuk berbagai perangkat mobile seperti handphone, netbook, dan komputer tablet. Sistem operasi ini dikembangkan oleh Google dengan berbasis kernel Linux versi 2.6 dan berbagai perangkat lunak dari GNU yang bersifat Open Source. Pada awalnya, Android dikembangkan oleh perusahaan Android Inc. namun kemudian perusahaan tersebut diakuisisi oleh Google sehingga menjadi produk Google. Sekarang ini pengembangan Android ditentukan oleh sebuah konsorsium bernama Open Handset Alliance (OHA) yang terdiri atas berbagai vendor perangkat mobile, komputer, dan telekomunikasi seperti Intel, Nvidia, Google, Samsung, Sprint, T-Mobile, Motorola, LG, Sony Ericsson, Toshiba, Vodafone, serta masih banyak yang lain dan anggotanya terus bertambah.


Karena Android bersifat Open Source dan mempunyai lisensi Apache yang sangat terbuka dan bebas, maka Android menjadi sistem operasi yang sangat populer bagi berbagai produsen perangkat mobile. Berdasarkan laporan dari NPD Group, penjualan perangkat smartphone berbasis Android berada di peringkat kedua di seluruh Amerika pada kwartal pertama tahun 2010. Laporan dan Nielson juga menunjukkan bahwa Android berada di posisi keempat dengan pangsa pasar sebesar 9% untuk smartphone di kwartal yang sama. Salah satu keunggulan Android adalah adanya komunitas para developer dan programmer yang luas untuk mengembangkan berbagai aplikasi yang berjalan di perangkat berbasis Android sehingga mampu memperluas fitur dan kemampuan perangkat tersebut. Saat ini sudah terdapat lebih dari 70000 aplikasi Android sehingga berada di peringkat kedua di dunia. Banyaknya aplikasi yang tersedia di Android dimungkinkan karena pengembangan di Android relatif mudah dan cepat karena menggunakan bahasa pemrograman Java dengan dukungan library Java yang dikembangkan oleh Google.

Komponen sistem operasi Android bisa digambarkan dalam bagan berikut:



Software stack untuk Android OS terdiri atas berbagai aplikasi Java yang berjalan di atas framework Java berorientasi obyek, yang kemudian berjalan di atas core library Java dari Dalvik Virtual Machine (DVM) melalui JIT compiler. Sebagian library yang kritis ditulis dengan bahasa C demi kinerja seperti Surface Manager untuk dukungan touchpad/touchscreen, OpenCore Media Framework, SQLite untuk database, OpenGL ES untuk grafis 3D, FreeType untuk dukungan font, WebKit layout engine untuk user interface, SGL graphics engine untuk grafis 2D, SSL untuk koneksi yang aman, dan Bionic libc. Saat ini Android OS terdiri dari 12 juta baris kode termasuk 3 juta baris kode XML, 2.8 juta baris kode dengan  bahasa C, 2.1 juta baris kode dengan bahasa Java, dan 1.75 juta baris kode dengan bahasa C++. Pengembangan Android masih terus berlanjut dengan menambahkan berbagai fitur yang menarik, sehingga jumlah baris kode untuk Android akan terus bertambah dengan keluarnya versi-versi baru.

Ada beberapa istilah yang perlu dipahami dalam Android sehingga kita mampu membangun aplikasi Android dengan baik dan benar.

Resource: Segala hal yang digunakan dalam aplikasi Android yang kita kembangkan seperti teks, gambar, video, audio, xml, layout, dan berbagai sumber lain yang digunakan dalam kode sumber aplikasi Android. Semua resource yang dapat diakses di suatu aplikasi secara otomatis akan didaftarkan di dalam class khusus bernama R sehingga kita mampu mengaksesnya melalui R.

Activity: Merepresentasikan satu layar di Android dalam aplikasi. Pada intinya,sebuah activity mengendalikan semua kegiatan yang terjadi dalam satu layaryang tampil di perangkat berbasis Android. Dalam paradigma MVC (Model-View-Controller), activity mempunyai peran sebagai controller. Dalam suatu aplikasi Android yang rumit, bisa terdapat banyak activity untuk berbagai fungsi yang disediakan aplikasi tersebut.

View: Komponen user interface (UI) yang terdapat pada satu activity atau layar. Pengguna berinteraksi dengan layar melalui satu atau lebih view yang terdapat pada satu activity/layar. Suatu activity berisikan satu atau lebih view dan mengendalikan semua view dalam layar tersebut.

Intent: Kode yang bertanggung jawab untuk melakukan suatu proses dalam aplikasi Android, termasuk pergantian activity/layar atau pemanggilan aplikasi yang lain untuk interaksi antar aplikasi.

AndroidManifest.xml: File yang berisikan deskripsi dan konfigurasi umum mengenai aplikasi Android yang kita buat. File ini bisa diibaratkan sebagai deployment descriptor untuk memberitahu kepada Android bagaimana cara memasang aplikasi ini di perangkat berbasis Android.

Bisa dibilang bahwa unit paling kecil dalam suatu aplikasi Android adalah Activity. Satu Activity merepresentasikan satu layar, dan dalam satu activity bisa terdapat beberapa view yang memungkinkan pengguna untuk berinteraksi dengan activity tersebut. View bisa menggunakan berbagai Resource. Jika suatu
activity ingin mengakses activity, aplikasi, atau pelayanan yang lain, maka activity dapat melakukannya dengan menggunakan Intent. Aplikasi bisa terdiri atas beberapa activity dan intent, dan semuanya terdeskripsi dalam AndroidManifest.xml.

Tidak ada komentar:

Posting Komentar