¿Qué resuelve la Programación Orientada a Objetos?

2/37
Recursos

La programación Orientada a Objetos nace de los problemas creados por la programación estructurada y nos ayuda a resolver cierto problemas como:

  • Código muy largo: A medida que un sistema va creciendo y se hace más robusta el código generado se vuelve muy extenso haciéndose difícil de leer, depurar, mantener.

  • Si algo falla, todo se rompe: Ya que con la programación estructurada el código se ejecuta secuencialmente al momento de que una de esas líneas fallara todo lo demás deja de funcionar.

  • Difícil de mantener.

Aportes 236

Preguntas 21

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Soy perverso para crear memes pero fue inevitable pensar en esto xD :

Soy programador de c para disositivos embebidos y deseo aclarar que no todo se puede resolver por POO, y que el problema de la programación spagueti no es implicito del tipo de programación solo es una mala costumbre, primero al no dividir en varios archivos un proyecto de forma logica, se debe tener ciudado ya que al programar POO tambien podemos hacer una mezcolanza y la culpa seria del que la programo no del lenguaje.

¿Qué resuelve la Programación Orientación a Objetos?

- Principalmente esos problemas y huecos que nos deja la programación estructurada tales como:
1.Código muy largo:
2.Si algo falla todo se rompe
3.Código Spaguetti: Muchas sentencias de control anidadas y pérdida de control sobre el código.

- Simplifica la programación, la hace más práctica, divertida y amigable.

Unos dirán que es código espaguetti otros que es Inteligencia Artificial.

¿Qué nos ayuda a resolver la POO?


Huecos que la programación estructurada no resuelve, por lo que la estructuración por objetos surgió como una solución.

  • Ayuda a leer, depurar y mantener código que puede ser muy largo.
  • Evita que todo se rompa si algo falla.
  • Facilita el mantenimiento del código.
  • Evita generar un código espaguetti. Aquél que tiene demasiadas sentencias de control anidadas.

jajajajajajaja

El entusiasmo de la profe por enseñar no tiene precio

Enlace al Curso de Programación Estructurada 😉: https://platzi.com/clases/programacion-estructurada/

Yo actualmente trabajo con COBOL y mi programa favorito tiene poco mas de 40000 lineas 😃

📦 La Programación Orientada a Objetos permite que tu experiencia desarrollando software, sea placentera.

Excelente presentación de las malas prácticas de programación.

La malas prácticas de programación no se erradican por el solo hecho de basarse en otro paradigma.

POO vs Netflix bandernach :V

Me dieron mi pedrada!!
Yo programo en Fortran y tengo mis programas de 2 mil líneas 😦
Al final del curso veré si se cumplieron las promesas de la programación orientada a objetos.

Sos la mejor profesora hasta ahora. Tenes la mejor pedagogía

Vaya que si noto la diferencia con tan genial explicación.
Maravillosa profesora y excelente clase 😃

Se puede decir que si la programación orientada a objeto viene de la programación estructurada es una instancia de esta? (Por cierto es chiste jaja!)

Yo inicie en el ambito laboral programendo en Cobol y llegue a ver programas de 40,000 lineas, era una locura meterle mano a ese programa.

La programación orientada a Objetos soluciona los problemas que nos dejo la programación estructurada.

Una de las cosas que mas nos afectan a los programadores es acostumbrarnos a programar utilizando malas prácticas ya que es muy difícil dejar de hacerlos, pero una vez que aprendemos a trabajar con buenas prácticas vemos que todo es mas sencillo y fácil asi que compañeros… ¡No se rindan y núnca paren de aprender!

El Famoso Código Espagueti 🍝

Programo desde hace años, pero me llamo la atención el curso por que Anahi es una gran profesora

Programadores vintage 😂.

Ya regreso. Voy a ver el curso de Programación estructurada!!!

OMG OMG OMG OMG !!!

LLegué aquí porque esta es mi mayor duda existencial: POO

Yo todavía veo codigo de ese tipo en la programación orientada a objetos ;__; es como una pesadilla

me gustaría programar apps de educación musical para empezar…

Deberían dar una carrera de java en platzi con anahi como profesora .
saludos!

Se nota ese don increíble que tienen varios profesores de Platzi al enseñar… La pasión se transmite… Genial! 😃

Trabajo en un banco, he visto programas en Cobol, y un solo programa es muy extenso, difícil de comprender.

Es utilizada para solucionar los problemas que la programación estructurada no puede llegar a resolver. La programación orientada a objetos evita que creemos código desordenado, ilegible y dificultoso de mantener. Desde esta idea parte una serie de soluciones que ofrece este paradigma: eliminar código innecesario y por consiguiente facilitar el mantenimiento del mismo.

Muchas gracias por la buena explicación y entusiasmo C:

Qué resuelve la programación a objetos

resuelve los huecos de programación estructurada

  • Código muy largo
  • Si algo falla, todo se rompe
  • Difícil de mantener
  • Código espagueti
  • Simplificar la programación

la poo que intenta es simplificar la complejidad

La programación orientada a objetos resuelve problemas que resultan de la programación estructurada. Esperaba con ansias este curso para complementar todo lo visto en el challenge de python y poder programar en forma mis aplicaciones.

Excelente clase 😃
Codigo Espagueti jajaja 😄 siempre me antojan de comida …

**La profe Anai **= Si algo falla, todo se rompe como no colocar un " ; ".

**C# **= Me hablaron?

¿A qué se refiere el término mantener?
Cuando hablamos de mantener código hacemos referencia a que en el futuro tu código puede generar errores (bugs) y es necesario modificarlo o puede que necesites agregar otras funcionalidades al programa. El código mantenible permitirá una mejor lectura del mismo.

Les comparto este repositorio que sirve de guía para el examen final, pues contiene las preguntas que se encuentran en el examen, la justificación y el video del curso donde se habla sobre eso. Espero y les sea de utilidad 😄.
Platzi-Test

Oigan, pasa algo si no vi antes el curso de programación estructurada??? estoy viendo este curso por que llevo POO en este semestre

Creo que el codigo espaghetti excede el ambito programacion funcional u orientada a objetos. Al desarrollar funciones muchas veces esta la opcion de desglozarla en funciones mas pequeñas que eviten el codigo espaghetti y sean mas claras de interpretar y en la programacion orientada a objetos puede verse ese mismo codigo en un metodo (es inusual pero he visto if anidados que podian refactorizarse y escribirse de otra forma). Es decir, considero que corresponde a las buenas practicas mas que a la estructura de la aplicacion. Lo que si es verdad es que la orientacion a objetos lleva mas naturalmente a programar sin codigo espaghetti.

yo soy amante de la programación estructurada, pero hay que adaptarse, mas liviano mejor, mas comprensible mejor, si lo puedes aislar lo puedes solucionar, son algunas de las frases que se me vienen a la mente con esto de la POO, ha seguir aprendiendo 😃

El código espagueti también es muuuy común en los html, he visto cosas horribles.
Tal vez sería interesante alguna especie de nuevo html orientado a objetos, aunque los sitemas con plantillas son bastante poderosos… (sólo divagué un poco)

Resumén de la clase:

¿Qué resuelve la Programación Orientada a Objetos?

Permite resolver muchos de los “huecos” que tiene la programación estructurada. Entre los problemas que resuelve están:

  • El código muy largo.
  • Evita que si algo falla todo se rompa.
  • Reduce la dificultad de mantener el código.
  • Evita el código espagueti (demasiadas sentencias de control anidadas).

Soy de la época de la programación estructurada y he llegado a ver programas de más de 5000 líneas.

Hola, yo vengo de aprender a golpes contra pared en VBA para macros en Excel. Llegué a desarrollar códigos de más de 19 páginas en word sin interlineado. Y sí, copiaba mucho código y es horrible! En verdad que espero mucho aquí para ya poder migrar de la ofimática a este tipo de soluciones

La programación estructurada, es un código con un principio y fin líneal. La desventaja es un código largo, complicado y difícil de mantener.

La POO ataca estos problemas.

La programación orientada a objetos es un complemento a la programación estructurada. Sin embargo, la programación estructrada presenta varios problemas. Uno de ellos es que no es efectivo a medida que aumenta el tamaño del programa, es dificil a veces encontrar los errores del programa por su tamaño. En ese caso. la programación orientada a objetos controla efectivamente esos errores, y evita el código espagueti. Por tanto, la programación orientada a bjetos simplifica la programación.

¿Qué lo que esta resolviendo?


Nos resuelve:

  • El código muy largo. Lo que hace difícil poder depurar.
  • Si algo falla, todo se rompe.
  • Difícil de mantener.
  • Código espagueti. Demasiadas sentencias de control anidadas.

La programación orientada a objetos viene a simplificar estos problemas, hacer el código más sencillo y fácil de programar.

Aprendí a programar con programación estructurada. Pero claro, la POO es mucho más fácil y sencilla de entender.

Ya no más código espagueti 🍜

Me gusta la forma en la que explica
Código spaguettis interesante,🤔🤔🤔

Ann lo que mucho les falta a algunos profesores en las universales

¿Nos puedes dejar un enlace del curso anterior?

El de programación estructurada

He usado la programación estructurada durante algún tiempo y espero que la POO me ayude a llegar más lejos.

Es bonito cuando tienes el código simplificado y lo comparas contra el que no. Da mucha satisfacción.

POO = Felicidad XD

En la programación estructurada existen funciones que permiten reutilizar código, pero la programación orientada a objetos hace una abstracción mayor e introduce características como herencia, sobrecarga de métodos, entro otras que mejoran la reutilización de código.

Notas 📒

✏️ Qué resuelve POO?

Nace de los huecos de problemas que la programación estructurada no puede resolver eficientemente.

De entre las ventajas que brinda son:

  • Evita programar código muy largo
  • Los fallos no provoca que todo se rompa
  • Hace más fácil el mantenimiento
  • Evitar generar Código espagueti

Esta semana me topé con un controlador que tiene más de 18.000 líneas de código.

Un ejemplo de esto:

Esto es correcto, programo desde el año 97 iniciando con C++, C, FoxPro; la programación lineal era una locura porque el compilador de estos programas cuando se ejecutaba y retprnaba un error no decía en que linea, y cuando lo decía pues allá no estaba el error. Cuando esto empezó era muy complejo porque adicional no estaban los Platzi, muy poca info en internet, el trabajo era agruparnos y tirar código ayudando a revisar el error del otro. Hoy tenemos grandes oportunidades de seguir formandonos y estamos en el momento de hacerlo. Java es una forma muy bella de tirar código, ánimo! Tuve programas de 2500 lineas y más.

El código espagueti jajajjaa

informacion muy completa que me resuelvio muchas dudas

¿Qué resuelve la Programación Orientada a Objetos? 2/37
POO resuelve las deficiencias de la programación estructurada, a medida que crecen los programas
se necesita:
Reutilizar código.
Que sea más corto.
Simplifica la programación.
Programación estructurada tiende a crear:
Debido a su gran tamaño los programas son difícil de mantener, de leer, de entender, de depurar
La ejecución secuencial hace que sean difíciles de controlar, de mantener, si una línea falla, todo falla.

Código espagueti con demasiados saltos en el programa lo que dificulta su comprensión, demasiadas secuencias de control anidadas que dificultan saber que parte del código se ejecuta

Poca legibilidad del código

Estuve viendo muchos comentarios de que se debería hacer el curso de programación estructurada para poder entender este, y no estaba tan seguro así que de frente decidí hacer el examen y evaluarme y saque 25/28 lo que note es que la mayoría de preguntas relacionadas al temario del curso ya las he visto anteriormente (ya que hablan de variables, loops, condicionales, tipos de datos, principalmente) y que considero que para los poco/nada cursos que he realizado la verdad estaría completamente en la capacidad de entender este, ya que estado siguiendo la ruta de desarrollo web y si bien no aprobé el curso directamente considero que no es una mala nota para ver que solo vi una clase, ya que creería que con el curso básico y practico de js algo algo se me han afianzado los conceptos.
Creería que si no estas seguro de tomar o no el curso da el examen para que te evalúes y si estas fatal, pues si deberías hacerlo para reforzar conocimientos sino pues a seguir aprendiendo 😃

La imagen del código espaghetti reza: “a weird program for calculating Pi written in Fortran”. Lo dice todo.

Apenas estoy aprendiendo a programar y me surgió la duda de si ya no es necesario aprender programación estructurada

Programación Orientación a Objetos resuelve los problemas que dejo la programacion estructurada.

Problemas tales como:

  1. Código muy largo

  2. Si algo falla todo se rompe

  3. Código Spaguetti:

Me encanta la forma de explicar de la profesora. Muy entretenida la clase y sobre todo dan ganas de investigar mas las referencias que deja en cada sesión.

Bonita la explicación muy ameno.

POO > PE

La programación se vuelve mucho más sencilla gracias a mentes brillantes de la ingeniería que han hecho un trabajo increíble durante décadas.

En realidad el código espagueti está relacionado con el uso de sentencias de control como “go to”.

Anahi, no coincido contigo, código espagueti es código no estructurado, la programación estructurada resolvió los problemas del código espagueti y el paradigma de OOP complemento la programación estructurada con características que permiten mayor entendimiento del mundo real como las clases y la reutilizaron de código como la herencia, el polimorfismo entre otras cosas.

Que agradable saber eso, simplificar la programación

El callback Hell desde tiempos de FORTRAN hasta nuestros días con JS y su evolución al promises hell.

te imaginas ganar dineor por linea de codigo 😮

Problemas de la Programcación estructurada
(Que Resuelve la Programación Orientada a Objetos)

  • Código muy largo: el código generado para resolver un problema era muy largo y repetitivo
  • Si fallaba algo, todo se rompía, al ser lineal (el código se ejecutaba de inicio a fin), un error en estas líneas traía consigo que todo el programa cayera
  • Código espaguetti (difícil de leer), la programación estructurada trae consigo programas largos, con una gran cantidad de condicionales que hacen aún más dificil de leerlos
  • Dificil de mantener: todo lo antes mencionado, generaba problemas de mantenimiento, era muy difícil detectar errores en una cantidad enorme y desordenada de código

POO tiene dos corrientes principales:

  • Basado en Clases: Es la más ampliamente usada por los lenguajes POO. Por ejemplo es usada por Java, C++ y C#. Se basa en crear una estructura molde llamada clase donde se especifican los campos y métodos que tendrán nuestros objetos. Cada vez que necesitamos un objeto creamos una copia del objeto (instancia) usando la clase como molde.
  • Basada en prototipo: Es soportado en Javascript, Python y Ruby. No hay clases, solo hay objetos. El mecanismo para la reutilización está dado por la clonación de objetos. Se crean directamente los objetos y cuando se quiere generar otro con la misma estructura se usa clonación. Una vez clonado si queremos podemos agregar los campos y métodos necesarios. Un objeto prototípico es un objeto que se utiliza como una plantilla a partir de la cual se obtiene el conjunto inicial de propiedades de un objeto. Cualquier objeto puede ser utilizado como el prototipo de otro objeto, permitiendo al segundo objeto compartir las propiedades del primero.

Que chévere este curso, por acá nuevamente repasando

Me acabo de dar cuenta que siempre fui un programador estructurado: a puro IF & ELSE.

Y faltaron flechas:
de 20 a 26
de 21 a 27
y de 23 a 25
😛

Soy el único que obviamente perdió cualquier pizca de interés en hacer el curso de programación estructurada? XD.

Ya en serio.

La POO Resuelve

Problemas que pueden parecer fáciles de evitar pero cuando más te sumerges en la escritura, si solo saltas a lo loco a escribir y sin experiencia puedes terminar con un sabroso código Spaghetti 🍝.
Me parece importante decir que por eso no significa que debas esperar hacer código perfecto para practicar, NO. Todo lo contrario. Haz código, sin importar si es Spaghetti o no, solo mejorarás de dos maneras:

  • Practicando
  • Estudiando
    Y ambas hay que hacerlas, sigamos con este curso para dejar solo el spaghetti para el almuerzo

Soy programador Jr. Pero siempre está bien re aprender unos conceptos. Siempre se aprende algo nuevo. Excelente Profesora.

Que buena clase! No sabía nada acerca del código espagueti y es algo que he cometido. Toca aprender POO y evitar todos esos problemas de la programación estructurada.

Soy programadora Cobol, y en la actualidad los compiladores no permiten que queden errores de sintaxis.
Y se sigue usando mucho sobre todo en el sector financiero.

Comparto video que explica la lógica de la programación orientada a objetos
(https://www.youtube.com/watch?v=I848HdWjLMo&t=48s)

Codigo muy largo (much as lineas de codigo) es ineficiente

Lo bancos siguen. Utilizado cobol todo es programación estruturada

En este curso tambien estara c#

NETBEANS 8.2

Nadie quiere espagueti ahora. 😄

Que interesante, estos problemas a resolver se identifica conmigo.

Tanto en realizar codigos largos, y si realmente terrorifico , como es tan largo el codigo localizar el fallo es mas complicado

Es interesante como la programacion orientada a objetos resuleve estos problemas.