Pemrograman beriorientasi obyek (Object Oriented Programming = OOP) berbeda dengan pemrograman konvensional pada umumnya, terutama dalam memperlakukan prosedur dan data. Pada pemrograman biasa, prosedur dan data merupakan dua hal yang dipisahkan satu sama lain.

Definisi ini terdiri dari tiga data, dimana untuk mengelolanya dibutuhkan prosedur yang disusun pada bagian yang terpisah. Salah satu konsep OOP yang paling penting adalah membungkus prosedur dan data menjadi satu software obyek. Konsep ini disebut sebagai encapsulation. OOP memodelkan obyek yang ada di dunia nyata (real-word objects) ke dalam software obyek dalam pemrograman. Oleh karena itu, di dalam OOP juga dikenal istilah seperti yang ada pada obyek dunia nyata, yaitu pewarisan (inheritance), dimana suatu obyek dapat mewariskan sifat-sifat yang dimilikinya kepada obyek turunannya. Secara umum, beberapa keuntungan yang dapat diperoleh pada OOP antara lain adalah simplicity, modularity, modifiability, extensibility, flexibility, maintainability, dan reasonability. Bahasa pemrograman yang mendukung OOP antara lain adalah: Smalltalk (murni OOP), C++, CLOS (Common Lisp Object System), Java, dan sebagainya. Dalambuku ini digunakan bahasa pemrograman C++ untuk memahami implementasi OOP.

>>Ciri Utama Pemograman Berorientasi Obyek

1. Encapsulation (pembungkusan)
2. Inheritance (pewarisan)
3. Polymorphism

Definisi :

1. Encapsulation (pembungkusan) -> Suatu metode untuk menyembunyikan suatu bagian implementasi dari kelas dan menyediakan antarmuka bagi kelas/software lain yang akan mengaksesnya.

2. Inheritance (pewarisan) -> Adalah proses pembentukan kelas baru yang disebut sebagai derived class atau inherited class dari kelas yang sudah ada sebelumnya yang disebut base class

3. Polymorphism -> Dalam Pemrograman Berorientasi Object konsep ini memungkinkan digunakannya suatu interface yang sama untuk memerintah object agar melakukan tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda.