Anda di halaman 1dari 13

Makalah Pengetahuan Teknologi Komputer & Informatika

“Pemograman Berorientasi Objek”

Kelompok 3
NAMA ANGGOTA:

ADAM HIMAWAN (50423033)

BAYU PRADITYA (50423264)

GALIH RAMADHAN (50423526)

NURDIANSYAH (51423138)

REFQI HARDIANSYAH (51423263)

NABIL KHAIRAN RIADI (51423052)

KELAS 1IA10

UNIVERSITAS GUNADARMA

TAHUN AJARAN 2023/2024


KATA PENGANTAR

Puji dan syukur kehadapan Tuhan Yang Maha Esa atas rahmat dan karunia-Nya, sehingga
makalah bertema "Pemrograman Berorientasi Objek" ini dapat terselesaikan tanpa halangan yang
berarti. Makalah ini disusun sebagai salah satu bentuk pengembangan dan pembelajaran dalam
bidang teknologi informasi, khususnya pemrograman, yang merupakan salah satu aspek penting
dalam era digital saat ini.

Pemrograman Berorientasi Objek (Object-Oriented Programming - OOP) adalah sebuah


paradigma pemrograman yang menggunakan "objek" - data, dalam bentuk field, seringkali
dikenal sebagai atribut; dan kode, dalam bentuk prosedur, seringkali dikenal sebagai metode -
sebagai elemen dasar pembangunan aplikasi atau program. Paradigma ini tidak hanya membantu
dalam menyederhanakan kode program, tetapi juga memfasilitasi penggunaan kembali kode,
yang merupakan aspek penting dalam pengembangan perangkat lunak.

Penulis berharap makalah ini dapat memberikan pemahaman yang lebih luas dan mendalam
mengenai konsep dasar, keunggulan, serta implementasi Pemrograman Berorientasi Objek.
Makalah ini juga diharapkan bisa menjadi referensi yang berguna bagi siapa saja yang ingin
memperdalam pengetahuan dan keterampilan di bidang pemrograman.

Penulis menyadari bahwa makalah ini masih jauh dari sempurna. Oleh karena itu, saran dan
kritik yang konstruktif sangat penulis harapkan demi perbaikan makalah ini di masa yang akan
datang. Akhir kata, semoga makalah ini bermanfaat bagi pembaca sekalian.

[Tempat, Tanggal]

[Hormat Saya,]

[Nama Penulis]
DAFTAR ISI

KATA PENGANTAR.................................................................................................................I

DAFTAR ISI................................................................................................................................II

BAB I PENDAHULUAN............................................................................................................1

A. Latar Belakang................................................................................................................1
B. Rumusan Masalah...........................................................................................................1
C. Tujuan..............................................................................................................................2

BAB II PEMBAHASAN.............................................................................................................3

A. Sejarah Object Oriented Programming.......................................................................3


B. Konsep Dasar Object Oriented Programming............................................................4
C. Kelebihan Pemrograman Object Oriented..................................................................5
D. Kekurangan Pemrograman Object Oriented..............................................................6
E. Contoh aplikasi pemrograman berorientasi objek.....................................................6

BAB III PENUTUP....................................................................................................................7

A. Kesimpulan.....................................................................................................................7

DAFTAR PUSTAKA.................................................................................................................8
BAB 1
PENDAHULUAN
A. LATAR BELAKANG

Pemrograman berorientasi objek adalah paradigma pemrograman yang memandang


penyelesaian masalah berdasarkan objek yang di targetkan atau hendak dibuat.
Pemrograman ini digunakan dalam beberapa bahasa pemrograman seperti C++, Pascal,
Java, dan lainnya. Pemrograman berorientasi objek ditemukan pada tahun 1960, dimana
berawal dari suatu pembuatan program yang terstruktur. Metode ini dikembangkan dari
bahasa C dan Pascal. Dengan program yang terstruktur inilah untuk pertama kalinya kita
mampu menulis program yang begitu sulit dengan lebih mudah.

Pemrograman merupakan suatu subjek keterampilan (skill) yang harus dimiliki oleh
mahasiswa yang mengambil jurusan dibidang teknologi informasi seperti ilmu komputer,
teknik informatika, sistem informasi, manajemen informatika, dan lainnya. Ada banyak
bahasa pemrograman yang dapat dipelajari oleh mahasiswa mulai dari bahasa
pemrograman prosedural seperti C dan Pascal sampai bahasa pemrograman berorientasi
objek seperti Java, .NET, dan C++. Dalam matakuliah pemrograman yang diambil oleh
mahasiswa setiap semesternya, tugas untuk membuat program adalah hal mutlak yang
harus diberikan untuk mengetahui tingkat kepahaman mahasiswa akan konsep
pemrograman pada matakuliah tersebut. Umumnya tugas yang diberikan akan memiliki
tenggat waktu (deadline) untuk diselesaikan. Pengumpulan tugas yang bersamaan akan
memunculkan permasalahan yaitu menentukan apakah dua buah program memiliki
kesamaan atau tidak. Disamping itu, proses pemeriksaan tugas dilakukan secara manual
sehingga membutuhkan waktu yang lama. Oleh karena itu diperlukan sebuah sistem yang
dapat mempercepat dan mempermudah proses untuk pengecekan kesamaan kode
program.

B. Rumusan Masalah
1. Apa itu pemrograman berorientasi objek
2. Bagaimana cara kerja pemrograman berorientasi objek?
3. Apa saja keuntungan dan kerugian dari pemrograman berorientasi objek?
4. Bagaimana pemrograman berorientasi objek digunakan dalam pengembangan
perangkat lunak
5. Bagaimana pemrograman berorientasi objek dibandingkan dengan paradigma
lainnya?

C. TUJUAN
Makalah ini disusun untuk memberikan pengetahuan tentang pemrograman berorientasi
objek
Seperti menjelaskan konsep dasar pemrograman berorientasi objek dan bagaimana cara
kerjanya
Mengenal konsep dasar pemrograman berorientasi objek seperti class, object,
inheritance, polymorphism, dan lain-lain.
Mengenal Kelebihan dan kekurangan pemrograman berorientasi objek:
Membahas tentang Kelebihan dan kekurangan dari pemrograman berorientasi objek.
Mengenal Bahasa pemrograman berorientasi objek membahas tentang Bahasa
pemrograman berorientasi objek, seperti Java, C++, Python, dan lain-lain.
Mengenal aplikasi pemrograman berorientasi objek
Contoh-contoh aplikasi pemrograman berorientasi objek, seperti pembuatan game,
aplikasi desktop, aplikasi mobile, dan lain-lain.
BAB II
PEMBAHASAN
A. Sejarah Object Oriented Programming

Konsep OOP pertama kali muncul di MIT (Massachusetts Institute of Technology) pada
era 1960-an. Lalu sekitar beberapa tahun kemudian antara 1962-1965, sebuah bahasa
pemrograman yang mendasari konsep OOP diperkenalkan dengan nama bahasa
pemrograman SIMULA 1, dikembangkan oleh Kristen Nygaard dan Ole-Johan yang
merupakan warga negara Norwegia. Setelah itu pada tahun 1967 keluarlah SIMULA 67.

Bahasa SIMULA dengan OOP menginspirasi banyak pengembang, sehingga pada


tahun 70-an tercipta bahasa SMALTALK, Bahasa yang pertama kali disebut oleh dunia
sebagai Object-Oriented Programming, dengan membawa fitur barunya yaitu Inheritance.

Semenjak itu konsep OOP semakin dikenal, pada tahun 1980-an banyak Bahasa
pemrograman menggunakan konsep OOP diperkenalkan kepada dunia, tapi hanya empat
yang cukup populer yaitu ADA (US Departemen of Defense), PROLOG (the Japanese
“Fifth Generation Computer project”), Eifle dan C++. Kedua Bahasa, yaitu ADA dan
PROLOG dipercaya akan bersaing ketat sebagai bahasa pemrograman yang paling
dominan.

Namum pada tahun 80-an Bahasa pemrograman C++ mematahkan kepercayaan


tersebut. Bahasa pemrograman C++ menjadi Bahasa pemrograman yang popular dan
mendominasi hingga sekarang. Bahasa pemrograman C++ yang merupakan gabungan
dari 2 konsep Bahasa pemrograman, yaitu C dan SIMULA.

Semenjak C++ terkenal, banyak sekali pengembang yang terinspirasi oleh C++ dan
pada tahun 90-an, bahasa pemrograman JAVA diperkenalkan yang mengaku terinspirasi
oleh C++, dan tahun 2002 perusahaan Microsoft juga mengeluarkan bahasa turunan dari
C++ yaitu C# (C-Sharp), disusul dengan VB.NET dengan fitur OOP yang merupakan
penyempurnaan dari bahasa VB 0.6 yang tidak mendukung fitur OOP.
Tapi hingga sekarang C++ tetap masih menjadi Bahasa pemrograman yang
mendominasi karena fitur-fitur dan kecepatanya yang tidak bisa ditandingi oleh Bahasa
pemrograman apapun.

B. Konsep Dasar Object Oriented Programming

1. Encapsulation

Encapsulation atau pengkapsulan adalah konsep tentang pengikatan data atau


metode berbeda yang disatukan atau “dikapsulkan” menjadi satu unit data.

Maksudnya, berbagai objek yang berada dalam class tersebut dapat berdiri sendiri
tanpa terpengaruh oleh yang lainnya.

Encapsulation dapat mempermudah pembacaan kode. Hal tersebut terjadi karena


informasi yang disajikan tidak perlu dibaca secara rinci dan sudah merupakan satu
kesatuan.

Proses enkapsulasi mempermudah untuk menggunakan sebuah objek dari suatu


kelas karena kita tidak perlu mengetahui segala hal secara rinci.

2. Abstraction=

Prinsip selanjutnya yaitu abstraction. Prinsip ini sendiri berarti memungkinkam


seorang developer memerintahkan suatu fungsi, tanpa harus mengetahui bagaimana
fungsi tersebut bekerja.

Lebih lanjut, abstraction berarti menyembunyikan detail latar belakang dan hanya
mewakili informasi yang diperlukan untuk dunia luar.

Ini adalah proses penyederhanaan konsep dunia nyata menjadi komponen yang
mutlak diperlukan.

Seperti kala menggunakan handphone, kamu cukup memberikan suatu perintah,


tanpa tahu bagaimana proses terlaksananya perintah tersebut.

3. Inheritance
Inheritance dalam konsep OOP adalah kemampuan untuk membentuk class baru
yang memiliki fungsi turunan atau mirip dengan fungsi yang ada sebelumnya.

Konsep ini menggunakan sistem hierarki atau bertingkat. Maksudnya, semakin


jauh turunan atau subclass-nya, maka semakin sedikit kemiripan fungsinya.

4. Polymorphism

Prinsip terakhir dalam OOP adalah polymorphism. Pada


dasarnya polymorphism adalah kemampuan suatu pesan atau data untuk diproses
lebih dari satu bentuk.

Salah satu ciri utama dari OOP adalah adanya polymorphism. Tanpa hal ini, suatu
pemrograman tidak bisa dikatakan sebagai OOP.

Polymorphism sendiri adalah konsep di mana suatu objek yang berbeda-beda


dapat diakses melalui interface yang sama.

Sebagai contoh, kamu memiliki fungsi untuk menghitung luas suatu benda,
sementara benda tersebut berbentuk segitiga, lingkaran, dan persegi.

Tentu, ketiga benda tersebut memiliki rumus perhitungan tersendiri.

Dengan polymorphism, kamu dapat memasukkan fungsi perhitungan luas ke tiga


benda tersebut, dengan tiap benda memiliki metode perhitungannya sendiri.

Ini tentu akan mempermudah perintah yang sama untuk


beberapa class atau subclass tertentu.

C. Kelebihan Pemrograman Object Oriented

1. Parallel development
Ketika bekerja sama dengan tim, masing-masing programmer dapat
membangun class sendiri.

Dengan membangun class secara tersendiri, komponen yang sudah dibentuk


kemudian dapat digabung menjadi satu kesatuan.

Hal ini tentu saja menghemat banyak waktu dibanding harus


membangun class satu per satu.

2. Reusable

Dengan OOP, kamu dapat menggunakan berbagai class yang telah kamu buat
sebelumnya.

Ini tentu akan memudahkan untuk digunakan pada project lainnya yang
sejenis. Class tersebut juga dapat kamu ubah sesuai dengan kebutuhan.

3. Scalability

Berbagai prinsip yang dimiliki OOP bertujuan untuk mempermudah kebutuhan


program yang lebih luas atau rumit.

Hal ini membuat jika terjadi perkembangan dari program yang sudah ada,
menambahkan beberapa fungsi, object, atau class lainnya akan jadi lebih mudah.
Program tersebut juga dapat tetap berfungsi dengan baik.

D. Kekurangan Pemrograman Object Oriented


1. Tidak efisien

Menggunakan OOP akan lebih memakan daya pada CPU yang digunakan. Oleh
karenanya, sangat disarankan untuk menggunakan perangkat terbaru saat melakukan
pengembangan dengan OOP.

2. Membutuhkan manajemen data yang ketat


Hal lain yang dikeluhkan oleh developer mengenai OOP adalah perlunya kontrol
yang cukup ketat terhadap kode-kode tersebut.

Hal ini karena OOP akan memunculkan beberapa kode-kode baru jika terdapat
kode-kode yang kurang berfungsi dengan baik. Tentu hal ini akan menambah beban
pada perangkatmu.

3. Kemungkinan duplikasi

Dengan berbagai kemudahan yang diberikan oleh OOP, mengembangkan program


baru dari yang telah ada sebelumnya akan jadi lebih mudah.

Namun, hal ini justru membuat berbagai project yang dibuat akan terasa seperti
sekadar duplikasi saja.

E. Contoh aplikasi pemrograman berorientasi objek


1. Aplikasi Desktop
Microsoft Word atau Excel (dikembangkan dengan C#): Aplikasi pengolah kata dan
spreadsheet ini dikembangkan menggunakan bahasa pemrograman C# yang
mendukung pemrograman berorientasi objek.
2. Aplikasi Mobile
WhatsApp (dikembangkan dengan Swift): Aplikasi pesan instan WhatsApp untuk
platform iOS dikembangkan menggunakan bahasa pemrograman Swift, yang
merupakan bahasa berorientasi objek yang digunakan oleh Apple untuk pengembangan
aplikasi IOS.
3. Aplikasi Web
Facebook (dikembangkan dengan JavaScript dan PHP): Facebook menggunakan
JavaScript untuk mengembangkan antarmuka pengguna interaktif pada sisi klien dan
PHP untuk mengelola logika di sisi server. Kedua bahasa ini mendukung pemrograman
berorientasi objek.
4. Game
Unity (dikembangkan dengan C#): Unity, mesin pengembangan game yang sangat
populer, menggunakan bahasa pemrograman C# yang berorientasi objek. Pengembang
dapt membuat game dengan memanfaatkan konsep seperti kelas dan objek.
5. Sistem Operasi
Linux (dikembangkan dengan C): Meskipun bahasa C bukanlah bahasa
pemrograman berorientasi objek, beberapa konsep OOP dapat ditemukan dalam
pengembangan sistem operasi Linux, terutama dalam penggunaan struktur dan modul.
6. Android OS
Android OS, yang digunakan pada sebagian besar perangkat seluler, menggunakan
Java dan Kotlin untuk pengembangan aplikasi. Kedua bahasa ini mendukung
pemrograman berorientasi objek.

BAB III
Penutup
A. KESIMPULAN
Dalam pembuatan makalah ini penulis dapat menarik beberapa kesimpulan antara lain :
1. Pemrograman berorientasi objek merupakan paradigma pemrograman yang
berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini
dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika
pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan
mengirim pesan ke objek lainnya.
2. Model data berorientasi objek dikatakan dapat memberi feksibilitas yang
lebih, kemudahanmengubah program, dan digunakan luas dalam teknik piranti lunak
skala besar. Lebih jauh lagi,pendukung OOP mengklaim bahwa OOP lebih mudah
dipelajari bagi pemula dibanding denganpendekatan sebelumnya, dan pendekatan
OOP lebih mudah dikembangkan dan dirawat.

DAFTAR PUSTAKA

Alexander Petkov. 27 Juni 2018. How to explain object-oriented programming concepts to a 6-


year-old. Diakses Pada 01 Januari 2024. https://www.freecodecamp.org/news/object-
oriented-programming-concepts-21bb035f7260/
Pangestu, Inggih. 2 Desember 2022. Mengenal Apa itu OOP (Object Oriented Programming),
Prinsip, Kelebihan dan Kekurangan. Diakses Pada 01 Januari 2024.
https://idmetafora.com/news/read/2762/Mengenal-Apa-itu-OOP-Object-Oriented-
Programming-Prinsip-Kelebihan-dan-Kekurangan.html

Anda mungkin juga menyukai