BlueJ dan Greenfoot: IDE terbaik untuk mempelajari Java

Anda bilang ingin belajar Java. Ini bisa menjadi bahasa yang menakutkan. Bahkan mungkin tampak tidak dapat ditembus jika Anda seorang programmer baru. Tapi, Anda menarik napas dalam-dalam dan bertekad untuk mencobanya. Oke, hal pertama yang pertama: Anda memerlukan salah satu lingkungan pengembangan terintegrasi (IDE) yang telah Anda baca. Satu aplikasi tempat Anda dapat mengedit, membangun, menjalankan, men-debug, dan menerapkan aplikasi Java yang akan segera ditulis.

Beberapa IDE Java gratis yang populer tersedia: Eclipse, NetBeans, dan edisi komunitas IntelliJ, misalnya. Anda memilih satu, mendownload dan menginstalnya, dan dalam waktu yang sangat singkat Anda menyadari bahwa Anda sekarang memiliki dua hal untuk dipelajari: Java dan IDE. Alat pengembangan yang Anda pilih sama sulitnya dengan bahasa yang seharusnya dapat membantu Anda.

Masukkan BlueJ dan Greenfoot, dua IDE yang dirancang khusus untuk pemula. Mereka adalah produk tim yang berbasis di King's College di London (meskipun anggota tim, kadang-kadang, berafiliasi dengan universitas di Australia dan Denmark). Pencipta BlueJ dan Greenfoot memilih set fitur dan desain antarmuka agar tidak membebani pemula.

Faktanya, seperti yang dijelaskan oleh Neil Brown, pengembang utama, fitur BlueJ dan Greenfoot "... terungkap saat pengguna datang ke sana." Anda tidak akan terlempar ke dasar kolam yang dalam. Akibatnya, keduanya memberikan pengenalan yang mudah tidak hanya untuk bahasa Java, tetapi juga alat dan teknik yang diperlukan untuk membangun aplikasi dalam bahasa tersebut.

Belajar Java dengan BlueJ

BlueJ pertama kali muncul pada tahun 1999, dengan nama sederhana Blue. Pada saat itu, itu adalah lingkungan pengembangan dan bahasa. Ketika Java muncul, alat itu dibangun kembali menggunakan Java sebagai bahasa dan namanya diubah menjadi BlueJ.

Edisi BlueJ tersedia untuk Linux, MacOS, dan Windows. BlueJ juga hadir dalam bentuk umum: dikemas sebagai file JAR sehingga BlueJ dapat diinstal pada sistem apa pun yang mendukung Java. Versi BlueJ saat ini (4.2.2 pada saat penulisan ini) membutuhkan JDK 11 atau yang lebih baru, dan karena itu harus dijalankan pada sistem operasi 64-bit. Sebelumnya, versi 32-bit sudah ada, tetapi tidak lagi dikembangkan.

Saya pertama kali menyadari BlueJ (dan Greenfoot) ketika saya menemukannya sudah diinstal sebelumnya pada Raspberry Pi 4 yang saya dapatkan tahun lalu. Saya kemudian mengetahui bahwa BlueJ telah diinstal pada Raspberry Pi sejak 2015.

Buka sebuah proyek di BlueJ dan Anda akan disajikan dengan jendela yang sangat jarang: bilah menu di bagian atas, bilah alat di sebelah kiri area meja kerja yang besar, dan panel bangku objek yang lebih kecil di bawah. Tombol pada toolbar memungkinkan Anda membuat kelas, menentukan hubungan warisan, atau menyusun kelas. Kelas proyek muncul di meja kerja sebagai semacam diagram UML yang dikupas, dan sementara BlueJ bukanlah lingkungan pengembangan visual yang lengkap, itu cukup satu sehingga Anda dapat melihat hubungan antar entitas dalam program Anda, tetapi tidak melupakan dari kode.

Klik dua kali pada ikon kelas di meja kerja, dan sumbernya terbuka di editor, di mana bantuan visual lain terungkap: penyorotan cakupan. Dengan sorotan ruang lingkup, blok kode bersarang secara harfiah disorot dalam latar belakang berwarna berbeda, sehingga Anda dapat dengan cepat melihat area yang dicakup oleh metode di dalam kelas, forloop dalam metode, ifpernyataan dalam forloop itu, dan seterusnya. Struktur kode langsung terlihat.

Klik kanan pada kelas di meja kerja, dan menu baru muncul yang — bergantung pada sifat dan susunan kelas — memungkinkan Anda mengompilasi kelas, memeriksa isinya, membuat kelas pengujian yang sesuai (lebih lanjut tentang ini nanti), mengeksekusi metode kelas, atau membuat instance objek kelas. Di sini, interaktivitas BlueJ menjadi pusat perhatian.

Kelas dapat dikompilasi secara individual; Anda tidak perlu membangun kembali seluruh proyek jika Anda telah memodifikasi satu kelas. Pilih untuk menjalankan metode kelas dan sebuah dialog muncul, meminta Anda untuk memasukkan metode. Masukkan input, klik OK, dan dialog lain terwujud, menunjukkan nilai yang dikembalikan dan tipe datanya.

Jika Anda membuat instance kelas, ikon yang mewakili objek baru muncul di bangku objek. Seperti halnya kelas, Anda dapat mengklik kanan ikon objek dan memeriksa konten objek. Anda juga dapat menjalankan metode instance objek individu; dialog muncul (seperti di atas) untuk memasukkan argumen input dan menampilkan nilai kembali.

BlueJ tidak akan menjadi IDE lengkap tanpa debugger. Anda dapat menyetel breakpoint debugger di BlueJ dengan cara yang sama seperti yang Anda lakukan di IDE lain. Di editor, cukup klik di kolom di sebelah kiri baris kode sumber yang ditargetkan. Ketika, selama eksekusi, breakpoint dipicu, pop-up debugger BlueJ terbuka, menampilkan utas, tumpukan panggilan, kunci statis, dan variabel instan, serta kontrol debugging yang sudah dikenal (melangkah, melangkah ke, melanjutkan, dan berhenti). Sekali lagi, presentasi BlueJ yang rapi tidak menghalangi Anda dan tugas yang ada.

Seperti disebutkan di atas, BlueJ dapat membuat kelas pengujian dari menu klik kanan ikon kelas. Kelas yang dibuat secara otomatis adalah kelas uji JUnit kerangka (JUnit 4 terintegrasi dengan BlueJ). Ini terdiri dari konstruktor kosong setUp(),, dan tearDown()metode. Anda dapat membuat metode pengujian dengan membuka sumber kelas di editor, atau menggunakan semacam wizard bawaan yang — melalui serangkaian dialog — memandu Anda dalam membuat metode pengujian.

Demikian pula, BlueJ memberikan bantuan untuk membuat aplikasi grafis JavaFX dan Swing. Tutorial disediakan, dan bekerja melalui tutorial JavaFX mengungkapkan manfaat nyata menggunakan kemampuan BlueJ untuk mengeksekusi metode pada objek "hidup" (saat aplikasi sedang berjalan). Anda sebenarnya dapat melihat hasil dari pemanggilan metode pada komponen grafis.

Tutorial interaktif built-in BlueJ membantu Anda memulai. Jika Anda membutuhkan lebih banyak materi pendidikan, buku Objects First with Java , yang ditulis bersama oleh pencipta BlueJ Michael Kölling, menggunakan BlueJ sebagai lingkungan pengembangan untuk menyajikan pendekatan pemula untuk pemrograman berorientasi objek di Java.

Belajar Java dengan Greenfoot

Dibuat di BlueJ oleh pencipta yang sama, Michael Kӧlling, Greenfoot adalah IDE yang lebih terspesialisasi daripada BlueJ. Sementara BlueJ sering digunakan dalam pengaturan kursus pemrograman pengantar tingkat universitas, Greenfoot ditargetkan untuk pengguna yang lebih muda; semuda 14 tahun. Untuk menangkap dan mempertahankan perhatian audiens yang lebih muda, Greenfoot telah dibuat sebagai "IDE Java dan kerangka kerja animasi". Artinya untuk membangun game.

Untuk memahami Greenfoot, Anda harus mempelajari terminologinya terlebih dahulu. Proyek Greenfoot adalah "skenario". Setiap skenario memiliki "dunia", yang merupakan arena bermain game Anda. Ini adalah wadah dua dimensi yang dihuni oleh "aktor". Hati-hati di sini — aktor Greenfoot bukanlah jenis tertentu dari entitas pemrograman bersamaan berorientasi objek dan berorientasi objek dengan nama yang sama (lihat //en.wikipedia.org/wiki/Actor_model). Aktor kaki hijau adalah bagian dari permainan Anda.

Seorang aktor Greenfoot memiliki atribut dan metode (karakteristik dan perilaku). Salah satu ciri seorang aktor adalah penampilannya — ikon yang ditampilkan di dunia untuk mewakili aktor tersebut. Greenfoot hadir dengan berbagai gambar aktor untuk Anda mulai, atau Anda dapat membuat dan mengimpor gambar Anda sendiri.

Susunan visual Greenfoot adalah bayangan cermin dari BlueJ. Jendela utama Greenfoot adalah dunia. Di sebelah kanannya, toolbar vertikal diisi dengan diagram warisan kelas proyek. Biasanya, ada dua "pohon" warisan di toolbar, satu di-root di Worldkelas dasar , yang lain di-root di Actorkelas dasar . Kelas turunan bercabang dari dua akar ini.

Seperti pada BlueJ, mengklik dua kali ikon kelas akan membuka sumber terkait di jendela editor. Editor Greenfoot identik dengan BlueJ, yang tidak mengherankan, karena hampir semua BlueJ dijalankan di bawah Greenfoot. Jadi editor Greenfoot memiliki sorotan lingkup BlueJ, dan debugger Greenfoot bekerja persis seperti milik BlueJ.

Memodifikasi kelas di editor, dan ikonnya di diagram pewarisan dibuat silang. Ini menunjukkan bahwa kelas harus dikompilasi ulang sebelum dapat digunakan untuk membuat instance objek. Selain itu, semua objek di dunia yang berasal dari kelas itu menjadi buram (tidak lagi dalam bentuk relief tajam) untuk menunjukkan bahwa sekarang sudah usang. Untungnya, seperti di BlueJ, Anda dapat mengkompilasi kelas secara individual.

Setelah Anda membuat instance aktor, Anda dapat menempatkannya di dunia dengan menyeret dan melepaskan ikonnya ke panel jendela dunia. Sebenarnya Anda tidak perlu menempatkan aktor di dunia sebelum metode aktor dapat dipanggil. Klik kanan pada aktor untuk memilih metode panggilan. Jika metode tersebut memerlukan parameter masukan, dialog terbuka yang memungkinkan Anda untuk memasukkan parameter.

Waktu harus mengalir di dunia Greenfoot agar aktor dapat bergerak. Tapi ini adalah dunia digital, jadi waktu berjalan cepat dalam hitungan jam internal — putaran pembaruan. Dua tombol — Act and Run — mengontrol eksekusi loop itu. Klik tombol Act, dan loop berjalan sekali. Klik Run, tombol menjadi Pause, dan loop berjalan sampai Anda mengklik tombol lagi untuk menghentikannya. Tombol-tombol ini, tentu saja, sangat berguna untuk menguji dan men-debug game Anda.

Jika Anda harus menangguhkan sesi pengembangan skenario Anda dan ingin melanjutkan dari bagian terakhir yang Anda tinggalkan, Anda dapat menyelamatkan dunia (yang tidak sedramatis kedengarannya). Greenfoot akan menangkap lokasi dan keadaan aktor di dunia, dan mengkodekan informasi tersebut untuk metode yang disebut oleh konstruktor aktor. Hasilnya: Panggung Anda akan tersusun kembali saat Anda memulai Greenfoot IDE.

Selama bermain game, apa yang terjadi jika dua aktor bertabrakan? Atau ada yang meledak? Sebuah permainan harus memiliki efek suara. Greenfoot dapat mengimpor file .wav ke dalam skenario, dan metode memungkinkan Anda memutar suara tersebut saat peristiwa tertentu dipicu. Tidak ada yang menghentikan Anda untuk meminjam suara apa pun yang disediakan dengan berbagai tutorial di situs web Greenfoot. Namun jika Anda ingin membuatnya sendiri, Greenfoot menyediakan perekam suara bawaan. Kemampuan pengeditan perekam sederhana tetapi dapat digunakan. Ini pada dasarnya adalah sistem "tangkap dan potong".

Terakhir, jika Anda membutuhkan ide permainan di luar yang disediakan dalam tutorial Greenfoot, situs web Greenfoot dipenuhi dengan skenario yang dibuat dan diunggah oleh pengguna dari seluruh dunia. Beberapa bahkan dapat dimainkan secara online. Dapat dipahami bahwa kualitasnya tidak teratur, tetapi variasi permainan membuktikan keserbagunaan Greenfoot.

Batu loncatan untuk pemrograman Java pro

Menurut pencipta Michael Kӧlling, meskipun BlueJ biasanya digunakan dalam kursus pemrograman pengantar universitas, Greenfoot cocok untuk digunakan di sekolah menengah. Meskipun demikian, berapa pun usia Anda, Anda bisa mendapatkan banyak manfaat dari kedua IDE jika Anda baru saja menginjakkan kaki di jalan menuju pendidikan mandiri Java.

Di luar tutorial yang telah disebutkan, ada banyak materi pendukung di situs web BlueJ dan Greenfoot. Kami telah menyebutkan buku teks BlueJ; sebuah buku teks juga tersedia untuk Greenfoot, Pengantar Pemrograman dengan Greenfoot . (Lihat situs web untuk informasi pembelian.)

Tidak ada IDE yang cocok untuk membangun aplikasi Java tingkat perusahaan yang siap produk. Namun sebagai kendaraan pengantar bagi siapa pun yang baru mengenal Java, mereka mencentang semua kotak, dan tidak membebani Anda dengan kompleksitas toolbar dan menu. Mereka adalah batu loncatan yang kokoh dan mulus untuk pengembangan Java tingkat profesional.