Sudah dua kali semester saya mengajar di praktikum pemrograman Java. Hasilnya, hanya sebagian mahasiswa yang mengerti. Sebagiannya lagi masih pusing (atau mungkin saya yang tidak bisa mengajar).

Bahasa pemrograman Java memang populer dan banyak digunakan di lapangan, oleh karena itu pihak kampus memilih bahasa ini untuk diajarkan pada semester I.

Anak-anak ngoding di sawah

Bapak Endy Muhardin, dalam tulisan di blognya yang berjudul Java: Tidak untuk Pemula mengatakan: “Java memang bahasa yang mature. Sudah stabil (artinya tidak terlalu banyak perubahan fundamental) dan sudah teruji digunakan berbagai aplikasi besar dengan sukses. Tetapi tidak berarti mudah bagi pemula.”

Kemudian saya mencoba mengumpulkan beberapa alasan, kenapa bahasa pemrograman Java kurang cocok untuk pemula?

1. Sintak Susah Dihapal

Menurut saya, sintaks Java agak susah dihapal/diingat. Karena sintaknya cukup panjang.

Pembuatan program Hello World saja sampai sepanjang ini.

package com.petanikode.HelloWorld;

public class HelloWorld {

    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

Pada pertemuan pertama, saya mengajarkan kode di atas.

Besoknya tidak ada yang ingat, kalau tidak mencontek.

Java Hello World!

Bandingkan dengan:

PHP:

<?php
  echo "Hello World!";
?>

Python:

print "Hello World!"

Javascript:

alert("Hello World!");

Bagi yang sudah pernah belajar pemrograman atau sudah menguasai salah satu bahasa pemrograman sebelumnya, mungkin tidak akan kesulitan mengingat dan memahami sintaks Java di atas.

Tapi bagi pemula yang tidak pernah coding sama sekali, akan merasa kesulitan mengingat dan memahaminya.

2. Belum Paham Tentang Package

Seorang pemula akan mempertanyakan banyak hal, karena belum paham apa-apa…

“om, apa maksud dari baris ini:

package com.petanikode.NamaProgram;

package itu apa?”

Itu untuk menandakan lokasi namespace atau lokasi kodenya.

“Wah, namespace itu apa lagi om?”

Hmm… apa ya? (nggak bisa jawab 😄)

2. Belum Belajar Akses Level

“Om, public ini fungsinya untuk apa?”

Pada pemrograman berorientasikan objek, ada yang namanya akses level (public, protected, dan private).

Akses level ini untuk menentukan akses pada class, atribut, dan method.

public fungsinya untuk memberikan akses level publik, artinya class lain bebas mengaksesnya.

Saya tidak paham Java

“Bisa jelaskan dengan bahasa yang sedikit lebih mudah…”

3. Belum Belajar Class

Class itu apa dan untuk apa?”

Class adalah rancangan dari sebuah objek.

“Objek, apaan lagi itu?”

Duh! Akhirnya saya menjelaskan Class itu untuk membuat nama program. Meskipun itu bukan pengertian yang sesungguhnya.

package com.petanikode.NamaProgram;

public class NamaProgram {

    public static void main(String[] args){
        System.out.println("Hello World");
    }

}

4. Belum Belajar Array

Lihat saja pada program HelloWorld di atas, array sudah digunakan untuk menyimpan argumen atau parameter.

Mereka lalu bertanya…

“Kata om tadi String[] args itu sebuah array yang bertipe data String. String itu apa dan Array itu apa?”

Untuk pertemuan pertama ini, kita memang belum belajar ini. Tapi, saya akan mencoba memberikan sedikit penjelasan.

Array itu variabel yang bisa menyimpan banyak data dan String itu tipe data teks.

Paham?

5. Belum Tahu Method Instance dan Static

Static void main itu maksudnya apa?”

“Kenapa harus static dan void?”

main adalah method utama dalam program. Method ini wajib ada agar program bisa dijalankan.

“Tunggu dulu, method itu apa om?”

Method itu fungsi, ok untuk selanjutnya kita sebut saja fungsi untuk memudahkan.

Selanjutnya static itu digunakan agar method/fungsi dapat dieksekusi tanpa harus membuat objek (instansiasi) dari class.

dan void adalah tipe kembalian dari fungsi. void artinya tidak mengembalikan nilai apa-apa (kosong).

Paham?

Akhir Kata…

Jadi, itulah beberapa alasan kenapa bahasa pemrograman Java kurang cocok untuk pemula.

Intinya, karena Java menggunakan paradigma OOP (Object Oriented Programming), sedangkan para pemula belum pernah belajar OOP sebelumnya.

Namun, bukan berarti Java tidak boleh dipelajari oleh pemula. Silahkan dipelajari dengan tekun, pasti bisa!

UPDATE [juli 2017]: Beberapa universitas di dunia akhirnya menyadari, kalau Java adalah bahasa yang kurang bagus untuk diajari pertama kali kepada pemula.

Berdasarkan penelitian Philip Guo pada ACM (Association for Computing Machinery), pada tahun 2014 Python menjadi bahasa yang paling populer untuk memperkenalkan pemrograman pada jurusan teknik informatika/ilmu komputer di US.

Hasil penelitian Philip Guo

Silahkan baca: Universities finally realize that Java is a bad introductory programming language