Red de conocimiento informático - Consumibles informáticos - ¿Cuál es el concepto de orientación a objetos?

¿Cuál es el concepto de orientación a objetos?

Según tengo entendido, la orientación a objetos es una extensión natural del modelo del mundo real y una idea de programación de que "todo es un objeto". Cualquier objeto de la vida real puede clasificarse como una clase de cosas, y cada individuo es un ejemplo de una clase de cosas. La programación orientada a objetos está centrada en objetos y dirigida por mensajes, por lo que programa = objeto mensaje.

La orientación a objetos tiene tres características: encapsulación, herencia y polimorfismo.

La encapsulación consiste en abstraer los atributos y comportamientos de un tipo de cosa en una clase, privatizar sus atributos y hacer públicos sus comportamientos, mejorar la confidencialidad de los datos y modularizar el código. Hacerlo mejora la reutilización del código.

La herencia consiste en abstraer aún más todos los atributos y comportamientos de una clase de cosas en una clase principal. Cada subclase es una clase principal especial: tiene los comportamientos y atributos de la clase principal, y también tiene sus propios. propio comportamiento y propiedades únicas. Esto amplía los bloques de código existentes y mejora aún más la reutilización del código.

Si la encapsulación y la herencia son para la reutilización del código, entonces el polimorfismo es para la reutilización de la interfaz. Una de las funciones del polimorfismo es el desacoplamiento: eliminar el acoplamiento de la herencia entre padres e hijos. Si la relación entre la clase principal y la subclase en herencia es -a, entonces la relación entre la interfaz y la clase de implementación es -A. En pocas palabras, el polimorfismo permite que una referencia (o interfaz) de clase principal apunte a una subclase (o. clase de implementación) objeto. Muchos patrones de diseño se basan en un diseño polimórfico orientado a objetos.

En resumen, si la encapsulación y la herencia son la base de la teoría orientada a objetos, entonces el polimorfismo es la esencia de la teoría orientada a objetos. Para dominar el polimorfismo, primero debe comprender la interfaz. Solo comprendiendo completamente la interfaz podrá aplicar mejor el polimorfismo.