Tugas Pertemuan 2 PBO -Pengertian atau Konsep OOP

Nama: Rafie Zaidan Umara
NRP: 5025231245
Kelas: Pemrograman Berorientasi Objek (A)

  • Class 

Konsep class diimplementasikan secara luas di berbagai bahasa pemrograman, meskipun dengan            syntax yang berbeda-beda.

    Sebagai contoh, dalam Java, class digunakan untuk secara rinci mendefinisikan struktur dan perilaku     object. Di Java, class ini mencakup attribute (variable) dan method (function) yang secara spesifik        mendefinisikan karakteristik dan aksi dari object yang dibuat.

    Sementara itu, dalam Python, class juga memainkan peran serupa dalam mendefinisikan object,            namun ditandai dengan syntax yang lebih sederhana dan fleksibel, membuatnya mudah diadaptasi        dan digunakan dalam berbagai skenario pemrograman.

    Pendekatan ini memungkinkan programmer untuk memilih bahasa yang paling sesuai dengan                 kebutuhan proyek mereka, sambil tetap memanfaatkan prinsip-prinsip dasar OOP.

    Sebagai contoh sederhana, kita dapat mempertimbangkan class ‘Mobil’ dalam konteks                            pemrograman. Class ini mungkin memiliki attribute seperti ‘merk’, ‘model’, dan ‘tahun’, serta            method seperti ‘start()’ dan ‘stop()’.

    Sedangkan object adalah instansi dari class ini, seperti ‘mobilToyota’ yang merupakan object dari        class ‘Mobil’.

    Lalu method dalam class mendefinisikan aksi yang dapat dilakukan oleh object, seperti                            ‘mobilToyota.start()’, sementara attribute menyimpan data spesifik tentang object, seperti                    ‘mobilToyota.merk = "Toyota"’.

   Contoh di atas menunjukkan perbedaan antara class, object, dan method.


  • Object

    Yang dimaksud dengan objek pada java adalah sekumpulan software yang terdiri dari variable dan        method-method yang terkait. Objek juga merupakan benda nyata yang di buat berdasarkan                    rancangan yang di definisikan di dalam class

    Object adalah instance dari class. Jika class secara umum mepresentasikan (template) sebuah object,     sebuah instance adalah representasi nyata dari class itu sendiri. Contoh : Dari class Fruit kita dapat        membuat object Mangga, Pisang, Apel, dan lain-lain.

    contoh lain :


  • Abstraction

    Merupakan konsep di mana hanya informasi penting atau relevan yang ditampilkan kepada     pengguna, sementara detail implementasi yang kompleks disembunyikan. Abstraction     memungkinkan pengembang untuk fokus pada apa yang dilakukan oleh objek daripada     bagaimana cara kerjanya

Contoh Abstraction:

Misalnya, dalam sebuah program bank, ada objek "Akun Bank". Abstraction memungkinkan kita        untuk menggunakan fungsi seperti "menarik uang" atau "memeriksa saldo", tanpa perlu tahu        bagaimana cara penghitungan saldo atau bagaimana data disimpan di dalamnya. Yang        ditampilkan hanyalah fungsionalitas penting yang relevan bagi pengguna


  • Enkapsulasi 
Enkapsulasi didefinisikan sebagai pembungkusan data di bawah satu unit. Ini adalah mekanisme yang mengikat kode dan data yang dimanipulasinya. Dalam Enkapsulasi, variabel atau data suatu kelas disembunyikan dari kelas lain dan hanya dapat diakses melalui fungsi anggota kelas tempat variabel atau data tersebut dideklarasikan. Seperti dalam enkapsulasi, data dalam suatu kelas disembunyikan dari kelas lain, sehingga hal ini juga dikenal sebagai penyembunyian data.



  • Inheritance

Inheritance dalam pemrograman, khususnya dalam object-oriented programming (OOP), adalah suatu mekanisme di mana suatu class dapat mewarisi sifat, metode, dan atribut dari class lain.

Inheritance memungkinkan pembentukan class baru yang dikenal sebagai kelas turunan (subclass) atau kelas anak (child class), untuk mengadopsi atribut dan perilaku class yang sudah ada, disebut kelas induk (parent class) atau kelas dasar (base class).

Proses ini menciptakan hierarki class yang efisien, di mana class turunan dapat menggunakan kembali (reuse) kode yang telah ditulis dalam class induk, mengurangi kebutuhan untuk duplikasi kode.

Inheritance juga memfasilitasi polymorphism dan encapsulation, memungkinkan class turunan untuk mengganti atau memperluas fungsionalitas class induk. Proses ini tidak hanya meningkatkan efisiensi pengembangan dengan mengurangi kode yang berulang, tetapi juga memudahkan pemeliharaan dan pembaruan kode, karena perubahan pada class induk secara otomatis diterapkan pada class turunan.



  •  Polymorphism

Polymorphism atau polimorfisme merupakan konsep penting dari bahasa pemrograman berbasis objek atau object-oriented programming (OOP) seperti Python dan Java.

Polymorphism tersusun atas dua kata; yaitu poly yang berarti banyak, dan morph yang artinya bentuk. Jika diartikan, polymorphism adalah entitas seperti variabel, function, atau objek lain yang ketika ditampilkan bisa dalam bentuk yang berbeda-beda.

Misalnya dalam contoh nyata, Andi sudah menikah dan memiliki anak. Saat ini, ia bekerja sebagai software engineer di salah satu perusahaan swasta.

Maka jika menerapkan konsep polymorphism, Andi (objek) memiliki tiga karakteristik (wujud) yang berbeda, yaitu sebagai ayah, suami, dan karyawan. Ketiga karakteristik tersebut ditampilkan pada situasi yang berbeda pula.



  • Overloading
Overloading (method overloading) dalam Object-Oriented Programming (OOP) adalah konsep di mana kita dapat mendefinisikan beberapa metode dengan nama yang sama di dalam sebuah kelas, tetapi dengan parameter yang berbeda, baik dari segi tipe data, jumlah, atau urutannya. Meskipun nama metode sama, cara kerjanya akan berbeda tergantung pada parameter yang diterima.







Comments

Popular posts from this blog

Tugas Eksplorasi Perkembangan Teknologi Rafie Zaidan Umara 5025231245

PPB - Pertemuan 10 dan 11 - Marketplace Siswa

Tugas 4 PBO - Clock Display