Belajar Android untuk Pemula— Part 1
Materi Android Beginner
Outline :
- Object Oriented Programming
- Pengenalan Android
- Instalasi dan menggunakan Android Studio
- App Building Block
- View, ViewGroup, dan XML Syntax
Object Oriented Programming
Di pemrograman dasar, Anda pasti tahu yang namanya primitive variable. Ya, variable primitive itu seperti int, double, char, dan lain-lain. Variabel primitf tersebut dapat menyimpan satu nilai saja. Beda dengan object yang dapat menyimpan lebih dari satu nilai. Object menggunakan variable primitif untuk menyimpan nilai-nilai tersebut. Object bukan hanya sekedar mampu menyimpan nilai saja. Object mempunyai yang namanya method. Object itu dapat digambarkan seperti objek di dunia nyata. Objek di dunia nyata mempunyai sifat dan perilaku, sama seperti Object pada OOP, ia mempunyai sifat dan juga perilaku. Nah, kalau Object bahasa pemrograman atribut itu sebagai sifatnya dan method sebagai perilakunya.
Untuk lebih detail, silakan buka postingan berikut :
Apa itu Android ?
Android adalah sistem operasi yang berbasis pada linux dengan versi yang termodifikasi. Aslinya Android itu dikembangkan oleh Android, Inc. Pada tahun 2005, Android dibeli oleh Google.
Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak.
Berikut link yang dapat Anda gunakan sebagai bahan bacaan :
- http://androidlearnesia.blogspot.com/2018/01/apa-itu-android_5.html
- http://androidlearnesia.blogspot.com/2018/01/arsitektur-fitur-dan-versi-android.html
Instalasi dan Menggunakan Android Studio
Android Studio adalah IDE (Integrated Development Environment) resmi yang dibuat oleh Google, dibangun dengan software JetBrains’ Intellij IDEA yang didesain secara khusus untuk pengembangan aplikasi Android.
Kita menggunakan Android Studio untuk mengembangakan aplikasi Android. Untuk menginstal Android Studio Anda tidak perlu menginstal java sdk terlebih dahulu. Instalnya menggunakan installer Android Studio yang diunduh di halaman berikut :
https://developer.android.com/studio/
Download size kurang lebih 1 GB + unduh dan install lagi keperluan setelah install Android Studio kurang lebih 2GB. Maka dari itu diperlukan koneksi internet yang stabil.
Ada dua macam bahasa yang dapat kita gunakan untuk pengembangan aplikasi pada Android Studio, yaitu Java dan Kotlin. Setelah Anda selesai menginstal Android Studio, saat pertama kali dijalankan kita perlu mengunduh lagi dan menginstall semua keperluan yang diperlukan Android Studio untuk pengembangan nanti. Setelah semuanya sudah beres mari kita mulai untuk menggunakan Android Studio. Untuk selanjutnya dapat Anda ikuti postingan pada link berikut :
- http://androidlearnesia.blogspot.com/2018/01/1-menggunakan-android-studio.html
- https://google-developer-training.github.io/android-developer-fundamentals-course-concepts/en/Unit%201/11_c_create_your_first_android_app.html
- https://google-developer-training.github.io/android-developer-fundamentals-course-practicals/en/Unit%201/11_p_hello_world.html
App Building Block
Apa itu building block ? Building block adalah komposisi atau komponen dasar yang membentuk sesuatu. Jadi, App Building Block adalah komponen-komponen dasar yang membentuk suatu aplikasi, yaitu aplikasi Android. Berikut merupakan building block suatu aplikasi Android :
- Resources : layout, image, string, dan color dalam bentuk XML dan file media
- Components : activity, service, dan helper class dalam bentuk kode java
- Manifest : memuat informasi tentang aplikasi saat runtime, seperti informasi activity, content provider, permission, dan lain-lain
- Build Configuration : Berisi konfigurasi build dan versi apk dari aplikasi.
Secara sederhana kita bisa memandang bahwa aplikasi Android itu dibentuk dari Java Code yang berisi logic atau kode-kode implementasi dan penggunaan Resources sebagai penyedia gambar, warna, string res, item res, dan file-file media.
View, ViewGroup, dan XML Syntax
View
View merupakan komponen UI pada Android. Secara sederhana View merupakan kelas yang digunakan untuk membuat tampilan pada layar. View bertanggung jawab dalam mengukur, menata tampilan, dan menampilkan (drawing) view itu sendiri. View juga bertanggung jawab dalam menyimpan UI state dan menangani suatu event (kejadian, seperti onClick). Kelas base dari view adalah View. Semua widget seperti ImageView, TextView, Button, dan lain-lain itu mengextends kelas View. View adalah parent View semua komponen View tadi. Perhatikan gambar diagram di bawah :
Berikut contoh View, yaitu TextView untuk menampilkan teks, ImageView untuk menampilkan gambar, dan Button sebagai tombol.
ViewGroup
ViewGroup itu adalah View. Perhatikan diagram sebelumnya, kelas ViewGroup meng-extends kelas View. ViewGroup digunakan sebagai wadah atau container untuk menampung atau mengatur komponen-komponen View yang ada di dalamnya.
ViewGroup bertanggung jawab untuk menata letak dan posisi view-view yang ada di dalamnya. Contoh ViewGroup yaitu layout. Anda dapat mempelajari tentang layout di bagian kedua postingan Android Beginner di link di bawah postingan ini.
XML Syntax
Mari perhatikan screenshot xml syntax berikut :
Screenshot di atas merupakan syntax xml penggunaan komponen TextView. Di situ terdapat attribute name dan attribute value. Atribut name itu seperti android:text, android:textSize, android:textColor, dan lain-lain. Dan atribut value adalah nilainya, contohnya seperti yang ada pada screenshot di atas.
Di bawah ini merupakan contoh pengunaan ViewGroup yang di dalamnya ada 2 komponen TextView. Yang menjadi ViewGroupnya pada screenshot di bawah adalah LinearLayout. LinearLayout menampilkan view-view yang ada di dalamnya secara linear.
Perbedaan dp dan px
Perhatikan gambar di bawah :
Gambar pertama merepresentasikan penggunaan view dengan ukuran bertipe pixel. Ukuran 2 pixel akan tampil berbeda untuk resolusi perangkat yang berbeda. Misal hp A memiliki resolusi medium, sedangkan hp B memiliki resolusi high. Ukuran 2 pixel pada hp A akan kelihatan berbeda dengan 2 pixel pada hp B. Sedangkan di gambar 2, itu merupakan ukuran bertipe density-independent pixel (dp). Ukuran 2 dp akan kelihatan sama di hp dengan resolusi yang berbeda. Maka dari itu, disarankan untuk lebih menggunakan dp untuk kasus perbedaan ukuran di resolusi yang berbeda.
Perbedaan nilai width atau height pada View
Seperti pada gambar di atas, terdapat perbedaan antara 200dp, wrap_content, dan match_parent. Ukuran 200dp akan membatasi lebar atau tinggi view meskipun kontennya lebih dari 200dp sehingga viewnya kelihatan seperti terpotong. Ukuran wrap_content akan menyesuaikan konten yang ada di dalamnya. Dan match_parent akan menyesuaikan dengan parentnya, Viewnya akan mengisi atau fill ruang kosong yang ada di sekita rnya menyesuaikan lebar atau tinggi parentnya.
Berikut project aplikasi contoh menggunakan ScrollView yang menampilkan daftar item berupa gambar dan teks. Pada itemnya kita menggunakan LinearLayout sebagai ViewGroup atau container untuk ImageView dan TextView nya.
Anda dapat mengunduh file project-nya di sini :
https://github.com/Reinhardjs/SimpleScrollTextApp
Screenshot aplikasi :
Perhatikan file layout yang ada pada project. Anda akan menemukan 2 file layout, yaitu activity_main.xml
dan item_layout.xml
Pada file activity_main.xml Anda akan menemukan tag include. Itu maksudnya adalah menginclude atau memasukkan layout dari eksternal. Sesuai yang ada di gambar, tag include-nya meng-include layout dengan nama file item_layout.xml.
Ikuti postingan selanjutnya yaa 😃