¿Cuál es la diferencia entre programación orientada a objetos y programación orientada a procesos?
La diferencia entre programación orientada a procesos y programación orientada a objetos
La programación orientada a procesos consiste en analizar los pasos necesarios para resolver el problema y luego utilizar funciones para implementar estos pasos paso a paso. , uno por uno al usarlos. Simplemente llámalo;
Orientado a objetos es descomponer la transacción que constituye el problema en varios objetos. El propósito de establecer el objeto no es completar un paso, sino completarlo. describir algo en todo el paso de resolución del problema.
Puede utilizar ejemplos de la vida para comprender la orientación a procesos y la orientación a objetos, como el backgammon. La idea del diseño orientado a procesos es analizar primero los pasos del problema: 1. Iniciar el juego, 2. Las piedras negras se mueven primero, 3. Haz un dibujo, 4. Juzga si gana o pierde, 5. Es el turno de las blancas, 6. Haz un dibujo, 7. Juzga si gana o pierde, 8. Regresa al paso 2, 9. Muestra el resultado final. . Implemente cada uno de los pasos anteriores de una manera diferente.
Si se trata de una idea de diseño orientada a objetos para resolver el problema. El diseño orientado a objetos resuelve problemas desde otra perspectiva. Todo el backgammon se puede dividir en 1. los lados blanco y negro, cuyo comportamiento es exactamente el mismo; 2. el sistema de tablero de ajedrez, que es responsable de dibujar la imagen; 3. el sistema de reglas, que es responsable de determinar las faltas y ganar; y perder, etc. El primer tipo de objeto (objeto jugador) es responsable de aceptar la entrada del usuario e informar al segundo tipo de objeto (objeto tablero de ajedrez) sobre los cambios en el diseño de las piezas de ajedrez. Después de que el objeto tablero recibe los cambios en las piezas de ajedrez, es responsable. para mostrar los cambios en la pantalla y, al mismo tiempo, utilizar el tercer tipo de objeto. Se utilizan tres tipos de objetos (sistemas de reglas) para juzgar el juego de ajedrez.
Se puede ver claramente que la orientación a objetos divide los problemas por funciones, no por pasos. También se trata de dibujar un juego de ajedrez. Este comportamiento se dispersa en múltiples pasos en el diseño orientado a procesos, y es probable que aparezcan diferentes versiones de dibujo, porque normalmente los diseñadores harán varias simplificaciones teniendo en cuenta la situación real. En el diseño orientado a objetos, el dibujo sólo puede aparecer en el objeto del tablero de ajedrez, asegurando así la unidad del dibujo. Ventajas y desventajas de la orientación a procesos y a objetos
Orientada a procedimientos
Ventajas: el rendimiento es mayor que el de la orientación a objetos, porque es necesario crear una instancia de la clase al llamar , La sobrecarga es relativamente grande y consume más recursos, como microcontroladores, desarrollo integrado, Linux / Unix, etc., generalmente adoptan un desarrollo orientado a procesos y el rendimiento es el factor más importante.
Desventajas: no es tan fácil de mantener, fácil de reutilizar y fácil de expandir como orientado a objetos
Orientado a objetos
Ventajas: fácil de mantener, fácil de reutilizar y fácil de expandir, porque la orientación a objetos tiene las características de encapsulación, herencia y polimorfismo, y puede diseñar un sistema de bajo acoplamiento, lo que hace que el sistema sea más flexible y más fácil de mantener
Desventajas : menor rendimiento que el orientado a procesos