Wednesday, April 8, 2020

Buku Pintar JAVA GUI dengan ECLIPSE

Salah satu hal menyenangkan dalam memprogram Java adalah menciptakan grafika dengan efek animasi. Di buku 833 halaman ini, Anda akan mempelajari banyak teknik animasi dan grafika secara bertahap, langkah demi langkah.

Pada Bab 1, Anda akan belajar tentang salah satu efek animasi paling sederhana adalah dengan melakukan penggantian antar dua citra. Anda memiliki sebuah citra dengan warna latar merah. Dengan mengganti warna citra tersebut menjadi hijau, Anda bisa memberikan efek animasi. Kontrol label yang dipakai untuk melakukan efek animasi semacam ini memanfaatkan apa yang dinamakan dengan objek ImageIcon.

Pada Bab 2, Anda akan mengembangkan animasi sederhana sehingga melibatkan lebih dari dua file grafika. Di sini, Anda akan mempelajari pewaktu (Timer). Pada Bab 3, Anda akan membangun projek animasi dengan melibatkan pewaktu dengan melibatkan n buah file citra, sehingga menghasilkan efek animasi yang lebih halus. Pada Bab 4, Anda akan mempelajari tentang bilangan acak. Bilangan acak dipakai pada banyak game. Java memiliki pembangkit bilangan acak yang diciptakan menggunakan kelas Random. Kelas ini berada pada paket java.util.Random.

Pada Bab 5, Anda akan belajar tentang dua kelas Java: Graphics dan Graphics2D (versi terperbaiki). Kedua kelas ini menawarkan sejumlah metode grafika yang dapat dipakai untuk menggambar garis, bangun rektangular, bangun elips, bangun pie, dan poligon.

Pada Bab 6, Anda akan mempelajari bagaimana teknik penggambaran persisten, sehingga jika Anda mengecilkan atau membesarkan ukuran frame, maka objek grafika tetap mampu mengingat apa yang ditampilkan sebelumnya.

Pada Bab 7, Anda akan mempelajari rektangular, yang direpresentasikan oleh bangun Rectangle2D. Pada Bab 8, Anda akan mempelajari bangun Elips. Bangun ini dapat didefinisikan, digambar, dan diisi menggunakan metode-metode yang hampir identik dengan metode-metode rektangular.

Pada Bab 9, Anda akan mempelajari tentang bangun busur. Segmen busur dapat didefinisikan menggunakan bangun Arc2D.

Pada Bab 10, Anda akan mengembangkan projek untuk menciptakan grafik garis, grafik batang, dan grafik pie menggunakan Java.

Pada Bab 11, Anda akan mempelajari bagaimana menyediakan interaksi user pada sebuah aplikasi. Di sini, Anda akan memahami event-event mouse. Anda juga akan menuliskan projek untuk menciptakan sebuah papan lukis. Pada papan tersebut, Anda bisa membuat goresan-goresan dengan sejumlah warna menggunakan mouse.

Pada Bab 12, Anda akan merevisi projek papan lukis, sehingga penggambaran menjadi persisten. Anda akan belajar menggunakan objek Vector untuk menyimpan setiap garis berwarna yang digambarkan pada papan lukis.

Pada Bab 13, Anda akan mempelajari objek-objek bangun yang menjelaskan garis dan segmen kurva dengan menghubungkan titik-titik menggunakan kelas Point2D dan GeneralPath.

Pada Bab 14, Anda akan belajar menggunakan objek GeneralPath untuk menggambar segmen-segmen kurva. Ada dua metode yang bisa dipakai untuk menggambar segmen kurva: quadTo dan curveTo.

Pada Bab 15, Anda akan mempelajari bagaimana menganimasi kurva, dengan melibatkan objek Timer.

Pada Bab 16, Anda akan mempelajari kelas GradientPaint. Kelas ini dapat dipakai untuk mengisi sebuah bangun dengan campuran atas dua warna, yang pada awalnya dimulai dengan satu warna dan secara bertahap menjadi warna lain pada arah yang ditentukan.

Pada Bab 17, Objek penggambaran lain yang disediakan pada Java 2D adalah objek TexturePaint akan didiskusikan. Objek ini melukis sebuah luasan dengan region rektangular berulang.

Pada Bab 18, Anda menggunakan metode grafika drawImage untuk efek animasi. Pada bentuknya yang paling sederhana, metode ini menggambar sebuah objek citra pada posisi tertentu di dalam sebuah objek grafika. Anda juga akan membangun sebuah projek dimana sebuah bola akan memantul dari atas ke bawah panel.

Pada Bab 19, Anda akan mempelajari tentang animasi yang melibatkan penggulungan latar. Anda akan mengetahui bahwa apa yang tampak hebat sekali sebenarnya hanyalah aplikasi sederhana dari metode drawImage.

Pada Bab 20, Anda mempelajari cara untuk melihat apakah dua item bertubrukan atau tumpang tindih atau beririsan. Pengujian tubrukan dilakukan menggunakan metode createIntersection dari kelas Rectangle2D. Anda juga akan membangun sebuah projek, dimana Anda akan menggunakan kunci-kunci kontrol kursor untuk memindahkan satu rektangular dan memeriksa apakah ia bertubrukan dengan rektangular kedua.

Pada Bab 21, Anda akan belajar bagaimana mengimplementasikan aplikasi Stopwatch. Pada projek tersebut, akan digunakan sembilan kontrol pada frame: tiga tombol (kelas JButton), tiga label (kelas JLabel), dan tiga bidang teks (kelas JTextField). Tombol-tombol akan memulai dan menghentikan pewaktuan. Label-label dan bidang-bidang teks akan dipakai untuk menampilkan hasil pewaktuan. Anda akan menempatkan kontrol-kontrol ini pada sebuah array 3 x 3.

Pada Bab 22, Anda akan belajar membangun aplikasi Stopwatch Mode-Ganda. Stopwatch ini dapat dimulai dan dihentikan kapanpun diinginkan. Dua waktu akan dijejak: waktu berlalu ketika stopwatch aktif (waktu berjalan) dan total waktu yang berlalu, mulai dari saat stopwatch pertama kali dimulai sampai akhirnya stopwatch dihentikan.

Pada Bab 23, Anda akan belajar membangun aplikasi Kalkulasi Pinjaman. Kontrol-kontrol label dipakai untuk informasi judul. Empat bidang teks dipakai untuk masukan user. Area teks (areaTeksAnalisis) dipakai untuk menampilkan analisis pinjaman. Pada bab 4, Anda akan belajar membangun game Kuis Pilihan Berganda yang memberikan kuis kepada user tentang propinsi dan ibukotanya. Projek ini mengilustrasikan penggunaan menu dan pembacaan informasi dari file (menggunakan kontrol dialog open file) dalam projek Java.

Pada Bab 24, Anda akan belajar membangun game Kuis Pilihan Berganda yang memberikan kuis kepada user tentang propinsi dan ibukotanya. Projek ini mengilustrasikan penggunaan menu dan pembacaan informasi dari file (menggunakan kontrol dialog open file) dalam projek Java.

Pada Bab 25, Anda akan belajar membangun program Game Matematika Dasar. Soal-soal matematika dasar acak (penjumlahan, pengurangan, perkalian, dan/atau pembagian) menggunakan nilai-nilai dari 0 sampai 9 akan disajikan. Opsi-opsi pewaktuan disediakan untuk membangun keakuratan dan kecepatan.

Pada Bab 26, Anda akan belajar membangun sebuah program game Kartu BlackJack. Pada game ini, Anda akan belajar bagaimana mengimplementasikan game untuk bermain melawan komputer.

Pada Bab 27, Anda akan belajar membangun sebuah aplikasi yang menjejak berat badan setiap harinya dan membantu user memonitor turun naik dari berat badannya. Pada projek ini, user dapat memilih tanggal dari sebuah kalender dan memasukkan berat badannya untuk tanggal tersebut. Grafik dari berat badan harian akan ditampilkan.

Pada Bab 28, Anda akan belajar membangun aplikasi Inventori Barang ini yang dimaksudkan untuk menjejak semua barang berharga yang Anda miliki. Untuk setiap item inventori, program akan menyimpan penjelasan, lokasi, nomor seri, informasi penjualan, dan bahkan foto.

Pada Bab 29, Anda akan belajar membangun game Lempar Salju, dimana dua pemain saling melempar salju ke arah satu sama lain. Di sini, Anda akan belajar mengenal konsep-konsep pemrograman game: animasi, deteksi tubrukan, kendali keyboard, dan suara. Anda juga akan belajar menerapkan konsep pemrograman berorientasi-objek, khususnya pewarisan, dalam pemrograman game.

Pada Bab 30, Anda akan membangun game Kode Rahasia. Kotak deposit bank dikunci dan hanya dapat dibuka jika user memasukkan kombinasi yang tepat. Kombinasi ini dapat berupa 2 sampai 4 dijit tak-berulang (rentang dijit 1 sampai 9). Setelah user mamasukkan tebakan, ia akan diberitahu berapa banyak dijit yang tepat dan berapa banyak dijit yang berada pada posisi yang tepat. Dengan menggunakan informasi ini, user bisa memberikan tebakan selanjutnya. User dapat terus memberikan tebakan sampai kombinasi dijit.

Pada Bab 31, Anda akan membangun game Tic Tac Toe. Konon, ini merupakan game pertama yang diprogram di komputer dan salah satu program yang ditulis oleh Bill Gates ketika ia masih remaja di Seattle. Tujuan dari game ini adalah sebuah garis lurus dengan tiga simbol X atau 3 simbol O pada sebuah grid 3 x 3. Garis lurus itu bisa berupagaris lurus horisontal, vertikal, atau diagonal. Giliran bermain akan diberikan secara bergantian. Versi game yang dibangun di sini membolehkan permainan oleh dua pemain atau satu pemain melawan komputer.

Pada Bab 32, Anda akan membangun sebuah game Mencocokkan Citra. Sepuluh pasang citra disembunyikan pada papan permainan. Tujuan game adalah mencari pasangan-pasangan citra. Pada mode Dua Pemain, para pemain akan mendapat giliran secara bergantian. Pada mode Satu Pemain, ada dua opsi yang bisa dipilih: Bermain Sendiri atau Lawan Komputer. Bila opsi Bermain Sendiri dipilih, pemain akan bermain sendiri tanpa lawan. Jika opsi Lawan Komputer dipilih, maka tingkat kecerdasan komputer disediakan pada beberapa tingkat sesuai dengan level kesulitan game yang disediakan.

Pada Bab 33, Anda akan membangun game Bahtera Nuh. Ini merupakan game sederhana. Sampai dengan 10 kurakura akan berlomba masuk ke bahtera Nuh. Anda menebak dua kura-kura yang Anda anggap bisa memenangkan perlombaan. Dengan mengklik tombol Mulai, perlombaan akan dimulai. Semua kura-kura akan berlomba kecepatan untuk sampai ke garis akhir.

Pada Bab 34, Anda akan membangun game Elias dan Burung Gagak. Burung gagak terbang dan menjatuhkan roti dari langit. User ditantang untuk memosisikan Elias di bawah roti yang jatuh untuk menangkapnya sebagai makanan. 

Pada Bab 35, Anda akan membangun game Daniel dan Singa. Daniel ditempatkan pada sebuah grid dengan sejumlah singa (dan empat batu). Idenya adalah agar Daniel bisa mengeliminasi atau menaklukkan setiap singa dengan cara menembakkan doa. Game akan berakhir ketika Daniel menaklukkan semua singa atau apabila singa menempati posisi Daniel.

Akhir kata, diharapkan buku ini berguna dan bisa meningkatkan keahlian pemrograman GUI Anda menggunakan Eclipse.




Balige, 8 April 2020



Vivian Siahaan
Rismon Hasiholan Sianipar





Jika Anda berminat, silahkan mengunjungi LINK INI





No comments:

Post a Comment