MINGGU KE -1
Bahan Kajian : OOP Concept
Sub-CPMK :
1. Mahasiswa dapat memahami konsep pemrograman
berorientasi objek, Paradigma dan Perangkat
Pemrograman.
Referensi :
▪ Paul Deitel & Harvey Deitel - Java How to Program 11th-
Prentice Hall-2017.
▪ Cay Horstmann, Big Java: Earl Objects 5th Edition, John
Wiley & Sons, 2013.
1
MATERI PEMBAHASAN
▪ Paradigma Pemrograman
▪ Konsep Object Oriented Programming
▪ Kelebihan dan Kelemahan OOP
▪ Karakteristik OOP
▪ Struktur Bahasa Pemrograman Java
2
KONSEP PEMROGRAMAN
BERORIENTASI OBJEK
PARADIGMA PEMROGRAMAN
▪ Sudut pandang dan style pemrograman
berhubungan dengan bagaimana sebuah masalah
diformulasikan dalam bahasa pemrograman.
1. Functional Programming : Urutan fungsi secara
sekuensial (Scheme, Lisp)
2. Procedural Programming : Pemecahan masalah
berdasarkan prosedural kerja yang terkumpul dalam
unit pemrograman bernama fungsi (C, Pascal)
3. Object-Oriented Programming : Koleksi object yang
saling berinteraksi . Class adalah unit pemrograman
(Java, C#, C++)
OBJECT ORIENTED PROGRAMMING
▪ Object-oriented programming atau OOP adalah suatu
metode pemrograman yang lebih berorientasi pada
objek.
▪ Berbagai program yang sudah ada adalah kombinasi
dari berbagai komponen kecil yang sebelumnya sudah
ada.
▪ Hal tersebut nantinya mampu memudahkan kerja dari
seorang programmer dalam melakukan pengembangan
suatu program.
▪ Berbagai objek yang saling berkaitan akan disusun ke
dalam satu kelompok yang dikenal dengan class.
▪ Berbagai objek tersebut nantinya akan saling
melakukan interaksi agar bisa menyelesaikan masalah
program yang rumit.
MENGAPA HARUS OOP
▪ Bila sebelumnya para developer harus bisa fokus
pada logic yang akan dimanipulasi, maka dengan OOP,
setiap developer bisa lebih fokus pada objek apa saja
agar bisa dimanipulasi.
▪ Metode ini menawarkan cara yang lebih mudah untuk
mengurangi kerumitan yang ada dalam suatu
pemrograman.
▪ Tujuan OOP adalah agar bisa mengatasi kelemahan
pendekatan pemrograman konvensional.
▪ Setiap programmer harus bisa meminimalisir program
dan membuatnya agar bisa tertata secara rapi.
▪ Selain itu, agar bisa mempercepat pembuatan aplikasi.
KELEBIHAN OOP
1. Parallel Development
2. Reusable
3. Scalability
KELEBIHAN OOP
▪ Parallel Development
▪ Saat bekerja sama dengan tim,
setiap programmer bisa membangun class-nya
sendiri.
▪ Dengan begitu, maka komponen yang sudah
terbentuk bisa digabung kembali menjadi satu
kesatuan yang utuh.
▪ Tentunya hal tersebut akan menghemat banyak
waktu dari pada harus membuat class satu per satu.
KELEBIHAN OOP
▪ Reusable
▪ Dengan adanya OOP, programmer bisa
menggunakan berbagai class yang sebelumnya
sudah dibuat.
▪ Sehingga, hal tersebut akan memudahkan
programmer untuk menggunakan project sejenis
lainnya.
▪ Tentunya class tersebut akan bisa diubah sesuai
dengan kebutuhan.
KELEBIHAN OOP
▪ Scalability
▪ Tujuan prinsip yang ada di dalam OOP adalah agar
bisa membantu memudahkan kebutuhan program
yang lebih kompleks atau lebih luas.
▪ Hal tersebut bisa dibuat bila ada perkembangan
dari program yang sebelumnya sudah ada,
menambahkan beberapa fungsi, object,
dan class lainnya agar lebih mudah.
▪ Program tersebut juga nantinya bisa tetap
berfungsi secara baik.
KEKURANGAN OOP
1. Tidak efisien
2. Membutuhkan Manajemen Data yang Ketat
3. Kemungkinan Duplikasi
KEKURANGAN OOP
▪ Tidak Efisien
▪ Dengan menggunakan OOP, maka CPU akan
memakan lebih banyak daya.
▪ Untuk itu, sangat disarankan untuk menggunakan
perangkat yang lebih baru saat ingin melakukan
kegiatan pengembangan lewat metode OOP.
KEKURANGAN OOP
▪ Membutuhkan Manajemen Data Yang Ketat
15
KARAKTERISTIK OOP
1. Abstraction (Cara melihat suatu sistem dalam
bentuk yang lebih sederhana).
2. Encapsulation (Mekanisme menyembunyikan
suatu proses dan data dalam sistem).
3. Inheritance (proses pembuatan kelas baru
dengan mewarisi karakteristik dari kelas yang
telah ada).
4. Polymorphism (modul yang memiliki nama
sama, namun memiliki behaviour yang berbeda).
OOP CONCEPTS
▪ Class → Blueprint For an object
▪ Class memiliki 2 kategori :
1. MainClass
2. Class
▪ Bentuk Main class
modifier1 class NamaClass modifier2{
public static void main(String[]args){
deklarasi object
}
statement
}
OOP CONCEPTS
• Bentuk class
modifier1 class NamaClass modifier2{
Declaration of data type;
Declaration of method
}
STRUKTUR JAVA
Menulis Program Java
• Bentuk program:
1. Text-Based Console Application →
menggunakan library non-GUI di Java
2. GUI Application → menggunakan AWT (Abstrak
Windows Toolkit)atau Swing untuk library GUI
Hasilnya
CLASS SCANNER
▪ Buat Class dengan nama LuasPersegiPanjang.java
untuk Menghitung Luas Persegi Panjang dimana
Nilai Panjang dan Lebar diinput oleh pengguna.
CLASS SCANNER
Perkalian.java (Latihan 4)
Hasilnya
KASUS 3
▪ Buat class LuasSegitiga.java dengan nilai alas dan
tinggi dimasukkan oleh user lewat prompt
(gunakan class Scanner)
KASUS 4
• Buat Class dengan nama Transaksi untuk
Menginput data transaksi penjualan Buku di toko
buku Gramedia.
Tugas Pertemuan 1- OOP Concepts
▪ Kerjakan Latihan dan kasus (4 Latihan dan 4 Kasus) di
Materi OOP Concepts di Pertemuan 1.
▪ Print Screen Tampilan dan hasilnya di Ms.Word dan Copy
Source Code dibawah tampilan aplikasi tersebut.
▪ Tunjukkan Orisinalitas tugas yang anda buat dengan
menambahkan Komentar Nama masing-masing di source
code dan tampilkan nama anda di Tampilan Aplikasi
yang anda buat.
▪ Simpan dengan nama tugas1_namamahasiswa dan
Upload ke e-learning Paling telat Tanggal 6 Oktober
2022 Jam 23.59 Wib.
▪ COPY PASTE atau Telat dari waktu Pengumpulan,
Nilai = 0