Cel: +52 (55) 3040-5403 Correo: mariana.velazquez@recluit.com
post-tittle

Beneficios de la Programación Orientada a Objetos

Por: Reclu IT

22 de diciembre de 2021

El 27 de julio, pero de 1926, nació Kristen Nygaard reconocido como coinventor de la programación orientada a objetos y el lenguaje de programación Simula, junto con Ole-Johan Dahl en los años 1960.

La programación orientada a objetos se ha convertido en una parte fundamental del desarrollo de software. En la actulidad está en popularidad gracias a los lenguajes de programación orientada Python, PHP y Ruby.

Entender la idea de la POO puede ser un desafío para algunos profesionales IT. Quizás se pregunte por qué necesita objetos cuando podría utilizar el enfoque descendente de la programación estructurada tradicional en lenguajes como Visual Basic.

Si has escrito este tipo de software, probablemente estés acostumbrado a dividir grandes problemas en subproblemas y resolverlos en unidades de código separadas. O puede tener experiencia con la programación funcional, que trata los elementos del código como funciones matemáticas precisas y evita que afecten a otros elementos, es decir, sin efectos secundarios.

Sin embargo, al familiarizarse con la programación orientada a objetos descubrirás que es una forma completamente nueva de resolver problemas. El concepto básico es que en lugar de escribir un programa, creas una clase, que es una especie de plantilla que contiene variables y funciones. Los objetos son instancias independientes de esa clase y puede hacer que interactúen de manera divertida y emocionante.

Las ventajas de la POO residen en este tipo de encapsulación. A continuación, se ofrece una descripción detallada de algunos de los principales beneficios de la programación orientada a objetos:

  • Modularidad para facilitar la resolución de problemas

Algo salió mal y no tienes idea de dónde buscar. ¿El problema está en el archivo Widget o es WhaleFlumper? ¿Tendrá que revisar ese archivo «sewage.c»? Sólo queda ver la documentación.

Cuando trabaja con lenguajes de programación orientados a objetos, sabes exactamente dónde buscar.

Esa es la belleza de la encapsulación. Los objetos son autónomos y cada bit de funcionalidad hace lo suyo mientras deja los otros bits en paz. Además, esta modalidad permite que un equipo de TI trabaje en varios objetos simultáneamente y minimiza la posibilidad de que una persona pueda duplicar la funcionalidad de otra.

  • Reutilización de código heredado

Supón que, tienes un objeto Car, y un colega necesita un objeto RaceCar y otro necesita un objeto Limousine. Todos construyen sus objetos por separado, pero descubren puntos en común entre ellos. De hecho, cada objeto es en realidad un tipo diferente de Car. Aquí es donde la técnica de herencia ahorra tiempo: crea una clase genérica (Car) y luego se definen las subclases (RaceCar y Limousine) que heredarán los rasgos de la clase genérica.

Por supuesto, Limousine y RaceCar todavía tienen sus atributos y funciones únicos. Si el objeto RaceCar necesita un método para «fireAfterBurners» y el objeto Limousine requiere un Chofer, cada clase se podría implementar funciones separadas solo para sí misma. Sin embargo, debido a que ambas clases heredan aspectos clave de la clase Car, por ejemplo, los métodos «drive» o «fillUpGas», sus clases heredadas pueden simplemente reutilizar el código existente en lugar de escribir estas funciones de nuevo.

  • Flexibilidad a través del polimorfismo

Siguiendo con este ejemplo, ahora sólo necesitas algunos controladores o funciones, como «driveCar», driveRaceCar «y» DriveLimousine «. RaceCarDrivers comparte algunos rasgos con LimousineDrivers, pero otras cosas, como RaceHelmets y BeverageSponsorships, son únicas.

Aquí es donde entra en juego el polimorfismo de la POO. Debido a que una sola función puede cambiar de forma para adaptarse a cualquier clase en la que se encuentre, puedes crear una función en la clase de automóvil principal llamada «drive», no «driveCar» o «driveRaceCar», sino simplemente «drive». Esta función funcionaría con RaceCarDriver, LimousineDriver, etc. De hecho, incluso podría tener «raceCar.drive (myRaceCarDriver)» o «limo.drive (myChauffeur)».

  • Resolución eficaz de problemas

La programación orientada a objetos es a menudo el enfoque más natural y pragmático, una vez que lo dominas. Los lenguajes de programación orientada a objetos te permiten dividir su software en problemas pequeños que luego puede resolver, un objeto a la vez.

Esto no quiere decir que la programación orientada a objetos sea el único camino verdadero. Sin embargo, las ventajas de la programación orientada a objetos son muchas. Cuando necesita resolver desafíos de programación complejos y desea agregar herramientas de código a tu conjunto de habilidades, OOP es su amigo, y tiene una longevidad y utilidad mucho mayores que Pac-Man o los pantalones de paracaídas.

imagen: @sarinya9940

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

Campos obligatorios(*)
post-tittle

Beneficios de la Programación Orientada a Objetos

Por: Reclu IT

22 de diciembre de 2021

El 27 de julio, pero de 1926, nació Kristen Nygaard reconocido como coinventor de la programación orientada a objetos y el lenguaje de programación Simula, junto con Ole-Johan Dahl en los años 1960.

La programación orientada a objetos se ha convertido en una parte fundamental del desarrollo de software. En la actulidad está en popularidad gracias a los lenguajes de programación orientada Python, PHP y Ruby.

Entender la idea de la POO puede ser un desafío para algunos profesionales IT. Quizás se pregunte por qué necesita objetos cuando podría utilizar el enfoque descendente de la programación estructurada tradicional en lenguajes como Visual Basic.

Si has escrito este tipo de software, probablemente estés acostumbrado a dividir grandes problemas en subproblemas y resolverlos en unidades de código separadas. O puede tener experiencia con la programación funcional, que trata los elementos del código como funciones matemáticas precisas y evita que afecten a otros elementos, es decir, sin efectos secundarios.

Sin embargo, al familiarizarse con la programación orientada a objetos descubrirás que es una forma completamente nueva de resolver problemas. El concepto básico es que en lugar de escribir un programa, creas una clase, que es una especie de plantilla que contiene variables y funciones. Los objetos son instancias independientes de esa clase y puede hacer que interactúen de manera divertida y emocionante.

Las ventajas de la POO residen en este tipo de encapsulación. A continuación, se ofrece una descripción detallada de algunos de los principales beneficios de la programación orientada a objetos:

  • Modularidad para facilitar la resolución de problemas

Algo salió mal y no tienes idea de dónde buscar. ¿El problema está en el archivo Widget o es WhaleFlumper? ¿Tendrá que revisar ese archivo «sewage.c»? Sólo queda ver la documentación.

Cuando trabaja con lenguajes de programación orientados a objetos, sabes exactamente dónde buscar.

Esa es la belleza de la encapsulación. Los objetos son autónomos y cada bit de funcionalidad hace lo suyo mientras deja los otros bits en paz. Además, esta modalidad permite que un equipo de TI trabaje en varios objetos simultáneamente y minimiza la posibilidad de que una persona pueda duplicar la funcionalidad de otra.

  • Reutilización de código heredado

Supón que, tienes un objeto Car, y un colega necesita un objeto RaceCar y otro necesita un objeto Limousine. Todos construyen sus objetos por separado, pero descubren puntos en común entre ellos. De hecho, cada objeto es en realidad un tipo diferente de Car. Aquí es donde la técnica de herencia ahorra tiempo: crea una clase genérica (Car) y luego se definen las subclases (RaceCar y Limousine) que heredarán los rasgos de la clase genérica.

Por supuesto, Limousine y RaceCar todavía tienen sus atributos y funciones únicos. Si el objeto RaceCar necesita un método para «fireAfterBurners» y el objeto Limousine requiere un Chofer, cada clase se podría implementar funciones separadas solo para sí misma. Sin embargo, debido a que ambas clases heredan aspectos clave de la clase Car, por ejemplo, los métodos «drive» o «fillUpGas», sus clases heredadas pueden simplemente reutilizar el código existente en lugar de escribir estas funciones de nuevo.

  • Flexibilidad a través del polimorfismo

Siguiendo con este ejemplo, ahora sólo necesitas algunos controladores o funciones, como «driveCar», driveRaceCar «y» DriveLimousine «. RaceCarDrivers comparte algunos rasgos con LimousineDrivers, pero otras cosas, como RaceHelmets y BeverageSponsorships, son únicas.

Aquí es donde entra en juego el polimorfismo de la POO. Debido a que una sola función puede cambiar de forma para adaptarse a cualquier clase en la que se encuentre, puedes crear una función en la clase de automóvil principal llamada «drive», no «driveCar» o «driveRaceCar», sino simplemente «drive». Esta función funcionaría con RaceCarDriver, LimousineDriver, etc. De hecho, incluso podría tener «raceCar.drive (myRaceCarDriver)» o «limo.drive (myChauffeur)».

  • Resolución eficaz de problemas

La programación orientada a objetos es a menudo el enfoque más natural y pragmático, una vez que lo dominas. Los lenguajes de programación orientada a objetos te permiten dividir su software en problemas pequeños que luego puede resolver, un objeto a la vez.

Esto no quiere decir que la programación orientada a objetos sea el único camino verdadero. Sin embargo, las ventajas de la programación orientada a objetos son muchas. Cuando necesita resolver desafíos de programación complejos y desea agregar herramientas de código a tu conjunto de habilidades, OOP es su amigo, y tiene una longevidad y utilidad mucho mayores que Pac-Man o los pantalones de paracaídas.

imagen: @sarinya9940

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

Campos obligatorios(*)

Política de privacidad de www.recluit.mx

Para recibir la información sobre sus Datos Personales, la finalidad y las partes con las que se comparte,
contacten con el Propietario.