SlideShare una empresa de Scribd logo
Introducción a la
Programación Orientada a
Objetos
Historia
En el Centro de Cálculo Noruego, un equipo de
investigación, liderado por Krinsten Nygaard, tuvo
problemas en el desarrollo de simulaciones de
sistemas físicos, como el caso de simular el
funcionamiento y rendimiento de un motor. Se
dieron dos problemas en este punto:
1. Los programas eran muy complejos.
2. Las modificaciones, al ser una simulación, eran
muy frecuentes
… Historia
La solución que idearon fue diseñar el programa paralelamente al objeto físico.
Es decir, si el objeto físico tenía cien componentes, el programa también tendría
cien módulos, uno por cada pieza. Partiendo el programa de esta manera, había
una total correspondencia entre el sistema físico y el sistema informático. Así,
cada pieza física tenía su abstracción informática en un módulo. De la misma
manera que los sistemas físicos se comunican enviándose señales, los módulos
informáticos se comunicarían enviándose mensajes. [1]
[1]http://www.ati.es/novatica/1995/mar-abr/n114obje.html
… Historia
Además de resolverse las dificultades
anteriores. Se obtuvo otro beneficio:
reusabilidad. Cuando se construye un
programa, se obtienen piezas para futuros
programas.
A partir de esta situación, se desarrolló un
lenguaje de programación con algunos
conceptos pilares de la Programación
Orientada a Objetos. Este se denominó
SIMULA 67, y fue presentado en 1967 al
público.
Margaret Hamilton junto al
impreso de código fuente de la
Apollo Guidance Computer.
Fuente: NASA
Cronología de lenguajes que utilizan el paradigma
● 1960: Simula 67
● 1970: Smalltalk
● 1980: C++, Objetive-C
● 1990: JAVA, Ruby, Python
● 2000: C#, PHP 5
● 2010: Go, Kotlin
Ventajas
● Los componentes se pueden reutilizar. Esto reduce los costos en tiempo y
dinero en un proyecto.
● Facilidad de mantenimiento y modificación de los objetos existentes.
● Una estructura modular clara se puede obtener, la cual no revelará el
mecanismo detrás del diseño.
● Se proporciona un buen marco que facilita la creación de rica interfaz gráfica
de usuario aplicaciones (GUI).
● Se acopla bien a la utilización de bases de datos, debido a la correspondencia
entre las estructuras.
Desventajas
● Limitaciones del programador: Es posible el programador desconozca
algunas características del paradigma y de hecho siga utilizando otro
paradigma, por lo general el estructurado.
● No hay una forma única de resolver los problemas. Esto puede llevar a que
diferentes interpretaciones de la solución planteada emerjan.
● Se requiere una documentación amplia para determinar la solución
planteada.
● Es necesario invertir tiempo en el momento del diseño

Más contenido relacionado

Similar a Objetos: 2. Introducción a la programación orientada a objetos

¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
Jordi Cabot
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
Benjamín Joaquín Martínez
 
Multithreading a la manera de Delphi
Multithreading a la manera de DelphiMultithreading a la manera de Delphi
Multithreading a la manera de Delphi
Mayra Mendieta
 
Analisis Proyecto TETRAD V
 Analisis Proyecto TETRAD V Analisis Proyecto TETRAD V
Analisis Proyecto TETRAD V
Universidad de Cuenca
 
Introducción a la Tecnología Orientada a Objetos
Introducción a la Tecnología Orientada a ObjetosIntroducción a la Tecnología Orientada a Objetos
Introducción a la Tecnología Orientada a Objetos
edwinlemmon
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
Jordi Cabot
 
Cloud computing trabajo final
Cloud computing trabajo finalCloud computing trabajo final
Cloud computing trabajo final
Javier Navarro
 
Guía01 hardware y software
Guía01   hardware y softwareGuía01   hardware y software
Guía01 hardware y software
GIANELLAMOLINARIOS
 
7984
7984 7984
Software
SoftwareSoftware
Software
Jeisy Franco
 
Historia de los sistemas operativos
Historia de los sistemas operativosHistoria de los sistemas operativos
Historia de los sistemas operativos
demoniac23
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacion
Luis Peralta
 
Mp.exp.2.330152
Mp.exp.2.330152Mp.exp.2.330152
Mp.exp.2.330152
Blackladder
 
Los lenguajes de programación pasado presente y futuro
Los lenguajes de programación pasado presente y futuroLos lenguajes de programación pasado presente y futuro
Los lenguajes de programación pasado presente y futuro
Facultad de Informática UCM
 
Margarita(2)
Margarita(2)Margarita(2)
Margarita(2)
glendy michell
 
Futuro de la computacion
Futuro de la computacionFuturo de la computacion
Futuro de la computacion
Federico Montoya
 
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptCOMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
JUANPABLOCHVEZNAVA
 
Opcion 5 Certificacion
Opcion 5 CertificacionOpcion 5 Certificacion
Opcion 5 Certificacion
Paulino Avilez Brito
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
Maritere Cruz
 
Programación
ProgramaciónProgramación
Programación
ruthgarbus
 

Similar a Objetos: 2. Introducción a la programación orientada a objetos (20)

¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Multithreading a la manera de Delphi
Multithreading a la manera de DelphiMultithreading a la manera de Delphi
Multithreading a la manera de Delphi
 
Analisis Proyecto TETRAD V
 Analisis Proyecto TETRAD V Analisis Proyecto TETRAD V
Analisis Proyecto TETRAD V
 
Introducción a la Tecnología Orientada a Objetos
Introducción a la Tecnología Orientada a ObjetosIntroducción a la Tecnología Orientada a Objetos
Introducción a la Tecnología Orientada a Objetos
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programadores)
 
Cloud computing trabajo final
Cloud computing trabajo finalCloud computing trabajo final
Cloud computing trabajo final
 
Guía01 hardware y software
Guía01   hardware y softwareGuía01   hardware y software
Guía01 hardware y software
 
7984
7984 7984
7984
 
Software
SoftwareSoftware
Software
 
Historia de los sistemas operativos
Historia de los sistemas operativosHistoria de los sistemas operativos
Historia de los sistemas operativos
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacion
 
Mp.exp.2.330152
Mp.exp.2.330152Mp.exp.2.330152
Mp.exp.2.330152
 
Los lenguajes de programación pasado presente y futuro
Los lenguajes de programación pasado presente y futuroLos lenguajes de programación pasado presente y futuro
Los lenguajes de programación pasado presente y futuro
 
Margarita(2)
Margarita(2)Margarita(2)
Margarita(2)
 
Futuro de la computacion
Futuro de la computacionFuturo de la computacion
Futuro de la computacion
 
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptCOMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
 
Opcion 5 Certificacion
Opcion 5 CertificacionOpcion 5 Certificacion
Opcion 5 Certificacion
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Programación
ProgramaciónProgramación
Programación
 

Último

primer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporteprimer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporte
eliersin13
 
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
Maria Celeste Trujillo Cruz
 
Introduccion al Lenguaje de Programación C++
Introduccion al Lenguaje de Programación  C++Introduccion al Lenguaje de Programación  C++
Introduccion al Lenguaje de Programación C++
PaulDelgadoSoto
 
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcelherramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
Eduardo455921
 
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptxTARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
dayronfabricioruizmo
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
micarnavaltupatrimon
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
micarnavaltupatrimon
 
Buscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - BuscafiestaBuscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - Buscafiesta
holabuscafiesta
 

Último (8)

primer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporteprimer manual de nuestra compañía de soporte
primer manual de nuestra compañía de soporte
 
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
DIAPOSITIVA DE LA MEMORIA RAM.PPXT.-MARIATRUJILLO.
 
Introduccion al Lenguaje de Programación C++
Introduccion al Lenguaje de Programación  C++Introduccion al Lenguaje de Programación  C++
Introduccion al Lenguaje de Programación C++
 
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcelherramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
herramientaswebpdfwww.edu.pe.edu.institutoluisevalcarcel
 
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptxTARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
TARJETA MADRE DE DAYRON FABRI RUIZ-1.pptx
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
 
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...
 
Buscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - BuscafiestaBuscador de Eventos y Fiestas en España - Buscafiesta
Buscador de Eventos y Fiestas en España - Buscafiesta
 

Objetos: 2. Introducción a la programación orientada a objetos

  • 1. Introducción a la Programación Orientada a Objetos
  • 2. Historia En el Centro de Cálculo Noruego, un equipo de investigación, liderado por Krinsten Nygaard, tuvo problemas en el desarrollo de simulaciones de sistemas físicos, como el caso de simular el funcionamiento y rendimiento de un motor. Se dieron dos problemas en este punto: 1. Los programas eran muy complejos. 2. Las modificaciones, al ser una simulación, eran muy frecuentes
  • 3. … Historia La solución que idearon fue diseñar el programa paralelamente al objeto físico. Es decir, si el objeto físico tenía cien componentes, el programa también tendría cien módulos, uno por cada pieza. Partiendo el programa de esta manera, había una total correspondencia entre el sistema físico y el sistema informático. Así, cada pieza física tenía su abstracción informática en un módulo. De la misma manera que los sistemas físicos se comunican enviándose señales, los módulos informáticos se comunicarían enviándose mensajes. [1] [1]http://www.ati.es/novatica/1995/mar-abr/n114obje.html
  • 4. … Historia Además de resolverse las dificultades anteriores. Se obtuvo otro beneficio: reusabilidad. Cuando se construye un programa, se obtienen piezas para futuros programas. A partir de esta situación, se desarrolló un lenguaje de programación con algunos conceptos pilares de la Programación Orientada a Objetos. Este se denominó SIMULA 67, y fue presentado en 1967 al público. Margaret Hamilton junto al impreso de código fuente de la Apollo Guidance Computer. Fuente: NASA
  • 5. Cronología de lenguajes que utilizan el paradigma ● 1960: Simula 67 ● 1970: Smalltalk ● 1980: C++, Objetive-C ● 1990: JAVA, Ruby, Python ● 2000: C#, PHP 5 ● 2010: Go, Kotlin
  • 6. Ventajas ● Los componentes se pueden reutilizar. Esto reduce los costos en tiempo y dinero en un proyecto. ● Facilidad de mantenimiento y modificación de los objetos existentes. ● Una estructura modular clara se puede obtener, la cual no revelará el mecanismo detrás del diseño. ● Se proporciona un buen marco que facilita la creación de rica interfaz gráfica de usuario aplicaciones (GUI). ● Se acopla bien a la utilización de bases de datos, debido a la correspondencia entre las estructuras.
  • 7. Desventajas ● Limitaciones del programador: Es posible el programador desconozca algunas características del paradigma y de hecho siga utilizando otro paradigma, por lo general el estructurado. ● No hay una forma única de resolver los problemas. Esto puede llevar a que diferentes interpretaciones de la solución planteada emerjan. ● Se requiere una documentación amplia para determinar la solución planteada. ● Es necesario invertir tiempo en el momento del diseño