Menu Close

Perbedaan antara Abstraksi dan Enkapsulasi

Perbedaan utama: Abstraksi dan Enkapsulasi adalah konsep pemrograman ilmu komputer. Abstraksi adalah suatu proses, di mana karakteristik ekstra data dihilangkan atau dipisahkan dari data; sedangkan enkapsulasi adalah suatu mekanisme, di mana data disembunyikan dan digabungkan dalam metode.

   

Abstraksi adalah proses umum di mana data tambahan diambil dan dihapus untuk membuat data konkret. Di komputer, ini adalah metode pemrograman yang membantu dalam mengonversi data ke bentuk ringkas. Data dan program tidak diubah dalam metode ini, melainkan disimpan dalam bentuk awal yang sama; satu-satunya perbedaan adalah bahwa mereka direduksi menjadi bentuk rapi yang lebih kecil. Abstraksi mencoba mengurangi dan memfaktorkan perincian, sehingga pemrogram dapat fokus pada beberapa konsep sekaligus.

Suatu sistem dapat memiliki banyak lapisan abstraksi seperti itu, yang memiliki arti dan detail yang berbeda. Sebagai contoh, lapisan abstraksi tingkat rendah mengekspos detail perangkat keras komputer tempat program berjalan, sementara lapisan tingkat tinggi berurusan dengan logika bisnis program. Rincian ini kemudian diekspos ke programmer pada saat eksekusi. Abstraksi adalah konsep atau gagasan, yang tidak terkait dengan contoh tertentu. Hanya menangkap detail data yang berkaitan dengan objek dan perspektif saat ini. Ini memainkan peran utama dalam keluarga objek (dalam konsep Pemrograman Berorientasi Objek). dan digunakan dalam berbagai cara dan implementasi.

   

Konsep abstraksi dapat diimplementasikan dalam:

  • Abstraksi Kontrol: Ini adalah abstraksi tindakan.
  • Abstraksi Data: Ini memungkinkan dan menangani bit data dan struktur data dengan cara yang bermakna.

Enkapsulasi dalam pemrograman komputer menyoroti fungsinya menjadi dua notasi yang berbeda, yaitu:

  • Mekanisme bahasa yang membatasi akses ke beberapa komponen objek.
  • Konstruk bahasa yang memfasilitasi bundling data dengan metode (dan fungsi lainnya) yang beroperasi pada data tersebut.

Enkapsulasi adalah mekanisme persembunyian, yang memainkan peran penting dalam melindungi dan mengamankan data dari pihak luar. Ini sebenarnya memberikan integritas dasar ke data dengan mencegah penyalahgunaan data nyata. Dalam enkapsulasi, data disimpan dan diakses dalam format aslinya yang valid dan konsisten.

Secara umum, enkapsulasi berarti melestarikan objek dari pengguna dan mewakilinya dalam bentuk umum. Pada dasarnya, dalam enkapsulasi detail ekstra disembunyikan dari lingkungan luar. Bidang objek diperiksa dan dimanipulasi secara langsung dalam mekanisme ini. Informasi yang bersembunyi bersama dengan penyempurnaan dikompilasi dalam versi, yang selanjutnya digunakan sebagai kode sumber dan dihubungkan melalui file header. Kadang-kadang, kelas publik mencoba mengakses data, pada saat ini enkapsulasi tidak memungkinkan penjajah publik untuk bermain dengan data. Salah satu manfaat utama enkapsulasi adalah, ini membantu dalam pengurangan kompleksitas suatu program, dan membantu pengguna untuk memahami konsep-konsep program secara tepat, karena mekanismenya hanya mewakili bentuk singkat dari program tersebut. Ini meningkatkan ketahanan, dengan memungkinkan pengembang atau pemrogram untuk membatasi saling ketergantungan antar komponen perangkat lunak. Enkapsulasi juga berlaku dalam beberapa bahasa seperti, Smalltalk dan Ruby, di mana pengaksesan hanya diizinkan melalui metode objek; sementara sebagian besar lainnya seperti, C ++, C # atau Java menawarkan tingkat kontrol kepada programmer. Bahasa-bahasa ini memungkinkan para pengembang untuk mengakses apa yang disembunyikan dengan bantuan kata kunci seperti publik dan pribadi.

   

Abstraksi dan Enkapsulasi juga merupakan dasar utama dalam OOP (Object-Oriented-Programming).

Perbandingan antara Abstraksi dan Enkapsulasi:

Abstraksi

Enkapsulasi

Deskripsi Singkat

Abstraksi adalah suatu proses, yang mengekstrak detail penting tentang suatu item, atau kelompok item, dan mengabaikan detail yang tidak penting.

Enkapsulasi adalah proses yang membungkus atau membungkus data dalam kapsul atau membuat data singkat.

Mereka

Abstraksi berhubungan dengan ide menyembunyikan data yang tidak diperlukan untuk presentasi.

Enkapsulasi adalah pengelompokan bersama data dan fungsionalitas.

Fungsi dasar

Pada dasarnya, abstraksi digunakan untuk menyembunyikan data yang tidak diinginkan dan memberikan data yang relevan.

Pada dasarnya, enkapsulasi berarti menyembunyikan kode dan data ke dalam satu unit untuk melindungi data dari dunia luar.

Kapan mereka Dioperasikan

Ini mengoperasikan masalah di tingkat desain.

Ini mengoperasikan masalah di tingkat implementasi.

Bermanfaat untuk peran tersebut

Ini membantu pengguna untuk fokus pada apa yang dilakukan objek daripada bagaimana fungsinya.

Ini membantu programmer menyembunyikan detail internal atau mekanisme bagaimana suatu objek melakukan sesuatu.

Informasi adalah

Di sini informasi dipisahkan dari data nyata.

Di sini informasi dibungkus dalam format tersembunyi.

Tata letak

Ini berkaitan dengan tata letak luar, yang digunakan dalam hal desain.

Ini berkaitan dengan tata letak bagian dalam, yang digunakan dalam hal implementasi.

Sebagai contoh

Tampak Luar Ponsel, yang memiliki layar tampilan dan tombol tombol untuk memanggil nomor.

Detail Implementasi Bagian Dalam dari Ponsel, bagaimana tombol keypad dan Tampilan Layar terhubung satu sama lain menggunakan sirkuit.