Red de conocimiento informático - Consumibles informáticos - ¿Cuál es la diferencia entre lenguajes procedimentales y orientados a objetos? ¿Quién tiene la ventaja?

¿Cuál es la diferencia entre lenguajes procedimentales y orientados a objetos? ¿Quién tiene la ventaja?

En términos de diferencia, el concepto más básico de un lenguaje orientado a procesos es una función, y un lenguaje orientado a procesos encapsula funciones en funciones. Por tanto, el grado de acoplamiento del programa es alto. El concepto más básico del lenguaje orientado a objetos son los objetos (datos y sus métodos de operación). Cada objeto es responsable de su propio trabajo y de mejorar la funcionalidad de otros objetos. Relativamente hablando, el grado de acoplamiento del programa es bajo y el grado de cohesión es alto.

En términos de ventajas, en términos simples, la mayor ventaja de la programación orientada a procesos (representada por el lenguaje C) es su alta eficiencia, por lo que ahora los sistemas operativos o códecs de video (como H.264) usan principalmente cerca hasta el final lenguaje C;

La mayor ventaja de los lenguajes orientados a objetos (representados por el lenguaje Java) es que cumplen con principios básicos de programación como abstracción, encapsulación y ocultación de detalles. El análisis de requisitos, la programación, la implementación de codificación y otros procesos se pueden conectar sin problemas (utilizando el modelado UML). Los programas orientados a objetos son estructuralmente más robustos y estables. Por lo tanto, los requisitos de eficiencia y rendimiento de Taobao no son críticos (por supuesto, el rendimiento también es importante, en relación con la estabilidad y seguridad del sistema) y el backend está escrito en Java.

Sin embargo, no es hasta que hayas realizado muchos programas grandes y complejos que realmente entenderás las diferencias y ventajas. Si todos escribimos programas HelloWorld, básicamente no hay diferencia.