SlideShare una empresa de Scribd logo
1 de 14
PROGRAMACION
ORIENTADA A OBJETOS II
Parte 1
Mtra. Karla Silva R 1
INTRODUCCION
• Hace como 50 años, solamente una
computadora IBM7094 daba servicio a toda
la Universidad de Chicago. Ahora cualquier
persona puede tener más poder de cómputo
en su laptop que ellos en ese momento.
• Allá por los 70´s era una noticia cuando
alguien conectaba una computadora con
otra, simplemente al otro lado de la calle.
Ahora es común usar emails
transcontinentales.
Mtra. Karla Silva R 2
• Al principio las capacidades de hardware fueron
aumentando muy rápido, abaratando los costos.
• Por el contrario, los desarrolladores de software
seguían haciendo las mismas cosas en los
mismos lenguajes.
• Esto hizo que los costos de HW estuvieran muy
por debajo de los costos de SW.
• Los ingenieros de HW habían encontrado cómo
reusar los esfuerzos de otras personas. Cosa que
no hacían los ingenieros de SW, pues sus
programas eran únicos. Lo que resultaba muy
caro y frecuentemente de poca calidad.
Mtra. Karla Silva R 3
• Antes de la revolución industrial, la industria de
las armas de fuego apenas era realmente una
industria; se trataba más bien de una coalición
dispersa de artesanos individuales. Cada arma
de fuego era construida por un armero
individual, que construía cada una de las
partes a partir de materias primas. Las armas
de fuego así producidas eran muy caras, y
casa una de ellas era el producto de la
inspiración personal de un cierto armero.
• La revolución se produjo cuano Eli Whitney
recibió un gran contrato de fabricación para
hacer mosquetes para el gobierno.
Mtra. Karla Silva R 4
• La importancia de la POO es comparable a la que
tuvo la innovación de las piezas intercambiables
producida por Whitney, y por razones que son, en
gran parte, las mismas.
• Las dos redefinen la unidad de modularidad, de tal
manera que los trabajadores producen
subcomponentes en lugar de soluciones
completas. Los subcomponentes están
controlados mediante estándares y se pueden
intercambiar entre productos distintos. Los
programadores ya no construyen programas
completos a partir de materias primas, que son las
sentencias y expresiones desnudas de un lenguaje
de programación en lugar de hacer esto, producen
componentes SW reutilizables, ensamblando los
componentes de otros programadores.
Mtra. Karla Silva R 5
POO VS LOO
• La programación orientada a objetos es una
“filosofía”, un modelo de programación, con su
teoría y su metodología, que conviene conocer y
estudiar antes de nada.
• Un lenguaje orientado a objetos es un lenguaje de
programación que permite el diseño de
aplicaciones orientadas a objetos. Dicho esto, lo
normal es que toda persona que vaya a desarrollar
aplicaciones orientadas a objetos aprenda primero
la “filosofía” (o adquiera la forma de pensar) y
después el lenguaje, porque “filosofía” sólo hay
una y lenguajes muchos.
Mtra. Karla Silva R 6
UNA FORMA NUEVA DE PENSAR
• Es muy importante destacar que cuando
hacemos referencia a la programación
orientada a objetos no estamos hablando de
unas cuantas características nuevas
añadidas a un lenguaje de programación.
• Estamos hablando de una nueva forma de
pensar acerca del proceso de
descomposición de problemas y de
desarrollo de soluciones de programación.
Mtra. Karla Silva R 7
• La programación orientada a objetos surge en la
historia como un intento para dominar la
complejidad que, de forma innata, posee el
software.
• Tradicionalmente, la forma de enfrentarse a esta
complejidad ha sido empleando lo que llamamos
programación estructurada, que consiste en
descomponer el problema objeto de resolución en
subproblemas y más subproblemas hasta llegar a
acciones muy simples y fáciles de codificar.
Mtra. Karla Silva R 8
• Se trata de descomponer el problema en
acciones, en verbos. En el ejemplo de un
programa que resuelva ecuaciones de
segundo grado, descomponíamos el
problema en las siguientes acciones:
primero, pedir el valor de los coeficientes
a, b y c; después, calcular el valor del
discriminante; y por último, en función del
signo del discriminante, calcular ninguna,
una o dos raíces.
Mtra. Karla Silva R 9
• La programación orientada a objetos es
otra forma de descomponer problemas.
Este nuevo método de descomposición es
la descomposición en objetos; vamos a
fijarnos no en lo que hay que hacer en el
problema, sino en cuál es el escenario
real del mismo, y vamos a intentar simular
ese escenario en nuestro programa.
Mtra. Karla Silva R 10
• En el caso de los lenguajes orientados a
objetos, como es el caso de C++ y Java,
el elemento básico no es la función, sino
un ente denominado precisamente objeto.
• Un objeto es la representación en un
programa de un concepto, y contiene toda
la información necesaria para abstraerlo:
datos que describen sus atributos y
operaciones que pueden realizarse sobre
los mismos.
Mtra. Karla Silva R 11
• La programación orientada a objetos es
una nueva forma de pensar, una manera
distinta de enfocar los problemas. Ahí
radica la dificultad de aprender un
lenguaje totalmente orientado a objetos,
como es Java, sin conocer previamente
los pilares de la programación orientada a
objetos.
Mtra. Karla Silva R 12
Si nos detenemos a pensar sobre cómo se
nos plantea un problema cualquiera en la
realidad podremos ver que lo que hay en la
realidad son entidades (otros nombres que
podríamos usar para describir lo que aquí
llamo entidades son “agentes” u “objetos”).
Mtra. Karla Silva R 13
Estas entidades poseen un conjunto de propiedades o
atributos, y un conjunto de métodos mediante los cuales
muestran su comportamiento. Y no sólo eso, también
podremos descubrir, a poco que nos fijemos, todo un
conjunto de interrelaciones entre las entidades, guiadas
por el intercambio de mensajes; las entidades del
problema responden a estos mensajes mediante la
ejecución de ciertas acciones.
Mtra. Karla Silva R 14

Más contenido relacionado

Destacado

Estructura de un programa básico en c++
Estructura de un programa básico en c++Estructura de un programa básico en c++
Estructura de un programa básico en c++UVM
 
Formato actividades semana 1 (1)
Formato actividades semana 1 (1)Formato actividades semana 1 (1)
Formato actividades semana 1 (1)Luis Hernandez
 
Comunidad Emagister 43083 Microsoft Word 43082
Comunidad Emagister 43083 Microsoft Word   43082Comunidad Emagister 43083 Microsoft Word   43082
Comunidad Emagister 43083 Microsoft Word 43082fgrino
 
Ejercicios de test - desarrollo y programación
Ejercicios de test  -  desarrollo y programaciónEjercicios de test  -  desarrollo y programación
Ejercicios de test - desarrollo y programaciónoposicionestic
 
Examen Parcial 1 Introduccion Programacion
Examen Parcial 1 Introduccion ProgramacionExamen Parcial 1 Introduccion Programacion
Examen Parcial 1 Introduccion ProgramacionEinstein Briceño
 
Cuestionario Fundamentos de Programación
Cuestionario Fundamentos de ProgramaciónCuestionario Fundamentos de Programación
Cuestionario Fundamentos de ProgramaciónAnita Albán
 
Lenguaje de programacion de visual basic
Lenguaje de programacion de visual basicLenguaje de programacion de visual basic
Lenguaje de programacion de visual basicRosa Marina Mosquera
 
PREGUNTAS DE EXAMEN
PREGUNTAS DE EXAMENPREGUNTAS DE EXAMEN
PREGUNTAS DE EXAMENAlfa Mercado
 

Destacado (10)

Estructura de un programa básico en c++
Estructura de un programa básico en c++Estructura de un programa básico en c++
Estructura de un programa básico en c++
 
Formato actividades semana 1 (1)
Formato actividades semana 1 (1)Formato actividades semana 1 (1)
Formato actividades semana 1 (1)
 
Comunidad Emagister 43083 Microsoft Word 43082
Comunidad Emagister 43083 Microsoft Word   43082Comunidad Emagister 43083 Microsoft Word   43082
Comunidad Emagister 43083 Microsoft Word 43082
 
LA PLACA MADRE Y SUS PARTES
LA PLACA MADRE Y SUS PARTESLA PLACA MADRE Y SUS PARTES
LA PLACA MADRE Y SUS PARTES
 
preguntas de algoritmos
preguntas de algoritmospreguntas de algoritmos
preguntas de algoritmos
 
Ejercicios de test - desarrollo y programación
Ejercicios de test  -  desarrollo y programaciónEjercicios de test  -  desarrollo y programación
Ejercicios de test - desarrollo y programación
 
Examen Parcial 1 Introduccion Programacion
Examen Parcial 1 Introduccion ProgramacionExamen Parcial 1 Introduccion Programacion
Examen Parcial 1 Introduccion Programacion
 
Cuestionario Fundamentos de Programación
Cuestionario Fundamentos de ProgramaciónCuestionario Fundamentos de Programación
Cuestionario Fundamentos de Programación
 
Lenguaje de programacion de visual basic
Lenguaje de programacion de visual basicLenguaje de programacion de visual basic
Lenguaje de programacion de visual basic
 
PREGUNTAS DE EXAMEN
PREGUNTAS DE EXAMENPREGUNTAS DE EXAMEN
PREGUNTAS DE EXAMEN
 

Similar a Programación Orientada a Objetos Parte 1

Similar a Programación Orientada a Objetos Parte 1 (20)

POO
POOPOO
POO
 
Banco de reactivos total
Banco de reactivos totalBanco de reactivos total
Banco de reactivos total
 
LENGUAJE DE PROGRAMACIÓN ORIENTADA A OBJETOS
LENGUAJE DE PROGRAMACIÓN ORIENTADA A OBJETOSLENGUAJE DE PROGRAMACIÓN ORIENTADA A OBJETOS
LENGUAJE DE PROGRAMACIÓN ORIENTADA A OBJETOS
 
Swreng
SwrengSwreng
Swreng
 
R Introducción
R IntroducciónR Introducción
R Introducción
 
Manual de-java
Manual de-javaManual de-java
Manual de-java
 
Inteligencia Artificial con R
Inteligencia Artificial con RInteligencia Artificial con R
Inteligencia Artificial con R
 
C# for Beginners
C# for BeginnersC# for Beginners
C# for Beginners
 
Ivar Jacobson
Ivar JacobsonIvar Jacobson
Ivar Jacobson
 
Tecnología Orientada A Objetos
Tecnología Orientada A ObjetosTecnología Orientada A Objetos
Tecnología Orientada A Objetos
 
Met2 07 01-introduccion_poo
Met2 07 01-introduccion_pooMet2 07 01-introduccion_poo
Met2 07 01-introduccion_poo
 
Unidad V Python e ingeniería civil en obras civiles PVB
Unidad V Python e ingeniería civil en obras civiles PVBUnidad V Python e ingeniería civil en obras civiles PVB
Unidad V Python e ingeniería civil en obras civiles PVB
 
Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Tema nº 1
Tema nº 1Tema nº 1
Tema nº 1
 
Que es visual c# eduardo sorto
Que es visual c# eduardo sortoQue es visual c# eduardo sorto
Que es visual c# eduardo sorto
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
Rap reutilización apropiada para programadores
Rap reutilización apropiada para programadoresRap reutilización apropiada para programadores
Rap reutilización apropiada para programadores
 
Java s0
Java s0Java s0
Java s0
 
Lenguajes de programacion.
Lenguajes de programacion.Lenguajes de programacion.
Lenguajes de programacion.
 
Lenguaje de programación C - Cleibery.
Lenguaje de programación C - Cleibery.Lenguaje de programación C - Cleibery.
Lenguaje de programación C - Cleibery.
 

Más de Karla Silva

lnformacion General ITIL.pptx
lnformacion General ITIL.pptxlnformacion General ITIL.pptx
lnformacion General ITIL.pptxKarla Silva
 
lnformacion General SlE.pptx
lnformacion General SlE.pptxlnformacion General SlE.pptx
lnformacion General SlE.pptxKarla Silva
 
lnformacion General RV.pptx
lnformacion General RV.pptxlnformacion General RV.pptx
lnformacion General RV.pptxKarla Silva
 
Formato_Información general.pptx
Formato_Información general.pptxFormato_Información general.pptx
Formato_Información general.pptxKarla Silva
 
lnformacion General LP.pptx
lnformacion General LP.pptxlnformacion General LP.pptx
lnformacion General LP.pptxKarla Silva
 
Informacion general
Informacion generalInformacion general
Informacion generalKarla Silva
 
Actividad 1.pptx
Actividad 1.pptxActividad 1.pptx
Actividad 1.pptxKarla Silva
 
lnformacion General ISS.pptx
lnformacion General ISS.pptxlnformacion General ISS.pptx
lnformacion General ISS.pptxKarla Silva
 
Inf. Gral. Aplicaciónes Móviles.pptx
Inf. Gral. Aplicaciónes Móviles.pptxInf. Gral. Aplicaciónes Móviles.pptx
Inf. Gral. Aplicaciónes Móviles.pptxKarla Silva
 
lnformacion General SC.pptx
lnformacion General SC.pptxlnformacion General SC.pptx
lnformacion General SC.pptxKarla Silva
 
Información General.pptx
Información General.pptxInformación General.pptx
Información General.pptxKarla Silva
 
lnformacion General ISS.pptx
lnformacion General ISS.pptxlnformacion General ISS.pptx
lnformacion General ISS.pptxKarla Silva
 
Inf. Gral. Criptografía.pptx
Inf. Gral. Criptografía.pptxInf. Gral. Criptografía.pptx
Inf. Gral. Criptografía.pptxKarla Silva
 
Taller de prog. en android
Taller de prog. en androidTaller de prog. en android
Taller de prog. en androidKarla Silva
 
Programación Orientada a Objetos parte 3
Programación Orientada a Objetos  parte 3Programación Orientada a Objetos  parte 3
Programación Orientada a Objetos parte 3Karla Silva
 
Programación Orientada a Objetos parte 2
Programación Orientada a Objetos  parte 2Programación Orientada a Objetos  parte 2
Programación Orientada a Objetos parte 2Karla Silva
 
Programación Orientada a Objetos parte 1
Programación Orientada a Objetos  parte 1Programación Orientada a Objetos  parte 1
Programación Orientada a Objetos parte 1Karla Silva
 

Más de Karla Silva (18)

lnformacion General ITIL.pptx
lnformacion General ITIL.pptxlnformacion General ITIL.pptx
lnformacion General ITIL.pptx
 
lnformacion General SlE.pptx
lnformacion General SlE.pptxlnformacion General SlE.pptx
lnformacion General SlE.pptx
 
lnformacion General RV.pptx
lnformacion General RV.pptxlnformacion General RV.pptx
lnformacion General RV.pptx
 
Formato_Información general.pptx
Formato_Información general.pptxFormato_Información general.pptx
Formato_Información general.pptx
 
lnformacion General LP.pptx
lnformacion General LP.pptxlnformacion General LP.pptx
lnformacion General LP.pptx
 
Informacion general
Informacion generalInformacion general
Informacion general
 
Actividad 1.pptx
Actividad 1.pptxActividad 1.pptx
Actividad 1.pptx
 
lnformacion General ISS.pptx
lnformacion General ISS.pptxlnformacion General ISS.pptx
lnformacion General ISS.pptx
 
Inf. Gral. Aplicaciónes Móviles.pptx
Inf. Gral. Aplicaciónes Móviles.pptxInf. Gral. Aplicaciónes Móviles.pptx
Inf. Gral. Aplicaciónes Móviles.pptx
 
lnformacion General SC.pptx
lnformacion General SC.pptxlnformacion General SC.pptx
lnformacion General SC.pptx
 
Información General.pptx
Información General.pptxInformación General.pptx
Información General.pptx
 
lnformacion General ISS.pptx
lnformacion General ISS.pptxlnformacion General ISS.pptx
lnformacion General ISS.pptx
 
Inf. Gral. Criptografía.pptx
Inf. Gral. Criptografía.pptxInf. Gral. Criptografía.pptx
Inf. Gral. Criptografía.pptx
 
Presentación1
Presentación1Presentación1
Presentación1
 
Taller de prog. en android
Taller de prog. en androidTaller de prog. en android
Taller de prog. en android
 
Programación Orientada a Objetos parte 3
Programación Orientada a Objetos  parte 3Programación Orientada a Objetos  parte 3
Programación Orientada a Objetos parte 3
 
Programación Orientada a Objetos parte 2
Programación Orientada a Objetos  parte 2Programación Orientada a Objetos  parte 2
Programación Orientada a Objetos parte 2
 
Programación Orientada a Objetos parte 1
Programación Orientada a Objetos  parte 1Programación Orientada a Objetos  parte 1
Programación Orientada a Objetos parte 1
 

Último

RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfMaritzaRetamozoVera
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 

Último (20)

RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdfEjercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
Ejercicios de PROBLEMAS PAEV 6 GRADO 2024.pdf
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 

Programación Orientada a Objetos Parte 1

  • 1. PROGRAMACION ORIENTADA A OBJETOS II Parte 1 Mtra. Karla Silva R 1
  • 2. INTRODUCCION • Hace como 50 años, solamente una computadora IBM7094 daba servicio a toda la Universidad de Chicago. Ahora cualquier persona puede tener más poder de cómputo en su laptop que ellos en ese momento. • Allá por los 70´s era una noticia cuando alguien conectaba una computadora con otra, simplemente al otro lado de la calle. Ahora es común usar emails transcontinentales. Mtra. Karla Silva R 2
  • 3. • Al principio las capacidades de hardware fueron aumentando muy rápido, abaratando los costos. • Por el contrario, los desarrolladores de software seguían haciendo las mismas cosas en los mismos lenguajes. • Esto hizo que los costos de HW estuvieran muy por debajo de los costos de SW. • Los ingenieros de HW habían encontrado cómo reusar los esfuerzos de otras personas. Cosa que no hacían los ingenieros de SW, pues sus programas eran únicos. Lo que resultaba muy caro y frecuentemente de poca calidad. Mtra. Karla Silva R 3
  • 4. • Antes de la revolución industrial, la industria de las armas de fuego apenas era realmente una industria; se trataba más bien de una coalición dispersa de artesanos individuales. Cada arma de fuego era construida por un armero individual, que construía cada una de las partes a partir de materias primas. Las armas de fuego así producidas eran muy caras, y casa una de ellas era el producto de la inspiración personal de un cierto armero. • La revolución se produjo cuano Eli Whitney recibió un gran contrato de fabricación para hacer mosquetes para el gobierno. Mtra. Karla Silva R 4
  • 5. • La importancia de la POO es comparable a la que tuvo la innovación de las piezas intercambiables producida por Whitney, y por razones que son, en gran parte, las mismas. • Las dos redefinen la unidad de modularidad, de tal manera que los trabajadores producen subcomponentes en lugar de soluciones completas. Los subcomponentes están controlados mediante estándares y se pueden intercambiar entre productos distintos. Los programadores ya no construyen programas completos a partir de materias primas, que son las sentencias y expresiones desnudas de un lenguaje de programación en lugar de hacer esto, producen componentes SW reutilizables, ensamblando los componentes de otros programadores. Mtra. Karla Silva R 5
  • 6. POO VS LOO • La programación orientada a objetos es una “filosofía”, un modelo de programación, con su teoría y su metodología, que conviene conocer y estudiar antes de nada. • Un lenguaje orientado a objetos es un lenguaje de programación que permite el diseño de aplicaciones orientadas a objetos. Dicho esto, lo normal es que toda persona que vaya a desarrollar aplicaciones orientadas a objetos aprenda primero la “filosofía” (o adquiera la forma de pensar) y después el lenguaje, porque “filosofía” sólo hay una y lenguajes muchos. Mtra. Karla Silva R 6
  • 7. UNA FORMA NUEVA DE PENSAR • Es muy importante destacar que cuando hacemos referencia a la programación orientada a objetos no estamos hablando de unas cuantas características nuevas añadidas a un lenguaje de programación. • Estamos hablando de una nueva forma de pensar acerca del proceso de descomposición de problemas y de desarrollo de soluciones de programación. Mtra. Karla Silva R 7
  • 8. • La programación orientada a objetos surge en la historia como un intento para dominar la complejidad que, de forma innata, posee el software. • Tradicionalmente, la forma de enfrentarse a esta complejidad ha sido empleando lo que llamamos programación estructurada, que consiste en descomponer el problema objeto de resolución en subproblemas y más subproblemas hasta llegar a acciones muy simples y fáciles de codificar. Mtra. Karla Silva R 8
  • 9. • Se trata de descomponer el problema en acciones, en verbos. En el ejemplo de un programa que resuelva ecuaciones de segundo grado, descomponíamos el problema en las siguientes acciones: primero, pedir el valor de los coeficientes a, b y c; después, calcular el valor del discriminante; y por último, en función del signo del discriminante, calcular ninguna, una o dos raíces. Mtra. Karla Silva R 9
  • 10. • La programación orientada a objetos es otra forma de descomponer problemas. Este nuevo método de descomposición es la descomposición en objetos; vamos a fijarnos no en lo que hay que hacer en el problema, sino en cuál es el escenario real del mismo, y vamos a intentar simular ese escenario en nuestro programa. Mtra. Karla Silva R 10
  • 11. • En el caso de los lenguajes orientados a objetos, como es el caso de C++ y Java, el elemento básico no es la función, sino un ente denominado precisamente objeto. • Un objeto es la representación en un programa de un concepto, y contiene toda la información necesaria para abstraerlo: datos que describen sus atributos y operaciones que pueden realizarse sobre los mismos. Mtra. Karla Silva R 11
  • 12. • La programación orientada a objetos es una nueva forma de pensar, una manera distinta de enfocar los problemas. Ahí radica la dificultad de aprender un lenguaje totalmente orientado a objetos, como es Java, sin conocer previamente los pilares de la programación orientada a objetos. Mtra. Karla Silva R 12
  • 13. Si nos detenemos a pensar sobre cómo se nos plantea un problema cualquiera en la realidad podremos ver que lo que hay en la realidad son entidades (otros nombres que podríamos usar para describir lo que aquí llamo entidades son “agentes” u “objetos”). Mtra. Karla Silva R 13
  • 14. Estas entidades poseen un conjunto de propiedades o atributos, y un conjunto de métodos mediante los cuales muestran su comportamiento. Y no sólo eso, también podremos descubrir, a poco que nos fijemos, todo un conjunto de interrelaciones entre las entidades, guiadas por el intercambio de mensajes; las entidades del problema responden a estos mensajes mediante la ejecución de ciertas acciones. Mtra. Karla Silva R 14