OBJEK
DISUSUN OLEH :
NPM : G1A019064
KELAS :A
ASISTEN DOSEN :
DOSEN PENGAMPU :
FAKULTAS TEKNIK
UNIVERSITAS BENGKULU
2021
LANDASAN TEORI
PEMROGRAMAN BERORIENTASI OBJEK
Ide dasar pada OOP adalah mengkombinasikan data dan fungsi untuk
mengakses data menjadi sebuah kesatuan unit yang dikenal dengan nama objek. Objek
adalah struktur data yang terdiri dari bidang data dan metode bersama dengan interaksi
mereka untuk merancang aplikasi dan program komputer. Semua data dan fungsi di
dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Setiap objek dapat
menerima pesan, memproses data, dan mengirim pesan ke objek lainnya.
Encapsulation
Inherientence
Polymorphism
Polymorphism menunjuk pada fakta bahwa satu kegiatan bisa memiliki perilaku
yang berbeda di object yangberbeda. Polymorphism membantu dalam
menyederhanakan syntaksis (kata-kata) untuk menjalankan kegiatan yang sama pada
sekumpulan object atau hirarki kelas.
215
RHEDO FRANCESCO G1A019064
Keunggulan dalam memakai metode OOP di antaranya adalah :
• Faster Development: Metode ini didukung oleh banyak library objek, sehingga
mempercepat penyelesaian program dan juga projek berikutnya.
ALICE
315
RHEDO FRANCESCO G1A019064
1. Review praktikum hari ini!
Jawab :
Pada praktikum mata kuliah Proyek Pemrograman Berorientasi Objek hari ini,
kita memerlukan laptop/PC, dan software Alice 3 yang sudah diinstal di perangkat.
Kemudian tinggal buka aplikasi Alice 3.
Print screen
Gambar 1.1 merupakan tampilan awal dari software Alice 3. Di sini terdapat
beberapa menu seperti Blank States, Starters, My Projects, Recent, dan File System.
Pada Blank States terdapat beberapa background seperti Grass, Room, dan banyak
lainnya. Kali ini kita akan memilih background Grass, sehingga ketika klik Ok, maka
akan muncul tampilan seperti di bawah.
Print screen
Pada gambar 1.2 kita akan memilih objek apa saja yang ingin kita masukkan ke
dalam scene, kita juga dapat mengatur letak kamera/view angle. Kita akan memilih di
415
RHEDO FRANCESCO G1A019064
Biped Class karena pengerjaan animasinya lebih mudah dimengerti karena berbentuk
menyerupai struktur manusia.
Print screen
Gambar 1.3 merupakan tampilan untuk mengatur karakter sesuai dengan apa
yang kita inginkan. Pada life stage, kita akan memilih tingkatan umur, pada gender kita
akan memilih jenis kelamin dari karakter, skin color untuk mengatur warna kulit
karakter. Dan kita dapat mengatur baju, rambut dan lainnya di menu bawah. Atau
generate random person untuk mengacak tampilan karakter.
Print screen
Setelah memilih objek yang sesuai, selanjutnya adalah mengatur tata letak objek
terhadap kamera seperti yang dapat dilihat pada gambar 1.4. Pada praktikum kali ini,
515
RHEDO FRANCESCO G1A019064
kita mengatur agar objek manusia menghadap kesamping kanan terhadap kamera. Dan
juga mengatur jarak view camera terhadap karakter agar sesuai dengan apa yang kita
harapkan nantinya.
Print screen
Pada menu edit code, kita dapat menginputkan perintah yang dapat mengkontrol
gerakan objek yang diinginkan. Pada method MyFirstMethod dapat dimasukan
prosedur, Do in order berarti pernyataan Kontrol default di editor kode atau eksekusi
prosedur secara berurutan sedangkan do together merupakan eksekusi prosedur secara
bersamaan. Dalam penerapanya dapat digunakan untuk gerakan bersamaan seperti
pergerakan berjalan dan duduk. Di dalam prosedur tadi dapat dimasukkan. Selanjutnya
seperti pada gambar 1.5, dalam method do in order dimasukkan prosedur
this.PriaDewasa getRightHip turn BACKWARD 0.09 duration 0.4 adalah prosedur
yang diberlakukan kepada objek PriaDewasa Untuk mengerakkkan pinggul sebelah
kanan kearah belakang dengan nilai 0.09 dan durasi selama 0.4 detik.
this.PriaDewasa getRightKnee turn FORWARD 0.09 duration 0.4 adalah
prosedur yang diberlakukan kepada objek PriaDewasa Untuk mengerakkkan lutut
sebelah kanan kearah depan dengan nilai 0.09 dan durasi selama 0.4 detik.
this.PriaDewasa getLeftShoulder turn RIGHT 0.09 duration 0.4 adalah prosedur yang
615
RHEDO FRANCESCO G1A019064
diberlakukan kepada objek PriaDewasa Untuk mengerakkkan bahu sebelah kiri kearah
kanan dengan nilai 0.09 dan durasi selama 0.4 detik.
this.PriaDewasa getRightHip turn FORWARD 0.09 duration 0.4 adalah prosedur
yang diberlakukan kepada objek PriaDewasa Untuk mengerakkkan pinggul sebelah
kanan kearah depan dengan nilai 0.09 dan durasi selama 0.4 detik. this.PriaDewasa
getRightKnee turn BACKWARD 0.09 duration 0.4 adalah prosedur yang diberlakukan
kepada objek PriaDewasa Untuk mengerakkkan lutut sebelah kanan kearah belakang
dengan nilai 0.09 dan durasi selama 0.4 detik. .
this.PriaDewasa move FORWARD 0.2 duration 0.1 adalah prosedur yang
diberlakukan kepada objek PriaDewasa Untuk mengerakkkan objek tersebut depan
dengan nilai 0.2 dan durasi selama 0.1 detik. Untuk membuat objek pria dewasa
berjalan seperti kebanyakan manusia maka kita perlu memmbuat prosedur untuk
menggerakan anggota badan yang ada di sebelah kiri, tetapi dengan prosedur yang sama
dengan Prosedur untuk anggota tubuh bagian kanan tadi. this.PriaDewasa
getLeftShoulder turn LEFT 0.09 duration 0.4 adalah prosedur yang diberlakukan
kepada objek PriaDewasa Untuk mengerakkkan bahu sebelah kiri kearah kiri dengan
nilai 0.09 dan durasi selama 0.4 detik. this.PriaDewasa getRightShoulder turn LEFT
0.09 duration 0.4 adalah prosedur yang diberlakukan kepada objek PriaDewasa Untuk
mengerakkkan bahu sebelah kanan kearah kiri dengan nilai 0.09 dan durasi selama 0.4
detik.
this.PriaDewasa getLeftHip turn BACKWARD 0.09 duration 0.4 adalah
prosedur yang diberlakukan kepada objek PriaDewasa Untuk mengerakkkan pinggul
sebelah kiri kearah belakang dengan nilai 0.09 dan durasi selama 0.4 detik.
this.PriaDewasa getLeftKnee turn FORWARD 0.09 duration 0.4 adalah prosedur yang
diberlakukan kepada objek PriaDewasa Untuk mengerakkkan lutut sebelah kiri kearah
depan dengan nilai 0.09 dan durasi selama 0.4 detik.
this.PriaDewasa getLeftShoulder turn RIGHT 0.09 duration 0.4 adalah prosedur
yang diberlakukan kepada objek PriaDewasa Untuk mengerakkkan bahu sebelah kiri
kearah kanan dengan nilai 0.09 dan durasi selama 0.4 detik. this.PriaDewasa
getRightShoulder turn RIGHT 0.09 duration 0.4 adalah prosedur yang diberlakukan
kepada objek PriaDewasa Untuk mengerakkkan bahu sebelah kanan kearah kanan
dengan nilai 0.09 dan durasi selama 0.4 detik. this.PriaDewasa getLeftHip turn
FORWARD 0.09 duration 0.4 adalah prosedur yang diberlakukan kepada objek
715
RHEDO FRANCESCO G1A019064
PriaDewasa Untuk mengerakkkan pinggul sebelah kiri kearah depan dengan nilai 0.09
dan durasi selama 0.4 detik.
Output
815
RHEDO FRANCESCO G1A019064
Pertama-tama pada gambar 2.1 kita akan memilih background untuk digunakan
dalam animasi. Di sini saya memilih background di ruangan.
Print screen
G1A019064
915
RHEDO FRANCESCO G1A019064
Gambar 2.3 membuat percakapan
Pada gambar 2.3 Saya membuat kode this.elderPerson say “Hai semuanya, saya
Robert dan ini adalah robot yang saya ciptakan, namanya Cecilia”, duration 3.0 lalu
this.elderPerson getRightShoulder turn BACKWARD, 0.25, duration 0.25 dan
this.elderPerson getRightElbow turn BACKWARD, 0.25, duration 0.25 ke dalam do
together karena ingin kode tersebut dikerjakan secara bersamaan, jadi karakternya akan
mengucapkan kalimat tersebut sambil mengangkat tangannya sebelah kanan. Lalu
menurunkan tangannya dengan kode this.elderPerson getRightShoulder turn
FORWARD, 0.25, duration 0.25 dan this.elderPerson getRightElbow turn FORWARD,
0.25, duration 0.25. Selanjutnya percakapan antara karakter this.adultPerson dan
this.elderPerson dengan menggunakan kode this.adultPerson say “Halo, saya Cecilia,
senang bertemu dengan kalian”, duration 3.0. Lalu this.elderPerson menjawab
this.elderPerson say “Cecilia, saya akan melanjutkan penilaianku”, duration 2.5 lalu
dijawab dengan kode this.adultPerson say “baik pak”, duration 2.0 Setelah itu, kedua
karakter tersebut berputar ke kiri dan kanan dengan kode this.elderPerson turn LEFT,
0.25 dan juga this.adultPerson turn LEFT, 0.25.
1015
RHEDO FRANCESCO G1A019064
Selanjutnya this.elderPerson getRightHip turn BACKWARD, 0.1 untuk
menggerakkan pinggul kanan this.elderPerson ke arah belakang sejauh 0.1 dan
this.elderPerson getLeftShoulder turn RIGHT, 0.125, duration 1.0 untuk menggerakkan
bahu kiri this.elderPerson ke arah kanan sejauh 0.125 dengan durasi 1.0 detik.
this.elderPerson getRightHip turn FORWARD, 0.1, duration 0.5 untuk menggerakkan
pinggul kanan this.elderPerson ke arah depan sejauh 0.1 dengan durasi 0.5 dan
this.elderPerson getLeftShoulder turn LEFT, 0.125, duration 1.0 untuk menggerakkan
bahu kiri this.elderPerson ke arah kiri sejauh 0.125 dengan durasi 1.0 detik. Dan kode
this.elderPerson move FORWARD, 0.25, duration 0.15 untuk memajukan posisi
this.elderPerson sejauh 0.25 dengan durasi 0.15 detik.
Print screen
1115
RHEDO FRANCESCO G1A019064
1215
RHEDO FRANCESCO G1A019064
Gambar 2.4 Membuat animasi berjalan
1315
RHEDO FRANCESCO G1A019064
Kode this.elderPerson getRightHip turn BACKWARD, 0.1 untuk menggerakkan
pinggul kanan this.elderPerson ke arah belakang sejauh 0.1 dan this.elderPerson
getLeftShoulder turn RIGHT, 0.125, duration 1.0 untuk menggerakkan bahu kiri
this.elderPerson ke arah kanan sejauh 0.125 dengan durasi 1.0 detik. this.elderPerson
getRightHip turn FORWARD, 0.1, duration 0.5 untuk menggerakkan pinggul kanan
this.elderPerson ke arah depan sejauh 0.1 dengan durasi 0.5 dan this.elderPerson
getLeftShoulder turn LEFT, 0.125, duration 1.0 untuk menggerakkan bahu kiri
this.elderPerson ke arah kiri sejauh 0.125 dengan durasi 1.0 detik. Dan kode
this.elderPerson move FORWARD, 0.25, duration 0.15 untuk memajukan posisi
this.elderPerson sejauh 0.25 dengan durasi 0.15 detik.
Selanjutnya this.elderPerson getLeftHip turn BACKWARD, 0.1 untuk
menggerakkan pinggul kiri this.elderPerson ke arah belakang sejauh 0.1 dan
this.elderPerson getRightShoulder turn LEFT, 0.125, duration 1.0 untuk menggerakkan
bahu kanan this.elderPerson ke arah kiri sejauh 0.125 dengan durasi 1.0 detik.
this.elderPerson getLeftHip turn FORWARD, 0.1, duration 0.5 untuk menggerakkan
pinggul kanan this.elderPerson ke arah depan sejauh 0.1 dengan durasi 0.5 dan
this.elderPerson getRightShoulder turn RIGHT, 0.125, duration 1.0 untuk
menggerakkan bahu kanan this.elderPerson ke arah kanan sejauh 0.125 dengan durasi
1.0 detik. Dan kode this.elderPerson move FORWARD, 0.25, duration 0.15 untuk
memajukan posisi this.elderPerson sejauh 0.25 dengan durasi 0.15 detik. Untuk
selanjutnya kita tinggal mengulangi kode pada gambar 2.4 sebanyak apa yang kita
inginkan
Print screen
1415
RHEDO FRANCESCO G1A019064
Gambar 2.6 Berjalan
Pada gambar 2.6, kita menggunakan kode Kode this.elderPerson getRightHip
turn BACKWARD, 0.1 untuk menggerakkan pinggul kanan this.elderPerson ke arah
belakang sejauh 0.1 dan this.elderPerson getLeftShoulder turn RIGHT, 0.125, duration
1.0 untuk menggerakkan bahu kiri this.elderPerson ke arah kanan sejauh 0.125 dengan
durasi 1.0 detik. this.elderPerson getRightHip turn FORWARD, 0.1, duration 0.5 untuk
menggerakkan pinggul kanan this.elderPerson ke arah depan sejauh 0.1 dengan durasi
0.5 dan this.elderPerson getLeftShoulder turn LEFT, 0.125, duration 1.0 untuk
menggerakkan bahu kiri this.elderPerson ke arah kiri sejauh 0.125 dengan durasi 1.0
detik. Dan kode this.elderPerson move FORWARD, 0.25, duration 0.15 untuk
memajukan posisi this.elderPerson sejauh 0.25 dengan durasi 0.15 detik.
Selanjutnya this.elderPerson getLeftHip turn BACKWARD, 0.1 untuk
menggerakkan pinggul kiri this.elderPerson ke arah belakang sejauh 0.1 dan
this.elderPerson getRightShoulder turn LEFT, 0.125, duration 1.0 untuk menggerakkan
bahu kanan this.elderPerson ke arah kiri sejauh 0.125 dengan durasi 1.0 detik.
this.elderPerson getLeftHip turn FORWARD, 0.1, duration 0.5 untuk menggerakkan
pinggul kanan this.elderPerson ke arah depan sejauh 0.1 dengan durasi 0.5 dan
this.elderPerson getRightShoulder turn RIGHT, 0.125, duration 1.0 untuk
menggerakkan bahu kanan this.elderPerson ke arah kanan sejauh 0.125 dengan durasi
1515
RHEDO FRANCESCO G1A019064
1.0 detik. Dan kode this.elderPerson move FORWARD, 0.25, duration 0.15 untuk
memajukan posisi this.elderPerson sejauh 0.25 dengan durasi 0.15 detik. Kode ini
diulangi sampai kita menuju ke kursi.
Print screen
1615
RHEDO FRANCESCO G1A019064
KESIMPULAN DAN SARAN
a. Kesimpulan
Kesimpulan yang dapat saya ambil pada praktikum kali ini adalah Pemrograman
berorientasi objek (Object Oriented Programming atau disingkat OOP) adalah
paradigma pemrograman yang berorientasikan kepada objek yang merupakan suatu
metode dalam pembuatan program, dengan tujuan untuk menyelesaikan kompleksnya
berbagai masalah program yang terus meningkat.
b. Saran
Saran dari saya dalam penggunaan Alice adalah kita harus teliti dan mengetahui
setiap bagian, gerakan, dan juga arahnya. Karena jika terdapat kesalahan, maka animasi
akan menjadi tidak masuk akal dan aneh.
1715
RHEDO FRANCESCO G1A019064
DAFTAR PUSTAKA
Danuri, M. (2013). Object Oriented Programming (Oop) Pembangun Program Aplikasi
Berbasis Windows. INFOKAM.
Hamdani, F. (2019). Rancang Bangun Video Tutorial Pembelajaran Alice 3.1 dan
Greenfoot pada Matakuliah Java Fundamental di STKOM Al Ma’soem
Jatinangor. INTERNAL (Information System Journal).
Kelleher, C., Pausch, R., & Kiesler, S. (2007, April). Storytelling alice motivates middle
school girls to learn computer programming. In Proceedings of the SIGCHI
conference on Human factors in computing systems.
1815
RHEDO FRANCESCO G1A019064