Mengenal Secara Singkat Kodingan Java di Android Studio

Dalam artikel kali ini, saya akan membahas secara singkat mengenai kodingan java di Android Studio. Saya tidak akan membahas secara keseluruhan mengenai bahasa java ini. Saya hanya akan membahas sebuah struktur kode yang dibuat oleh Android Studio ketika membuat sebuah activity. Ok, langsung ke topik utama.

Mengenal Kodingan Java di Android Studio

Ketika anda membuat sebuah activity, Android Studio otomatis akan membuat beberapa baris kode pada file XML dan file Java. File java di Android Studio secara default di namakan dengan MainActivity.java. Lalu apa sebenarnya java ini?

Sekilas Tentang java

Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus pada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source.

Baca Juga: Mengenal XML di Android Studio

Mengapa Java?

Berdasarkan white paper resmi dari SUN yang saya ambil dari ebook JENI, Java memiliki karakteristik berikut :

1. Sederhana

Bahasa pemrograman Java menggunakan sintaks mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance. Java juga menggunakan automatic memory allocation dan memory garbage collection.

2. Berorientasi objek (Object Oriented)

Java mengunakan pemrograman berorientasi objek yang membuat program dapat dibuat secara modular dan dapat dipergunakan kembali. Pemrograman berorientasi objek memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek tersebut.

3. Dapat didistribusi dengan mudah

Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya libraries networking yang terintegrasi pada Java.

4. Interpreter Program

Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM). Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes dapat dijalankan pada platform yang berbeda-beda.

5. Robust

Java mempuyai reliabilitas yang tinggi. Compiler pada Java mempunyai kemampuan mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain. Java mempunyai runtime-Exception handling untuk membantu mengatasi error pada pemrograman.

6. Aman

Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, Java memiliki beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan untuk merusak sistem komputer yang menjalankan aplikasi tersebut.

7. Architecture Neutral Program

Java merupakan platform independent. Program cukup mempunyai satu buah versi yang dapat dijalankan pada platform yang berbeda dengan Java Virtual Machine.

8. Portabel

Source code maupun program Java dapat dengan mudah dibawa ke platform yang berbeda-beda tanpa harus dikompilasi ulang.

9. Performance

Performance pada Java sering dikatakan kurang tinggi. Namun performance Java dapat ditingkatkan menggunakan kompilasi Java lain seperti buatan Inprise, Microsoft ataupun Symantec yang menggunakan Just In Time Compilers (JIT).

10. Multithreaded

Java mempunyai kemampuan untuk membuat suatu program yang dapat melakukan beberapa pekerjaan secara sekaligus dan simultan.

11. Dinamis

Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan pada suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa menggangu program yang menggunakan class tersebut.

Java Virtual Machine (JVM)

JVM adalah sebuah mesin imajiner (maya) yang bekerja dengan menyerupai aplikasi pada sebuah mesin nyata. JVM menyediakan spesifikasi hardware dan platform dimana kompilasi kode Java terjadi. Spesifikasi inilah yang membuat aplikasi berbasis Java menjadi bebas dari platform manapun karena proses kompilasi diselesaikan oleh JVM.

Aplikasi program Java diciptakan dengan file teks berekstensi .java. Program ini dikompilasi menghasilkan satu berkas bytecode berekstensi .class atau lebih. Bytecode adalah serangkaian instruksi serupa instruksi kode mesin. Perbedaannya adalah kode mesin harus dijalankan pada sistem komputer dimana kompilasi ditujukan, sementara bytecode berjalan pada java interpreter yang tersedia di semua platform sistem komputer dan sistem operasi.

Garbage Collection

Banyak bahasa pemrogaman lain yang mengijinkan seorang programmer mengalokasikan memori pada saat dijalankan. Namun, setelah menggunakan alokasi memori tersebut, harus terdapat cara untuk menempatkan kembali blok memori tersebut supaya program lain dapat menggunakannya. Dalam C, C++ dan bahasa lainnya, adalah programmer yang mutlak bertanggung jawab akan hal ini. Hal ini dapat menyulitkan bilamana programmer tersebut alpa untuk mengembalikan blok memori sehingga menyebabkan situasi yang dikenal dengan nama memory leaks.

Program Java melakukan garbage collection yang berarti program tidak perlu menghapus sendiri objek–objek yang tidak digunakan lagi. Fasilitas ini mengurangi beban pengelolaan memori oleh programmer dan mengurangi atau mengeliminasi sumber kesalahan terbesar yang terdapat pada bahasa yang memungkinkan alokasi dinamis.

Struktur Kode Java di Android Studio

Berikut ini adalah beberapa baris kode java di Android Studio yang dibuat otomatis ketika anda membuat sebuah activity.

package com.example.a455lj.contohaplikasi;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

Untuk lebih jelasnya saya akan memberikan penjelasan mengenai kode-kode di atas.

1. Nama Package

package com.example.a455lj.contohaplikasi;

Kode file java yang paling atas adalah sebuah nama package. Ditulis kata “Package” yang merupakan kata kunci java yang disusul dengan nama package kita sendiri. Disana tertulis “com.example.android.contohaplikasi” Ini adalah nama package yang anda tentukan ketika membuat sebuah projek baru. Kegunaannya adalah untuk mengidentifikasi secara unik aplikasi kita di dalam perangkat android. Setiap aplikasi di Google Play-pun memiliki nama package yang berbeda-beda. Semua kode untuk aplikasi anda, akan dikelompokkan di bawah nama package ini.

2. Import Statement

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle;

Berikutnya adalah statemen import dan statement ini digunakan untuk mengimport kelas-kelas java yang tidak kita buat, akan tetapi masih bisa digunakan dalam kode anda. File-file ini memiliki package kode lain dalam framework android yang ditulis oleh tim Android.

Misalnya kita mengimport sebuah kelas AppCompatActivity dari package yang disebut android.support.v7.app. Anda tidak perlu cemas bagaimana detail internal cara kerja dari AppCompatActivity ini, anda hanya langsung memakainya saja dalam kode anda. Tiap kali anda ingin menambahkan kode dari package lain, kita perlu menambahkan statemen import lagi.

3. Deklarasi Class

public class MainActivity extends AppCompatActivity { 

}

Baris kode yang selanjutya adalah deklarasi class. Deklarasi class ini menunjukkan bahwa file ini berisi definisi class yang disebut dengan MainActivity. Berdasarkan baris kode tersebut, MainActivity ini merupakan perluasan dari superclass yang bernama AppCompatActivity, yang berarti mewarisi semua perilaku yang dimiliki oleh AppCompatActivity.

4. @Override

@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 

}

Disini kita meng-override metode onCreate yang awalnya di definisikan dalam class AppCompatActivity. Sebagai pengingat, metode OnCreate ini dipanggil oleh android saat pertama kali membuat suatu instance di MainActivity.

5. setContentView

setContentView(R.layout.activity_main);

Dalam onCreate method, ada baris yang memuat setContentView method dan masuk ke tata letak activity_main sebagai argumen input. Kita memerintahkan android untuk menaruh UI yang didefinisikan  dalam file layout XML ini.

Ok saya rasa artikel mengenai java di Android Studio ini sudah cukup panjang lebar, mungkin banyak di antara kalian yang kurang mengerti dengan beberapa penjelasan saya di atas, seperti override, method, class atau superclass. Anda memang perlu belajar bahasa pemrograman java terlebih dahulu untuk lebih mengerti tentang semua istilah di atas. Saya juga akan membuat artikel mengenai beberapa istilah yang sudah saya sebutkan tadi. Jika anda memiliki pertanyaan atau kritik dan saran mengenai artikel atau blog ini, bisa anda sampaikan di kolom komentar atau di halaman Hubungi Saya.

Terima Kasih.

Leave a Reply

Your email address will not be published. Required fields are marked *