Anda di halaman 1dari 49

PEMROGRAMAN BERORIENTASI OBYEK MODUL

MATERI

Konsep Pemrograman Berorientasi Obyek 1

PETA KONSEP Konsep Pemrograman


Berorientasi Objek

Mempelajari

Paradigma Perbandingan pemrograman Instalasi Perangkat


pemrograman prosedural dan Lunak pemrograman
berorientasi objek pemrograman berorientasi berorientasi obyek
obyek

 Konsep Dasar Class  Bahasa Pemrograman Java


 Konsep Dasar Obyek  Software Pendukung dan
 Karakteristik Pemrograman Pengembang
Berorientasi Obyek  Instalasi JRE dan JDK
 Keuntungan dan Kerugian PBO  Instalasi Greenfoot, Eclipse
Mengulas
MODUL PEMROGRAMAN BERORIENTASI OBYEK

Konsep Pemrograman Berorientasi Obyek

Pembelajara 1
n

A TUJUAN PEMBELAJARAN

Setelah mempelajari modul ini, siswa diharapkan mampu:


1. Mendeskripsikan paradigma pemrograman berorientasi obyek
2. Mendeskripsikan perbandingan pemrograman prosedural dan
pemrograman berorientasi obyek
3. Menyajikan instalasi perangkat lunak pemrograman berorientasi obyek

CEK PENGUASAAN AWAL

Perhatikan ilustrasi 2 buku cerita berikut ini!

Gambar A Gambar B
(Sumber: http://www.alibaba.com) (Sumber: http://jurnalistik.co)

Berdasarkan dua ilustrasi di atas, jawablah pertanyaan berikut ini!


1. Apa yang kamu ketahui tentang Gambar A?
2. Apa yang kamu ketahui tentang Gambar B
3. Berdasarkan kedua gambar itu, buku cerita mana yang lebih mudah
dimengerti?
4. Kenapa buku cerita tersebut lebih mudah dimengerti ?
Jawablah pertanyaan tersebut pada kotak dibawah ini

2 SMK NEGERI 6 MALANG


KONSEP PEMROGRAMAN BERORIENTASI OBYEK

B MATERI

Dalam pengembangan perangkat lunak / software. Banyak bahasa


pemrograman yang bisa digunakan untuk membuat program, baik untuk membuat
aplikasi berbasis offline ataupun berbasis online yang memerlukan koneksi
internet, untuk bisa digunakan. Selain itu, dalam pengembangan perangkat lunak,
ada berbagai paradigma pemrograman yang dapat diterapkan ketika proses
pengembangan perangkat lunak, sehingga bentuk kode program menjadi
terstruktur dan mudah dimengerti oleh orang lain (programmer lain).
Paradigma pemrograman berarti, bagaimana cara pandang penyelesaian
masalah dalam pemrograman. Ada banyak cara / siasat menyelesaikan
permasalahan di dunia nyata, sehingga ada banyak paradigma yang bisa
diterapkan untuk menyelesaikan permasalahan dalam membuat program.
Terdapat bermacam paradigma pemrograman yang bisa dipakai untuk
membuat perangkat lunak, namun yang paling umum digunakan adalah,
paradigma pemrograman fungsional, prosedural, dan berorientasi obyek. Karena
paradigma adalah sudut pandang cara / siasat untuk menyelesaikan permasalahan,
maka suatu bahasa pemrograman, dapat menerapkan bermacam paradigma guna
membuat solusi dari permasalahan berupa perangkat lunak.
Contoh bahasa pemrograman yang dapat menerapkan beragam paradigma
pemrograman antara lain C++, Java, C#, Perl, Python, Ruby,Object Pascal.
Sebagai contoh, program yang ditulis dalam bahasa pemrograman C++ atau
Object Python, ketika pembuatannya dapat menerapkan paradigma pemrograman
prosedural murni ataupun paradigma pemrograman berorientasi obyek murni, atau
bahkan menerapkan bagian-bagian dari kedua paradigma tersebut ketika dalam
proses pengembangan. Pemilihan paradigma hingga penerapan bagian pada tiap
-tiap paradigma akan diputuskan oleh programmer dan software desainer saat
merancang dan membuat sebuah perangkat lunak.
Namun, juga terdapat bahasa pemrograman yang hanya mendukung satu
jenis paradigma pemrograman seperti, bahasa pemrograman Smalltalk, dimana
bahasa pemrograman smalltalk hanya dapat menerapkan paradigma pemrograman
berorientasi obyek, atau bahasa pemrograman Haskell yang hanya bisa
menerapkan paradigma pemrograman fungsional.
Dari sini, dapat disimpulkan paradigma pemrograman adalah sudut
pandang, bagaimana menyelesaikan suatu permasalahan melalui beragam cara
ketika proses pengembangan perangkat lunak.

REKAYASA PERANGKAT LUNAK 3


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
Paradigma Pemrograman Berorientasi
1 Obyek

Sekarang siswa akan mempelajari salah satu paradigma pemrograman


dengan lebih spesifik, yaitu paradigma pemrograman berorientasi obyek. Apa itu
paradigma pemrograman berorientasi obyek? paradigma pemrograman
berorientasi obyek adalah sebuah paradigma pemrograman yang berkonsep
bahwa, data seperti attributes, kode program (source code), prosedur atau method
tersimpan dalam obyek. Tiap obyek tersebut berada di dalam class. Obyek dalam
class ini, saling berkomunikasi guna menyelesaikan permasalahan dalam ranah
pengembangan perangkat lunak.
A. Konsep Dasar Class
Pernahkah kalian membantu ibu kalian membuat kue? Atau ketika kalian
ingin membeli kue putu pada seorang penjual yang tengah lewat? Jika iya,
pernahkah kalian memperhatikan cetakkan kue yang dimiliki ibu kalian? Atau
cetakan kue putu yang terbuat dari bambu? Cetakan kue tersebut adalah contoh
nyata sebuah class dalam bagian pemrograman berorientasi obyek. Jadi, apa itu
class? class adalah sebuah cetak biru (blueprint) / template untuk obyek yang
akan dibuat. Cetakkan kue putu dari bambu, ibarat class dalam pemrograman
berorientasi obyek, sedangkan kue putu adalah obyek dalam pemrograman

Class Object

Gambar 1.1 Cetakkan kue putu dan putu


(Sumber: http:// http://ciricara.com)
berorientasi obyek.

B. Konsep Dasar Obyek


Di sekitar kalian, kalian akan melihat berbagai macam obyek, seperti
manusia, binatang, tumbuhan, bangunan, komputer, dan sebagainya. Selain itu,
obyek yang ada di sekitar kalian juga dapat dibedakan berdasarkan jenisnya, yaitu
obyek bergerak dan obyek tidak bergerak, obyek bergerak berarti “hidup”, atau
bisa dikatakan dapat bergerak dan melakukan sesuatu. Berbeda dengan obyek

4 SMK NEGERI 6 MALANG


tidak bergerak, obyek tersebut tidak dapat bergerak atau melakukan sesuatu
dengan sendirinya. Walaupun begitu, kedua jenis obyek tersebut mempunyai dua
persamaan. Mereka memiliki attributes / ciri, seperti ukuran, warna, bentuk,
hingga berat. Mereka juga mempunyai tingkah laku seperti, menggelinding,
memantul, mengembang, mengempis. Seorang bayi bisa menangis, merangkak,
berjalan, berkedip; atau mobil yang berakselerasi, mengerem, berbelok dan
sebagainya. Berbagai contoh di atas adalah contoh ciri dan tingkah laku suatu
obyek dalam dunia nyata.

Konsep obyek juga identik dalam paradigma pemrograman berorientasi


obyek. Suatu obyek dalam pemrograman, memiliki ciri-ciri / attributes dan juga
tingkah laku / methods / procedures yang berbentuk kode program.

Attributes
(ukuran, warna, bentuk,
berat)
Obyek
(Bola)
Method
(menggelinding,
memantul, mengembang)

Gambar 1.2. Contoh Obyek Berupa Bola.

C. Karakteristik Pemrograman Berorientasi Obyek


Hampir semua benda memiliki karakteristik, baik benda hidup maupun
benda mati, begitu juga dengan paradigma pemrograman itu sendiri, berikut
adalah karakteristik dari paradigma pemrograman berorientasi obyek:

 Abstraction (Abstraksi)
Abstraksi adalah proses mengabstrakkan atau menyembunyikan kerumitan
dari suatu proses. Sebagai contoh, kalian memiliki sepeda motor, ketika
kalian ingin mengerem untuk berhenti, kalian cukup menekan pedal rem,
di sinilah letak fungsi abstraksi dalam dunia nyata. Kalian tidak perlu tahu
bagaimana alur/proses pedal rem, dapat menghentikan laju kendaraan
kalian. Yang perlu diketahui adalah fungsinya saja, yaitu pedal rem untuk
menghentikan laju kendaraan. Itu adalah contoh penggunaan abstraksi
didunia nyata.

 Encapsulation (Enkapsulasi)
Enkapsulasi adalah pembungkusan attribute (ciri) dan method (perilaku)
yang dimiliki obyek dalam sebuah class, untuk disembunyikan dari class
lain, sehingga class lain tidak dapat mengakses attribute dan method yang
disembunyikan tadi. Agar dapat mengakses attribute dan method yang

REKAYASA PERANGKAT LUNAK 5


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
terenkapsulasi dalam

4 SMK NEGERI 6 MALANG


sebuah class, maka harus dibuat method yang memiliki hak akses bertipe
public.

Sekilas, Abstraksi dan Enkapsulasi hampir mirip


dalam paradigma pemrograman berorientasi
obyek. Yang menjadi perbedaan utama dari kedua
karakteristik tersebut ialah, abstraksi lebih fokus
pada penyembunyian cara kerja / Implementation
Hiding. Sedangkan enkapsulasi lebih fokus pada
penyembunyian data / Information Hiding

 Inheritance (Pewarisan)
Inheritance / pewarisan adalah sebuah mekanisme dimana sebuah class
utama (superclass) mewariskan karakteristik (attribute) dan perilaku
(method) kepada class turunan (subclass). Manfaat dengan adanya
pewarisan adalah saat kalian membuat sebuah class baru, ketika sebuah
class dibuat sebagai class turunan (subclass), dan kalian menerapkan
pewarisan terhadap class turunan tersebut, maka attributes dan method
dari class utama (superclass), akan ikut dimiliki oleh class turunan yang
baru kalian buat.

Superclass
Subclass

 Polymorpishm (polimorfisme)
Polimorfisme berasal dari 2 kata dalam bahasa Yunani, yaitu poly dan
morphs. Kata “poly” berarti banyak dan “morphs” berarti bentuk. Jadi
polimorfisme berarti banyak bentuk. Apabila dikaitkan dengan
Gambar 1.3 Ilustrasi Pewarisan Pada Hewan.
(Sumber: http://tutorial4us.com)
pemrograman berorientasi obyek, dapat diartikan bahwa sebuah object
memiliki kemampuan untuk dapat berubah-ubah. Sebagai contoh, terdapat
sebuah object yaitu hewan, yang meliputi burung, ular, katak, dan singa
kemudian object berupa hewan tersebut bergerak sehingga burung akan
terbang, ular akan merayap, katak akan melompat, singa akan berlari.
Keempat hewan tersebut memiliki perilaku (method) yang sama, yaitu
bergerak. Namun, method tersebut menghasilkan gerakan yang berbeda,
yaitu terbang,

6 SMK NEGERI 6 MALANG


merayap, melompat, dan berlari. Maka dapat disimpulkan bahwa
polimorfisme adalah kemampuan sebuah obyek untuk mempunyai lebih
dari bentuk untuk sesuatu hal yang berbeda (terbang, merayap, melompat,
berlari), melalui cara yang sama (bergerak).

D. Keuntungan dan Kerugian Menggunakan Paradigma Pemrograman


Berorientasi Obyek
Pemrograman berorientasi obyek memiliki beberapa keuntungan dan
kerugian dibanding dengan paradigma pemrograman lain, yaitu:
 Keuntungan Pemrograman Berorientasi Obyek:
o Alami atau natural, pemrograman berorientasi objek dapat
melakukan pendekatan terhadap objek yang menggambarkan sesuatu
yang nyata, seperti sifat suatu benda maupun kegunaan dari benda
tersebut.
o Kemudahan dalam perawatan perangkat lunak, pemrograman
berorientasi objek akan mudah dalam perawatan dan memodifikasi
kode yang sudah ada. Tanpa perlu mengubah keseluruhan komponen
project/software yang ada.
o Konsep enkapsulasi dimana penulis kode memiliki kemampuan
untuk menyembunyikan ataupun mengatur jangkauan akses
sebuah data, sehingga secara langsung meminimalisir Coupling
(ketergantungan antar class) dan memaksimalkan Cohesion (efisiensi
kerja sama kumpulan data dalam sebuah class).
o Pemrograman berorientasi objek meminimalisir kemungkinan
terjadinya kesalahan oleh sang penulis kode (human-error). Pada
project berskala besar karena adanya limitasi agar potongan kode yang
satu tidak merusak potongan kode lainnya baik secara sengaja ataupun
tidak sengaja.

 Kerugian Paradigma Pemrograman Berorientasi Obyek


o Sulit dipahami, karena model pengembangan perangkat lunak dengan
paradigma ini terasa tidak alami bagi sebagian orang, dan mungkin
memerlukan waktu untuk terbiasa menerapkan paradigma ini.
Karakteristik seperti pewarisan dan polimorfisme bisa menjadi sesuatu
yang menantang ketika berusaha memahami untuk pertama kalinya.
o Ukuran program yang besar, biasanya program yang dikembangkan
dengan paradigma berorientasi object, mempunya baris kode yang
lebih banyak jika dibandingkan dengan program hasil paradigma
pemrograman prosedural
o Program lebih lamban. Jika dibandingkan dengan prosedural,
berjalan lebih lambat, karena setiap tindakan memerlukan input
instruksi lebih banyak untuk bisa dijalankan.

REKAYASA PERANGKAT LUNAK 7


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
o Tidak cocok untuk semua jenis permasalahan, karena ada
permasalahan yang dapat lebih efisien diselesaikan dengan paradigma
prosedural, fungsional, dan lain-lain.

10 SMK NEGERI 6 MALANG


Perbandingan Paradigma Pemrograman POP &
2 OOP
Setelah membahas mengenai pemrograman berorientasi obyek, pada
bagian ini, siswa akan membandingkan paradigma pemrograman berorientasi
obyek (Object Oriented Programming) dengan paradigma pemrograman
prosedural (Procedural Oriented Program). Berikut adalah garis besar
perbandingan paradigma tersebut:

Tabel 1.1 Perbandingan OOP Dengan POP


Procedural Oriented Object Oriented Program
Program
Dibagi Program dibagi menjadi Program dibagi menjadi
menjadi bagian-bagian kecil yang beberapa bagian yang disebut
disebut fungsi / functions obyek / object
Prioritas Prioritas diberikan kepada Prioritas diberikan kepada
fungsi dan urutan tindakan data daripada prosedur atau
yang harus diselesaikan fungsi, karena berkonsep
pada obyek
Hak Akses Tidak memiliki pemisah antar Memiliki pemisah antar hak
hak akses akses, seperti public, private,
protected dan sebagainya
PerpindahanData berpindah dengan bebas Obyek dapat bergerak dan
Datadari fungsi satu menuju berkomunikasi satu sama lain
fungsi lainnya pada sistem melalui fungsi anggota
Pengembangan Menambahkan fungsi dan Menyediakan cara mudah
data baru tidak begitu mudah untuk menambahkan fungsi
dan data baru

Akses Data Kebanyakan fungsi Data tidak bisa berpindah


menggunakan data bersifat dengan bebas melalui fungsi,
global untuk membagikan karena adanya hak akses,
data ketika diakses oleh sehingga distribusi data dapat
fungsi dari sistem di kontrol
Penyembunyia Tidak memiliki cara yang Memiliki fitur
n Data tepat untuk menyembunyikan penyembunyian data,
data sehingga kurang aman sehingga lebih aman
Instalasi Perangkat Lunak
3 OOP
A. Bahasa Pemrograman Java
Pada bagian ini, siswa akan mulai mempraktikkan paradigma
pemrograman berorientasi obyek melalui sebuah bahasa pemrograman, yaitu
bahasa pemrograman Java. Apa itu Java? Java adalah salah satu bahasa
pemrograman tingkat tinggi (disebut tingkat tinggi, karena bentuk bahasanya
mendekati bahasa manusia) yang berorientasi obyek, dan dapat dijalankan di
berbagai platform (seperti macOS, Linux, Windows, Android) karena adanya fitur
Java Virtual Machine (JVM). JVM berfungsi untuk menerjemahkan instruksi-
instruksi dari bahasa pemrograman Java menjadi instruksi yang bisa dimengerti
oleh mesin (machine language). Berkat adanya fitur tersebut, pemrograman Java
banyak diterapkan di berbagai ranah teknologi, seperti aplikasi android pada sisi
perangkat lunak, framework SpringMVC pada sisi web, atau bahkan hardware
seperti Blueray Player, Cash Machine (ATM) juga menggunakan bahasa
pemrograman Java.

B. Software Pendukung dan Pengembang


Untuk mempelajari paradigma pemrograman berorientasi obyek,
melalui bahasa pemrograman Java, siswa akan menggunakan dua aplikasi
yang telah disediakan. kedua program tersebut adalah Greenfoot, Eclipse.
Melalui program Greenfoot, siswa akan mempelajari konsep
pemrograman berorientasi obyek secara lebih abstrak. Yaitu dengan mulai
menerapkan bahasa pemrograman Java untuk membuat permainan / game
dua dimensi. Namun, tetap memberikan pendekatan nyata pada proses
pembuatan game, karena tetap melibatkan obyek-obyek dalam langkah
pembuatannya.
Melalui program kedua yaitu Eclipse, siswa akan masuk pada
pemrograman berorientasi obyek yang sesungguhnya, yaitu dengan
menggunakan bahasa pemrograman komputer bernama Java. Dengan
Eclipse, siswa dapat membuat berbagai jenis aplikasi, seperti kalkulator,
translator, atau bahkan sebuah aplikasi yang layak untuk dijual.
Sebelum siswa mengistal ketika program tersebut, siswa perlu
beberapa software pendukung, agar ketika program tersebut dapat
digunakan dengan baik.
Software pendukung tersebut adalah Java Runtime Environment
(JRE) dan Java Development Kit (JDK). Java Runtime Environment (JRE)
adalah perangkat lunak yang digunakan untuk membuka aplikasi yang
dibangun menggunakan bahasa pemrograman Java. Versi JRE harus sama
atau lebih tinggi dari JDK yang digunakan untuk membuat aplikasi Java.
Sedangkan Java Development Kit (JDK) adalah seperangkat komponen

12 SMK NEGERI 6 MALANG


aplikasi yang menyediakan berbagai alat untuk pembuatan aplikasi
berbasis Java.

REKAYASA PERANGKAT LUNAK 9


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
C. Instalasi Java Runtime Environment (JDK) dan Java Runtime
Environment (JRE)
JRE dan JDK mempunyai dua edisi, yaitu 32-bit untuk operasi sistem 32
bit, dan 64-bit untuk operasi sistem 64 bit. Berikut adalah langkah-langkah
instalasi JDK dan JRE pada operasi sistem Windows 32-bit:
1. Double click file, jdk-8u112-windows-i586.exe. Dan tunggu hingga
menampilkan jendela setup seperti di bawah ini, dan klik Next.

Gambar 1.4 Jendela Penginstalan JDK.


2. Setelah menekan tombol Next, installer JDK menampilkan komponen apa
saja yang ingin di-install dan dimana lokasi JDK ingin terinstal, klik
tombol change untuk memilih lokasi JDK akan terinstal, sesuaikan dengan
kebutuhan atau biarkan sesuai setting default, jika sudah tekan tombol
Next.

Gambar 1.5 Pemilihan Komponen dan Lokasi.


3. Proses instalasi akan berjalan, tunggu hingga proses instalasi selesai.

10 SMK NEGERI 6 MALANG


4. Ketika proses instalasi sedang berjalan, maka siswa akan mendapati
tampilan jendela dialog lagi, di sini siswa diminta untuk menentukan
lokasi penginstalan salah satu komponen pemrograman Java, yaitu Java
Runtime Environment (JRE). Klik Change…, jika siswa ingin mengubah
lokasi JRE. Jika telah selesai, klik Next untuk melanjutkan instalasi.

5. Instalasi
JRE
akan
dimulai.
6. Gambar 1.6 Jendela Penginstalan JRE. Jika
proses
instalasi berjalan lancar, maka JDK dan JRE telah terpasang pada
komputer. Untuk menutup jendela instalasi, tekan tombol Close.
7. Sampai tahap ini, siswa dapat memulai menginstal aplikasi Greenfoot dan
Eclipse.

D. Instalasi Greenfoot
Berikut adalah tahapan penginstalan aplikasi Greenfoot:
1. Double click, pada file Greenfoot-windows-304.exe untuk memulai
penginstalan aplikasi.
2. Pada jendela welcome, pilih Next.
3. Pada tahap ini, siswa akan diberi pilihan. Apakah aplikasi Greenfoot ini
tersedia untuk digunakan oleh pengguna lain, atau hanya siswa sendiri
yang bisa menggunakannya, pilih sesuai kebutuhan. Lalu pilih Next.
4. Centang semua opsi yang tersedia lalu pilih Next.

REKAYASA PERANGKAT LUNAK 11


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
5. Selan
jutny
a,
siswa
akan

Gambar 1.7 Opsi Pemasangan shortcut dan Asosiasi Extensi.

(Sumber: Dokumen Penulis)


disuguhkan jendela instalasi yang meminta siswa untuk menentukan lokasi
dimana aplikasi Greenfoot berada. Pilih Next, lalu pilih Install.
6. Jika proses instalasi telah selesai. pilih finish untuk menutup jendela
instalasi.
E. Instalasi Eclipse
Eclipse tersedia dalam berbagai edisi dan beberapa versi, untuk
pengembangan aplikasi berbasis Java dengan fitur GUI, siswa akan menggunakan
Eclipse IDE for Java versi 4.5 (Mars). Sebenarnya terdapat versi terbaru untuk
pengembangan aplikasi Java pada Eclipse, yaitu versi 4.7 (Oxygen), namun pada
edisi Eclipse tersebut, tidak tersedia plugin bawaan untuk membuat aplikasi
dengan GUI pada Java, sehingga user harus memiliki koneksi internet untuk
mengunduh plugin tersebut apabila user ingin membuat aplikasi yang memiliki
tampilan GUI. Aplikasi Eclipse sendiri adalah aplikasi portable, untuk
menggunakan aplikasi ini tidak diperlukan proses instalasi aplikasi, sehingga
cukup di extract saja pada lokasi yang diinginkan. Berikut adalah tahapan
penginstalan aplikasi Eclipse:
1. Pindahkan file eclipse-java-mars-2-win32-x86_64.zip pada lokasi yang
diinginkan(misal: berada pada partisi C:\).

2. Extract file eclipse-java-mars-2-win32-x86_64.zip (misal extract pada


partisi C, sehingga menjadi C:\eclipse-java-mars-2-win32-
x86_64\eclipse).

3. Selanjutnya adalah membuat shortcut untuk aplikasi Eclipse pada


Desktop. Klik kanan pada file eclipse.exe, lalu pilih menu Send to dan
pilih Desktop (create shortcut).

12 SMK NEGERI 6 MALANG


4. Coba buka aplikasi Eclipse melalui shortcut yang telah di buat pada
desktop, jika berhasil maka Eclipse akan menampilkan splash screen
seperti dibawah ini:

Gambar 1.8 Splash Screen Eclipse.

Belajar bukanlah kegiatan yang bisa dilakukan hanya dengan mempelajari


teorinya saja. Jika ingin paham dan dapat menguasai konsep dan teori dari suatu
bahasa pemrograman, maka kalian harus ikut serta membuktikan teori dan
konsepnya secara real, apakah memang sesuai atau tidak? apakah dengan
menuliskan kode demikian bisa menghasilkan keluaran demikian?

F. Memulai Dengan Greenfoot


Dengan menggunakan program Greenfoot, siswa dapat mempelajari
paradigma pemrograman berorientasi obyek melalui pembuatan game 2D
menggunakan bahasa pemrograman Java.
1. Komponen Pengembangan Interaktif Greenfoot
Greenfoot adalah sebuah aplikasi yang dipergunakan untuk menciptakan
game dengan memanfaatkan paradigma pemrograman berorientasi obyek.
Dibawah ini adalah komponen yang terdapat pada tampilan utama
aplikasi:

Class
World
diagram

Execution
Control
Gambar 1.9 Tampilan Utama Program.
REKAYASA PERANGKAT LUNAK 13
KONSEP PEMROGRAMAN BERORIENTASI OBYEK
Terdapat 3 bagian dalam jendela utama aplikasi Greenfoot, yaitu:
- World / dunia: area untuk lingkungan obyek dalam permainan ketika
beraksi. Pada world, siswa dapat melihat bagaimana aksi obyek ketika
beraksi dan berinteraksi.
- Class diagram / diagram class: berada di samping kanan world, pada
class diagram terbagi menjadi dua bagian, yaitu world classes dan
actor classes. World classes adalah class untuk menciptakan obyek
untuk dunia/lingkungan pada permainan. Sedangkan actor classes
adalah class untuk menciptakan obyek aktor yang akan dimainkan di
permainan.
- Executon controls / kontrol eksekusi: kumpulan tombol yang
berfungsi untuk mengontrol alur jalannya permainan.
2. Membuat Obyek dari Class
Untuk membuat game, perlu ada sebuah World / lingkungan yang bisa
memberikan tempat bagi obyek actor agar saling berinteraksi. Obyek
dalam Greenfoot dibagi menjadi dua, yaitu obyek dari class World, dan
obyek dari class Actor.. Berikut adalah langkah-langkah membuat obyek
pada class World dan Actor.
Membuat World Untuk Lingkungan Permainan:
Berikut ini adalah langkah-langkah membuat obyek dari class world
dalam Greenfoot:
a. Hapus dahulu class MyWorld yang berada dibawah class World.
b. Pada World Classes, klik kanan class World dan pilih New Subclass.
Pada scenario image: Unspecified, pilih backgrounds, lalu pilih
cell.jpg.
c. Beri nama pada world, melalui kolom New class name. misal: tanah.
d. Klik OK.
Tampilan world pada Greenfoot akan berubah. Di samping itu, pada class
world, akan ditemukan sub-class bernama tanah.
Menambahkan Obyek pada World
Siswa akan menambahkan dua buah obyek pada world tanah, Berikut
adalah langkah-langkahnya:
a. Pada Actor classes, klik kanan pada class Actor, pilih new subclass.
b. Pada scenario image: Unspecified, pilih animals, lalu pilih
wombat.png
c. Beri nama pada obyek tersebut melalui kolom New class name. misal:
wombat.
d. Lalu klik OK.

14 SMK NEGERI 6 MALANG


Dengan langkah yang sama, tambahkan obyek pada world tanah, dimana
obyek kedua ini berada pada Image Categories: nature, bernama leaf.png.
beri nama class pada obyek tersebut. misal: daun.
Pada saat ini, siswa akan melihat kondisi world yang kosong. untuk
memasukkan obyek menuju world tanah, klik kanan pada salah satu class
(misal class wombat), dan pilih new wombat(). Arahkan mouse pada
world, dan klik kiri untuk melepaskan obyek di lokasi yang dinginkan.
Tambahkan beberapa wombat dan daun ke world tanah. Berikut adalah
tampilan akhir aplikasi Greenfoot:

Gambar 1.10 Lingkungan Permainan.

Menambahkan Obyek Dengan Menggunakan Gambar Dari


Komputer
Siswa dapat membuat suatu subclass dimana gambar untuk wujud
subclass berasal dari computer, berikut adalah langkah-langkahnya:

1. Klik kanan pada superclass actor atau world.

2. Pilih new subclass…

3. Dalam jendela new class, klik tombol bergambar gear

4. Pilih import from file…

REKAYASA PERANGKAT LUNAK 15


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
5. Pilih gambar yang ingin diimpor.

6. Beri nama untuk subclass, lalu klik OK

7. Subclass dengan gambar yang diimpor dari computer akan muncul


pada class hierarki

Gambar 1.11 Import from file…

14 SMK NEGERI 6 MALANG


Ketika obyek telah berada dalam world, execution control akan aktif.
Execution control terdiri dari beberapa tools untuk mengatur jalannya
scenario permainan, berikut penjelasannya:
- Act: menjalankan semua aksi obyek dalam scenario, namun hanya
sekali.
- Run/ Pause: menjalankan semua aksi pada scenario secara terus
menerus hingga permainan dihentikan (menekan tombol pause).
- Reset: me-reset scenario kembali ke kondisi awal.
- Speed: mengatur cepat lambatnya aksi obyek pada scenario.
Class Dalam Greenfoot
Class dalam Greenfoot berfungsi untuk mengatur bagaimana sebuah
obyek terbentuk dan beraksi ketika permainan dijalankan. Ketika siswa
membuat sebuah class untuk scenario, class tersebut akan muncul pada
hierarki class. Sehingga melalui class, siswa bisa menambahkan banyak
obyek dari class yang sesuai dengan kebutuhan di permainan.

Gambar 1.12 Hierarki class


Obyek atau Instance Dari Class
Wombat memiliki ciri khas seperti warna, ukuran, dan cara ia bergerak.
Obyek wombat yang sedang berada di tanah, adalah contoh unik
perwakilan dari class wombat. Sehingga obyek wombat akan memiliki
karakteristik dari class wombat yang dapat dimanipulasi dan diubah.
Banyak obyek/instance wombat bisa bersumber dari satu buah class
wombat. Obyek wombat ini akan beraksi dalam world berdasarkan kode
program yang dituliskan di dalam class-nya.
Dari sini dapat disimpulkan, bahwa obyek adalah contoh dari suatu class.
Dimana obyek akan memiliki karakteristik dan aksi berdasarkan apa yang
tertulis dalam class-nya.
3. Menyimpan Scenario Dalam Bermacam Versi
Simpan scenario sesering mungkin, walaupun tiap kali menutup program,
Greenfoot akan menyimpan scenario secara otomatis, namun ada baiknya
menyimpan scenario dalam bermacam versi. Penyimpanan scenario dalam
bermacam versi memiliki beberapa keuntungan seperti:
- Dapat kembali pada bentuk scenario awal.
- Scenario dapat dikembangkan untuk permainan lain.
4. Properties Obyek (Instance)
Properties obyek mendeskripsikan bagaimana penampilan dan
kemampuan dari instance/obyek ketika dalam scenario, seperti:
- Ukuran obyek.
- Warna obyek.
- Jarak obyek ketika bergerak.
Properties suatu obyek dapat diubah dalam source code / kode sumber
pada class. Tiap kali siswa membuat instance/obyek dari subclass Actor,
seperti wombat. Maka obyek wombat ini akan memiliki properties
tersendiri.
5. Kompilasi dan Kode Sumber
Jika diperhatikan, tiap kali membuat sebuah subclass baru. Subclass pada
class hierarki akan memiliki strip pada namanya. Strip tersebut
menandakan class belum mengalami kompilasi. Kompilasi dibutuhkan
ketika:
- Source code yang dimiliki oleh class telah dimodifikasi.
- Subclass atau superclass baru dibuat atau dimodifikasi.
Kompilasi adalah proses menerjemahkan source code menjadi kode mesin
sehingga dapat dimengerti oleh komputer.

Source Code / Kode Sumber


Gambar 1.13 Kompilasi Pada Subclass Apel.
Seperti yang telah dijelaskan sebelumnya. Source Code dapat diibaratkan
seperti DNA, Sehingga source code yang ada dalam class berguna untuk
memberikan arahan kepada instance/obyek, mengenai apa saja aksi yang
bisa dilakukan dalam scenario bagaimana obyek ditampilkan. Setiap class
memiliki source code. Untuk dapat melihat source code yang dimiliki
class. dapat dilakukan dengan cara:
a. Klik kanan pada class.
b. Pilih Open Editor.
Komponen Source Code
Secara umum, terdapat 6 komponen penyusun suatu source code, meliputi:
- Class Description
- Method act()
- Method signature
- Method body
- Comments
- Documentation
- Class definition
Semua komponen kecuali description, comments, dan documentation
diperlukan untuk menghasilkan aksi pada obyek. Description, comments,
dan documentation dibuat untuk memudahkan siswa dan juga orang lain,
memahami apa yang ingin dicapai pada obyek tersebut. Jangan pernah
meremehkan ketiga komponen tersebut. Siswa harus membiasakan diri
untuk memberikan komentar dan dokumentasi pada kode.
6. Code Editor dan Fungsinya
Code editor dipergunakan untuk menampilkan source code yang dimiliki
class. Code Editor adalah tempat memberikan instruksi kepada instance/
obyek, tentang apa saja aksi yang dapat dilakukan obyek dalam scenario.

Gambar 1.14 Code Editor Class Daun.

REKAYASA PERANGKAT LUNAK 17


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
Fungsi Code Editor
Source code atau kode program diatur oleh code editor. untuk melihat
kode program dari class yang diinginkan, klik kanan pada class, dan pilih
Open editor dari menu tersebut.
Dalam code editor, siswa dapat:
- Menuliskan source code program dalam class untuk aksi
instance/obyek dalam world.
- Memodifikasi source code untuk mengubah tingkah laku
instance/obyek dalam world.
- Mengulas (review) method dan properties dari pewarisan class.
- Mengulas method yang ada dalam class yang dibuat oleh programmer
lain.
7. Deskripsi Class
Setiap kali siswa membuat subclass, baik subclass dari class actor ataupun
world. Ketika subclass tersebut dibuka dalam code editor, maka siswa
akan mendapati deskripsi dari class tersebut. Deskripsi class berisi
sekumpulan komentar yang dapat diubah isinya untuk mendeskripsikan
class. Deskripsi tersebut meliputi:
- Deskripsi tentang apa yang dapat dilakukan oleh class.
- Nama orang, yang menambahkan kode pada class.
- Tanggal, kapan kode mengalami modifikasi.

Gambar 1.15
8. Method Pada Pemrograman Deskripsi Class.
Java
Dalam pemrograman Java, setiap obyek memiliki operasi (aksi) yang
dapat dioperasikan. Programmer perlu menuliskan kode pada obyek untuk
memberi petunjuk bagaimana obyek melakukan aksi tersebut, melalui
kode program tersebut, programmer dapat:
- Memerintahkan obyek / instance untuk melakukan suatu aksi.
- Memberikan pertanyaan pada obyek untuk mengetahui status obyek.
9. Act Method
Ketika execution control Run diklik, obyek / instance yang berada pada
scenario, akan melakukan aksi secara berulangan terhadap pernyataan
pemrograman yang tertulis dalam method Act. Method act akan
mengeksekusi semua pernyataan pemrograman dan selanjutnya kembali
menuju bagian awal pernyataan tersebut, dan kemudian mengeksekusi
pernyataan tersebut lagi sampai permainan dihentikan.

Gambar 1.16 Method act() Dari Class Wombat.


Tubuh Method Act
Semua pernyataan pemrograman dan konten yang berada dalam kurung
kurawal { dan } adalah bagian dari tubuh method act. Dalam kurung
kurawal tersebut, siswa dapat menuliskan pernyataan pemrograman untuk
memberikan aksi terdapat instance/obyek ketika di dalam world. Untuk
setiap kurung ( atau kurung kurawal { harus diakhiri oleh kurung
penutup ) atau }. Apabila siswa membiarkan banyak sekali kurung terbuka
tanpa ditambahkan kurung penutup, maka program Greenfoot akan
menampilkan pesan error “reached end of file while parsing” pada akhir
kode.
Contoh Penggunaan Method Act
Pada code editor dari subclass actor wombat, tambahkan method move()
dan turn() untuk membuat instance/obyek dapat bergerak (move) dan
berbelok (turn). Method harus ditulis secara benar, tanpa ada salah ketik,
salah huruf, atau huruf kapital yang salah. Karena apabila method yang
ingin dipanggil tidak dikenali, maka proses kompilasi tidak akan
dilakukan.
20 SMK NEGERI 6 MALANG
Gambar 1.17 Method Move dan Turn Pada act().

Memanggil Method Lain ke Dalam Method Act()


Untuk memasukkan method lain yang pada method act(). Tulis method
tersebut dalam urutan sebagai berikut:
- Nama method dalam huruf kecil, misal: move.
- Kurung, dengan parameters jika diperlukan, misal: (5).
- Titik koma, untuk mengakhiri pernyataan, misal:

Gambar 1.18 Memanggil Method Move dan Turn.


10. Method dan Aksi Berurutan
Suatu kegiatan, seperti pergi ke sekolah, perlu melakukan beberapa aksi
kecil, seperti:
- Bangun tidur.
- Mandi.
- Memakai seragam.
- Makan.
- Berangkat ke sekolah.
Begitu juga ketika mengembangkan game pada aplikasi Greenfoot. Aksi
akan dijalankan secara berurutan sehingga instance/obyek dapat bertindak
sesuai dengan keinginan pembuat game. Setiap aksi yang ditunjukkan oleh
instance/obyek, biasanya telah ditulis / didefinisikan bentuk aksi tersebut
dalam method. Pada Greenfoot, suatu method akan dieksekusi secara
berurutan (bukan bersamaan).
Membuat Method Untuk Aksi Obyek
Dalam Greenfoot, seorang programmer dibebaskan untuk membuat
berbagai method guna memperkaya aksi obyek ketika permainan
dijalankan. Ketika pertama kali membuat subclass class bertipe actor,

REKAYASA PERANGKAT LUNAK 21


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
maka siswa akan mendapati method act() yang berada di dalam source
code class
actor. Method act() adalah method utama yang artinya method apa saja
yang dimasukkan dalam tubuh method act() akan dieksekusi ketika siswa
menekan tombol Run.
Berikut adalah langkah-langkah membuat serta memanggil method yang
telah dibuat:
a. Buat method yang akan dipanggil pada method utama, act(). Seperti
pada contoh dibawah ini:

Gambar 1.19 Membuat Method Bernama Bergerak.


b. Pada
method bergerak(). Setelah kurung kurawal pertama, tambahkan kode
move(5);
c. Panggil method bergerak pada method utama, act(). Sehingga seperti
dibawah ini:

Gambar 1.20 Memanggil Method Bergerak().


11. Menampilkan Status dan Orientasi Instance
Beberapa method dapat membantu siswa mengetahui status atau orientasi
instance / obyek pada world. Siswa dapat memanggil method dengan
spesifikasi data tertentu, seperti tipe data integer, dan sebagainya.
Dibawah ini adalah beberapa method yang dapat dipergunakan untuk
mengetahui status suatu instance/obyek.
Tabel 1.2 Method Status Instance

Nama Method Deskripsi


Int getRotation() Mendapatkan nilai rotasi yang
dimiliki obyek, bertipe integer
World getWorld() Mendapatkan nama world
dimana instance/obyek berada,
bertipe world
Int getX() Mendapatkan posisi koordinat
sumbu x instance/obyek
sekarang berada, bertipe int
Int getY() Mendapatkan posisi koordinat
sumbu y instance/obyek
sekarang berada, bertipe int
Boolean isAtEdge() Mendapatkan informasi apakah
obyek berada di pojok world,
bertipe boolean

Untuk mengetahui status dari instance/obyek yang berada dalam world,


siswa dapat mengeklik kanan terhadap instance/obyek yang berada pada
world. Sehingga, muncul berbagai menu pilihan yang berguna mengetahui
status dan orientasi instance/obyek terhadap world.

Gambar 1.22 Hasil Memanggil


Method.

Gambar 1.21 Memanggil Method Untuk


12. Pesan Error Kondisi Instance.
Mengetahui
Pesan error akan ditampilkan apabila siswa melakukan kesalahan dalam
pengetikan kode program. Apabila siswa memanggil method move, tanpa
memberi nilai pada parameter (yaitu angka yang berada dalam kurung),
atau titik koma guna mengakhiri pernyataan pemrograman, maka pesan
error akan ditampilkan. Pesan error dapat muncul secara otomatis atau
setelah siswa menekan tombol compile yang berada di bagian pojok kiri
kode editor.
Gambar 1.23 Error Pada Statement Pemrograman.
13. Mengenali dan Mencegah Error Pada Java
Berikut adalah kiat-kiat mengenali dan mencegah munculnya error pada
syntax java:
a. Temukan permulaan dan akhir suatu method.
b. Pastikan semua awalan dan akhiran {} kurung kurawal ada dalam
method.
c. Pastika semua tanda kurung terbuka ( diakhiri oleh tanda kurung
tertutup ).
d. Pastikan semua baris kode diakhiri oleh titik koma / semicolon (;).
e. Pastikan semua nama class dapat dieja, dan terkapitalisasi dengan
benar.
f. Tinjau kembali penggunaan notasi titik (seperti., system.out.println).
g. Pastikan semua string menggunakan petik dua (“) bukan petik satu (‘).
h. Pastikan huruf yang mempunyai penampilan sama benar (seperti., 1
dengan i).
14. Dokumentasi
Dokumentasi berfungsi untuk mengetahui properties yang dimiliki oleh
suatu class. Untuk membuat dokumentasi dari class yang sedang dibuat,
siswa dapat memilih menu drop-down pada pojok kanan atas dari code
editor.

Gambar 1.24 Dokumentasi Pada Class Wombat.


G. Memulai Dengan Eclipse
Dengan menggunakan program Eclipse, siswa dapat mempelajari
paradigma pemrograman berorientasi obyek melalui pengembangan aplikasi yang
menerapkan bahasa pemrograman Java.
1. Apa itu Eclipse ?
Eclipse adalah IDE (integrated development environment) program yang
digunakan untuk mengembangkan perangkat lunak pada berbagai macam
platform, seperti Android, Web, Java dan lain-lain. Eclipse memerlukan
JRE agar dapat dibuka, karena aplikasi Eclipse sendiri dikembangkan
dengan bahasa pemrograman Java. Eclipse juga terbagi berdasarkan
arsitektur komputer, Eclipse 64-bit memerlukan operasi sistem 64-bit dan
JDK 64-bit, begitu juga dengan Eclipse 32-bit, memerlukan sistem operasi
32-bit/64-bit dengan JDK 32-bit.
2. Mengaktifkan Eclipse
Sebelum siswa mengaktifkan Eclipse, cek terlebih dahulu apakah JRE
telah terinstal pada sistem, untuk mengetahui hal tersebut, buka command
prompt dan ketikan: java -version. Untuk mulai membuka Eclipse berikut
langkah-langkahnya:
a. Double click ikon Eclipse yang terdapat pada Desktop.
b. Pada jendela workspace launcher, siswa akan diminta untuk mengatur
lokasi dimana siswa akan menyimpan project yang akan
dikembangkan melalui Eclipse. Selanjutnya klik OK.
c. Eclipse akan menampilkan halaman Welcome.
d. Untuk menutup halaman welcome, klik tombol X tepat di sebelah tab
halaman Welcome.
Ketika siswa telah selesai mengatur lokasi penyimpanan proyek, siswa
akan disuguhi tampilan laman welcome, dalam laman welcome ini terdapat
berbagai sumber materi berharaga yang dapat digunakan siswa untuk
segera memulai pemrograman menggunakan Eclipse IDE
3. Area Kerja Eclipse
Dalam Eclipse terdapat dua area kerja yang dapat digunakan. Berikut
adalah ilustrasinya

Edit Area

View

Gambar 1.25 Area Workspace Pada Eclipse.

26 SMK NEGERI 6 MALANG


Edit Area adalah area siswa menuliskan kode pemrograman Java,
sedangkan View, adalah sub-window guna menyediakan bermacam
informasi mengenai project yang dikerjakan.
Tab pada Edit Area
Ketika siswa membuka beberapa project dalam aplikasi Eclipse, maka
eclipse akan mengorganisasi edit area dalam bentuk tab.
4. Workspace (Tempat Kerja)
Eclipse juga mempunyai workspace pengembangan perangkat lunak.
Semua project yang sedang dikembangkan akan ditampilkan pada
workspace. Sehingga, sebuah workspace dapat berisi bermacam project
(kumpulan project). Penggunaan istilah project, adalah cara bagi
programmer untuk mengorganisir file-file Java. Dalam project ini,
dimungkinkan seorang programmer mengorganisir file-file Java tersebut
menjadi satu kesatuan yang disebut dengan package. Siswa juga dapat
berpindah workspace pada Eclipse, melalui menu bar File > Switch
Workspace > Other.
5. Komponen Umum Aplikasi Java
Berikut adalah ilustrasi langkah yang dilakukan dalam membuat program
melalui program Eclipse:
a. Membuat project
b. Membuat package (dalam folder src pada project)
c. Membuat Class dalam package (sebuah class harus terdapat method
utama (driver class))
d. Compile kode Java, untuk menghasilkan file .class
e. Eksekusi kode Java pada driver class
Suatu project, dapat dikembangkan tanpa memerlukan pemakaian package
dalam proses pengembangannya.
Project Dalam Eclipse
Dalam Eclipse, semua program harus berada dalam suatu project agar
dapat terkompilasi, siswa dapat mempunyai lebih dari satu file class dalam
sebuah project. Salah satu dari class tersebut harus mengandung main
method (method utama). Berikut adalah langkah-langkah membuat file
project dalam Eclipse:
a. Pada menu bar, pilih File > New > Java Project
b. Isi nama project yang akan dibuat dan klik finish
c. Semua pengaturan pada project diatur secara default oleh Eclipse
ketika menekan Finish
Jika project pane tidak tampil / tertutup, siswa dapat mengaktifkannya
kembali melalui menu Window > Show View > pilih Project view /
Package View

REKAYASA PERANGKAT LUNAK 27


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
6. Membuat Package pada Eclipse
Project yang telah dibuat akan ditampilkan dalam bentuk folder pada panel
project. Untuk membuat package pada project yang sedang dikerjakan,
klik kanan pada folder src, pilih New > Package.

Gambar 1.26 Membuat Package Pada Project.

Setelah memilih opsi tersebut, siswa akan disuguhi jendela New Java
Package. Dalam jendela tersebut, beri nama package yang akan dibuat
(bisa disamakan dengan nama project yang dibuat). Penamaan nama pada
package sebaiknya menggunakan aturan lower camel case. Camel case
adalah praktik penulisan penggabungan kata tanpa tanda spasi, namun
spasi tersebut diganti dengan mengkapitalisasi huruf depan (menulis
dengan huruf besar) setiap kata pembentuknya. Misal siswa ingin
membuat sebuah package file dengan nama penghitung angka, jika
menggunakan aturan camel case, nama tersebut menjadi
penghitungAngka. Aturan dari praktik ini adalah, menghilangkah spasi
antar kata dan memberikan kapitalisasi pada huruf depan pada kata
kedua,ketiga dst. Seperti nama package awal adalah penghitung luas
segitga, menjadi penghitungLuasSegitiga.

28 SMK NEGERI 6 MALANG


Gambar 1.27 Camel Case Pada Nama Package.
REKAYASA PERANGKAT LUNAK 27
KONSEP PEMROGRAMAN BERORIENTASI OBYEK
7. Membuat File Class Dalam Project
Setelah sebelumnya membuat file package dalam project, sekarang siswa
akan membuat file .class, yaitu file bagi siswa untuk dapat menuliskan
kode pemrograman Java. Berikut adalah langkah-langkahnya:
a. Klik kanan pada nama project, pilih New > Class
b. Pada jendela New Java Class, beri nama pada file class yang akan
buat, pada kolom name:
c. Beri centang pada opsi public static void main(String[] args)
d. Klik Finish
Dengan memberikan centang pada checkbox public static void
main(String[] args), maka class yang dibuat adalah class bertipe main
method. Class berjenis main method adalah class pertama yang akan
dieksekusi setiap kali kode Java dikompilasi. Class ini bersifat wajib,
sebab apabila dalam suatu project tidak terdapat class dengan attributes
main method (method utama), Eclipse tidak tahu mana class yang dapat
dijadikan sebagai program ketika proses kompilasi. Class main method ini
juga disebut Driver Class.

Gambar 1.28 Pemberian Status Driver Class Pada Class.

(Sumber: Dokumen Penulis)

28 SMK NEGERI 6 MALANG


Setelah membuat file class sebagai method utama, maka pada panel
project akan terdapat satu file bernama MethodUtama.java. Untuk
mencoba mengompilasi Driver Class dan menjalankan program. Segera
ketikan kode dibawah ini tepat setelah kurung kurawal pada public static
void main(String[] args)

REKAYASA PERANGKAT LUNAK 29


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
public class MethodUtama {

public static void main(String[] args) {


// TODO Auto-generated method stub
System.out.println("Hallo Dunia");
}

8. Mengompilasi Source Code


Setelah mengetikkan baris kode di atas, guna menguji apakah baris kode
tersebut dapat terkompilasi, klik kanan pada file .java, pilih Run as > Java
Application, klik OK pada jendela Save and Launch. Jika kompilasi
berhasil dilakukan dan tidak terdapat error pada kode program, maka pada
console view akan menampilkan hasilnya.

Gambar 1.29 Output Program Pada Console View.

Siswa mungkin perlu membenarkan kesalahan pada syntax karena typo.


Jika terjadi error coba cermati dan betulkan error tersebut tanpa
memerlukan bantuan orang lain. Membuat suatu program yang baik,
memerlukan kesabaran dan ketekunan dalam proses try and error
pemrograman. Beri perhatian lebih pada tanda titik koma (;) setiap akhir
statement pemrograman pada Java, dan juga penggunaan tanda kurung
kurawal pembuka ({ ) yang perlu ditutup ( }).
9. Mendeskripsikan Kode Pada Driver Class
Berikan deskripsi mengenai apa yang dilakukan class tersebut pada
struktur program, berikan komentar pada tiap baris kode (bila perlu), guna

30 SMK NEGERI 6 MALANG


memudahkan siswa untuk memahami alur pemrograman ataupun
memudahkan maksud tujuan program ketika diulas oleh programmer lain.
Komentar pada pemrograman Java, dapat dilakukan dengan cara
mengetikkan // pada bagian depan kata / kalimat yang dibuat sebagai
komentar. Setiap huruf ataupun kata yang diawali tanda //, akan dianggap
sebagai komentar dan tidak akan dianggap sebagai baris kode dalam suatu
program.

REKAYASA PERANGKAT LUNAK 29


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
10. Blok Kode
Suatu blok kode didefinisikan melalui kurung kurawal buka { dan kurung
kurawal tutup }. Ketika memeriksa blok kode, pertimbangkan hal berikut:
- Setiap deklarasi class ditutup dalam blok kode.
- Deklarasi method, seperti main method, ditutup dalam blok kode.
- Method juga mempunyai cakupan blok kode.

Gambar 1.30 Blok Kode Yang Dimiliki Main Method.


Jika diperhatikan blok kode mempunyai format:
- Setiap blok kode dimulai dengan sebuah kurung kurawal terbuka
{ dan diakhiri kurung kurawal tertutup }.
- Tiap kali membuat blok kode harus diakhiri, sebagai contoh: setiap
{ harus cocok dengan }.
- Blok kode bisa ditemukan dalam class, method, pernyataan
kondisional, perulangan.
11. Java API (Application Programming Interface)
Java API adalah daftar yang berisi kumpulan class-class yang menjadi
bagian dari Java Development Kit (JDK). Dalam JDK terdapat berbagai
macam packages java, class, interface, yang berisi method, fields dan
constructor. Class-class yang telah terdefinisi dalam API menyediakan
banyak sekali fungsional kode program yang dapat digunakan oleh
programmer untuk mempercepat proses pengembangan suatu perangkat
lunak. Seorang programmer harus mengetahui tentang class-class tersebut
dan tahu bagaimana menggunakan class-class tersebut. Untuk melihat
semua daftar dari class-class yang disediakan oleh Java API, siswa dapat
membuka laman situs Oracle: http://docs.oracle.com/javase/8/docs/api/.

Gambar 1.31 Contoh Method di API Java.

30 SMK NEGERI 6 MALANG


C RANGKUMAN MATERI

Bab ini membahas mengenai konsep pemrograman berorientasi obyek,


yang meliputi paradigma pemrograman berorientasi obyek, perbandingan
pemrograman prosedural dan pemrograman berorientasi obyek, dan instalasi
perangkat lunak pemrograman berorientasi obyek. Berikut adalah rangkuman dari
materi yang telah dipelajari.

 Paradigma pemrograman adalah sudut pandang, bagaimana menyelesaikan


suatu permasalahan dengan menggunakan beragam cara dalam proses
pengembangan perangkat lunak.
 Ada berbagai jenis paradigma pemrograman. Yang paling umum digunakan
antara lain paradigma pemrograman fungsional, paradigma pemrograman
prosedural, paradigma pemrograman berorientasi obyek.
 Paradigma pemrograman berorientasi obyek adalah paradigma pemrograman
yang berkonsep bahwa, data seperti attributes, kode program (source code),
prosedur atau method tersimpan dalam suatu obyek. Obyek tersebut saling
berkomunikasi guna menyelesaikan permasalahan dalam pengembangan
perangkat lunak.
 Class dalam pemrograman berorientasi obyek adalah sebuah cetak biru
(blueprint) / template untuk obyek yang akan dibuat.
 Obyek adalah sebuah instance / contoh dari class, yang berisi data meliputi
attributuss, method, atau variable.

 Paradigma pemrograman berorientasi obyek memiliki karakteristik, meliputi:

o Abstraction (Abstraksi)
o Enkapsulasi (Enkapsulasi)
o Inheritance (pewarisan)

o Polymorpishm (polimorfisme)

 Salah satu bahasa pemrograman yang dapat memakai paradigma


pemrograman berorientasi obyek adalah bahasa pemrograman Java.

 Untuk menghasilkan aplikasi dalam bahasa pemrograman Java, diperlukan


bahan guna mengembangkan perangkat lunak tersebut. bahan
mengembangkan aplikasi berbasis Java meliputi:
o Java Development Kit (JDK).

o Java Runtime Environtment (JRE).

 Sedangkan alat yang digunakan untuk membuat aplikasi berbasis Java,


meliputi:
o Greenfoot: untuk membuat game berorientasi obyek.

REKAYASA PERANGKAT LUNAK 31


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
o Eclipse IDE: untuk membuat program computer berorientasi obyek.

34 SMK NEGERI 6 MALANG


D TUGAS

1. Carilah minimal 3 obyek, dan tentukan attributes, method, properties


yang dimiliki obyek tersebut!
Berikut adalah contohnya:
- Obyek: bola pingpong
o Attributes: warna, bentuk, ukuran, berat.
o Method: menggelinding, mengembang, memantul.
o Poperties: warna:kuning, bentuk:bulat, ukuran: berdiameter 38
mm, berat: 2,7 gram
2. Sebutkan minimal 2 penerapan karakteristik pemrograman berorientasi
obyek yang ada di dunia nyata!

E EVALUASI

A. Pilihlah jawaban yang tepat!


1. Sudut pandang penyelesaian suatu permasalahan dengan menggunakan
beragam cara dalam pengembangan perangkat lunak merupakan
pengertian…
a) Paradigma pemrograman
b) Pemrograman
c) Pemrograman berorientasi obyek
d) Java
e) JDK
2. Paradigma pemrograman yang berkonsep bahwa data meliputi attributes,
kode program, prosedur atau method tersimpan dalam obyek merupakan
pengertian dari…
a) Paradigma pemrograman berorientasi obyek
b) Paradigma pemrograman prosedural
c) Paradigma pemrograman fungsional
d) Paradigma pemrograman abstrak
e) Paradigma pemrograman nyata
3. Cetak biru / blueprint untuk obyek yang akan dibuat merupakan
pengertian dari…
a) Class
b) Obyek
c) Enkapsulasi
d) Paradigma pemrograman

REKAYASA PERANGKAT LUNAK 35


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
e) Java

32 SMK NEGERI 6 MALANG


4. Yang tidak termasuk karakteristik pemrograman berorientasi obyek
adalah…
a) Abstraksi
b) Enkapsulasi
c) Polimorfisme
d) Misanthropy
e) Inheritance
5. Bahasa pemrograman tingkat tinggi, yang dapat dijalankan di berbagai
platform dan berorientasi obyek merupakan salah satu ciri dari…
a) C++
b) C#
c) Objective-C
d) Java
e) Swift
6. Sebuah mekanisme dimana sebuah class utama (superclass) mewariskan
karakteristik dan perilaku kepada class turunan (subclass) merupakan
pengertian dari…
a) Enkapsulasi
b) Polimorfisme
c) Abstraksi
d) Inheritance
e) Java
7. Yang tidak termasuk aplikasi pengembangan dalam pemrograman
berorientasi obyek adalah…
a) Java runtime environment (JRE)
b) Eclipse
c) Greenfoot
d) Netbean
e) Notepad++
8. Salah satu contoh aplikasi pengembang yang digunakan untuk membuat
aplikasi berupa program komputer adalah…
a) Eclipse
b) Alice 3
c) Greenfoot
d) Java development tool (JDK)
e) Inheritance
9. Aplikasi pendukung yang berisi komponen pendukung untuk
pengembangan aplikasi berbasis Java adalah…
a) Java runtime environment (JRE)
b) Java development tool (JDK)
c) Eclipse

REKAYASA PERANGKAT LUNAK 33


KONSEP PEMROGRAMAN BERORIENTASI OBYEK
d) Alice 3
e) Inheritance
10. Salah satu fitur bahasa pemrograman Java yang memungkinkan bahasa
pemrograman Java untuk dijalankan di berbagai platform adalah…
a) CSS
b) JSS
c) JVM
d) Eclipse
e) JDK
B. Jawablah pertanyaan berikut!
1. Jelaskan manfaat penerapan paradigma pemrograman dalam
mengembangkan perangkat lunak / software!

34 SMK NEGERI 6 MALANG


2. Jelaskan perbedaan antara class dan obyek dalam pemrograman
berorientasi obyek!
3. Jelaskan perbedaan abstraksi dan enkapsulasi dalam karakteristik
pemrograman berorientasi obyek!
4. Jelaskan minimal 5 perbedaan paradigma pemrograman berorientasi obyek
dibanding dengan paradigma pemrograman prosedural!
5. Jelaskan secara rinci, perbedaan software pendukung dan software
pengembang pemrograman berorientasi obyek!

Anda mungkin juga menyukai