La programación orientada a objetos es un estilo de programación que es reciclable y fácil de desarrollar y mantener. Un solo objeto, creado a partir de una clase o prototipo, puede ser reutilizado para múltiples propósitos. Una ventaja disponible para los programadores orientados a objetos es el uso de la encapsulación, que evita la manipulación accidental al permitir que se establezcan restricciones de acceso en partes de un objeto. Dado que el código orientado a objetos es fácil de navegar, las actualizaciones son mucho más rápidas.
Los objetos tienen muchas características que los hacen relacionados con las actividades diarias. Los objetos realizan acciones conocidas como métodos. Dependiendo del código, un objeto puede heredar acciones y otras propiedades de una jerarquía de clases o prototipos cada vez más abstractos. Por ejemplo: un objeto poodle y un objeto bulldog podrían heredar la capacidad de ladrar de la clase perro. La clase de perro podría heredar más propiedades de la clase de mamíferos y así sucesivamente.
La programación basada en clase y prototipo son dos tipos de programación orientada a objetos. Un objeto en la programación basada en clase se crea a partir de su clase, que es el diseño original de un objeto codificado por el desarrollador. Los objetos en la programación basada en prototipos son creados directamente por el desarrollador, y los objetos duplicados se crean a partir de este objeto prototipo.
Debido a que la programación orientada a objetos es reciclable, un desarrollador puede tomar código de un programa y colocarlo fácilmente en otro programa sin preocuparse por cambios importantes.