SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Programa Microsoft Desarrollador Cinco Estrellas  Estrella 0 -Introducción a la Orientación a Objetos
Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño y programación
Prerrequisitos Poseer los conocimientos proporcionados en los siguientes módulos de la Estrella 0: Fundamentos de Programación
Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Principios de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
Paradigmas de Programación Hay para todos los gustos Estructurados (C, Pascal, Basic, etc.) Funcionales (CAML) Declarativos (Prolog) Orientados a Objetos (C#, VB.NET, Smalltalk, Java) Orientados a Aspectos Híbridos (Lisp, Visual Basic) Incomprensibles.... Cada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas
El mundo color de Objetos Todo el mundo está compuesto de entidades que se relacionan e interactúan entre si ¿Qué es un Objeto? Todo es un Objeto ¡¿~?! ¿Es lo mismo de siempre con otro nombre? Pensar en Objetos …. No es el último grito de la moda (1980s)
El mundo color de Objetos ¿Por qué Orientación a Objetos (OO)? Se parece más al mundo real Permite representar modelos complejos Muy apropiada para aplicaciones de negocios Las empresas ahora sí aceptan la OO Las nuevas plataformas de desarrollo la han adoptado (Java / .NET)
Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Principios de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
¿Qué es un Objeto? Informalmente, un objeto representa una entidad del mundo real Entidades Físicas  (Ej.: Vehículo, Casa, Producto) Entidades Conceptuales  (Ej.: Proceso Químico, Transacción Bancaria) Entidades de Software  (Ej.: Lista Enlazada, Interfaz Gráfica)
¿Qué es un Objeto? Definición Formal (Rumbaugh): “Un objeto es un concepto, abstracción o cosa con un significado y límites claros en el problema en cuestión”  Un objeto posee (Booch): Estado Comportamiento Identidad
Un objeto posee Estado Lo que el objeto sabe El estado de un objeto es una de las posibles condiciones en que el objeto puede existir El estado normalmente cambia en el transcurso del tiempo El estado de un objeto es implementado por un conjunto de propiedades (atributos), además de las conexiones que puede tener con otros objetos
Un objeto posee Comportamiento Lo que el objeto puede hacer El comportamiento de un objeto determina cómo éste actúa y reacciona frente a las peticiones de otros objetos Es modelado por un conjunto de mensajes a los que el objeto puede responder (operaciones que puede realizar) Se implementa mediante métodos
Un objeto posee Identidad Cada objeto tiene una identidad única, incluso si su estado es idéntico al de otro objeto
¿Qué es una Clase? Una clase es una descripción de un grupo de objetos con:  Propiedades en común (atributos) Comportamiento similar (operaciones) La misma forma de relacionarse con otros objetos (relaciones) Una semántica en común (significan lo mismo) Una clase es una abstracción que: Enfatiza las características relevantes Suprime otras características (simplificación) Un objeto es una instancia de una clase
Objetos y Clases Una clase es una definición abstracta de un objeto Define la estructura y el comportamiento compartidos por los objetos Sirve como modelo para la creación de objetos  Los objetos pueden ser agrupados en clases
Ejemplo de una Clase Clase: Curso Estado (Atributos) Nombre Ubicación Días Ofrecidos Horario de Inicio Horario de Término Comportamiento (Métodos) Agregar un Alumno Borrar un Alumno Entregar un Listado del Curso Determinar si está Completo
Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Pilares de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
Modificadores de Acceso Permiten definir el nivel de acceso (visibilidad) de los miembros (atributos o métodos) de una clase Publico: Cualquier clase puede “ver” los miembros públicos de otra clase Privado: Sólo la clase puede ver sus propios miembros privados Existen otros dos modificadores para propósitos específicos (Paquete, Protegido)
Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Pilares de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
¿Qué es UML? “UML es un lenguaje visual para especificar, construir y documentar sistemas” (OMG - Object Management Group) Unified (UNIFICADO): El aporte de muchos métodos y notaciones Independiente de implementaciones, plataformas y lenguajes Modeling (MODELADO): Los modelos son utilizados en todas las ingenierías Language (LENGUAJE): Si hay gente, requieren comunicarse. Si se tienen que comunicar, se tienen que entender. Para entenderse necesitan un lenguaje común ¡UML no es Metodología!
Una Clase en UML Una clase está compuesta  de tres secciones La primera sección contiene el nombre de la clase La segunda sección muestra la estructura (atributos) La tercera sección muestra el comportamiento (operaciones) La segunda y la tercera sección pueden ser suprimidas Modificadores de Acceso Los miembros públicos se denotan con el signo “+” Los miembros privados se denotan con el signo “–”
Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Pilares de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
Abstracción Relaciones Encapsulamiento  Herencia Pilares de la Orientación a Objetos
Abstracción Ignorancia Selectiva La abstracción nos ayuda a trabajar con cosas complejas Se enfoca en lo importante Ignora lo que no es importante (simplifica) Una clase es una abstracción en la que: Se enfatizan las características relevantes Se suprimen otras características Una clase debe capturar una y solo una abstracción clave
Encapsulamiento Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos Deben ser declarados como privados Permite abstraer al resto del mundo de la complejidad de la implementación interna Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos ¿Por qué es útil? Punto de Control/Validación Mejor respuesta ante los Cambios
Relaciones Todo sistema abarca muchas clases y objetos  Los objetos contribuyen en el comportamiento de un sistema  colaborando entre si   La colaboración se logra a través de las relaciones   Existen dos tipos principales de relaciones  Asociación Agregación
Relaciones de Asociación Una asociación es una conexión entre dos clases que representa una comunicación Una asociación puede tener nombre La comunicación puede ser tanto uni como bi-direccional (por  defecto) La multiplicidad es el número de instancias que participan en una asociación Ejemplo: Una Persona es Dueña de un Vehículo Un Vehículo Pertenece a una Persona
Relaciones de Agregación La agregación es una forma especial de asociación donde un todo se relaciona con sus partes También se conoce como “una parte de” o una relación de contención Ejemplo: Una Puerta es una parte de un Vehículo El Vehículo es azul, la Puerta es Azul Mover el Vehículo implica mover la Puerta
Herencia Clase Base Es una relación entre clases en la cual una clase comparte la estructura y comportamiento definido en otra clase (Grady Booch) Cada clase que hereda de otra posee: Los atributos de la clase base además de los propios Soporta todos o algunos de los métodos de la clase base Una subclase hereda de una clase base Clases Derivadas o subclases
Herencia Herencia “Es-Un”:  herencia real, donde la subclase es  un tipo específico de la superclase Un Cuadrado es un Rectángulo Un perro es un mamífero Un automóvil es un vehículo a motor
Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Principios de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
Interfaces (1/3) Recurso de diseño soportado por los lenguajes orientados a objetos que permite definir comportamiento Permite que clases que no están estrechamente relacionadas entre sí deban tener el mismo comportamiento La implementación de una interfaz es un contrato que obliga a la clase a implementar todos los métodos definidos en la interfaz
Interfaces (2/3) ¿ De que clase heredaría la clase Hidroavión ?
Interfaces (3/3) Se crean las interfaces que definen comportamiento Hidroavión deberá definir los comportamientos de cada una de las interfaces que implemente
Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así Polimorfismo
Polimorfismo - Ejemplo Transporte Transporte Transporte Avanzar Avanzar Avanzar Frenar Frenar Frenar Transporte Avanzar Frenar La definición del método reside en la clase base La implementación del método reside en la clase derivada La invocación es resuelta al momento de ejecución
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Weitere ähnliche Inhalte

Was ist angesagt?

Análisis y Diseño OO 1
Análisis y Diseño OO 1Análisis y Diseño OO 1
Análisis y Diseño OO 1Jano González
 
Introduccion orientaciona objetos
Introduccion orientaciona objetosIntroduccion orientaciona objetos
Introduccion orientaciona objetosExtremo Castro
 
Diseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosDiseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosJosue Sarabia
 
Introducción a la programación orientada objetos
Introducción a la programación orientada objetosIntroducción a la programación orientada objetos
Introducción a la programación orientada objetosRenny Batista
 
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a  Programación Orientada a Objetos (OOP): Clases y ObjetosIntroducción a  Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a Programación Orientada a Objetos (OOP): Clases y ObjetosKudos S.A.S
 
Fundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetosFundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetosALGLYS RAMIREZ
 
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSCUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSLuis Miguel Gutierrez
 
Curso Java Inicial 4 Poo En Java
Curso Java Inicial   4 Poo En JavaCurso Java Inicial   4 Poo En Java
Curso Java Inicial 4 Poo En JavaEmilio Aviles Avila
 
Unidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióNUnidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióNSergio Sanchez
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con javaEudris Cabrera
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosAlvaro Enrique Ruano
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetospontifica
 
Poo Programacion Orientada A Objetos Java
Poo   Programacion Orientada A Objetos   JavaPoo   Programacion Orientada A Objetos   Java
Poo Programacion Orientada A Objetos JavaC_QUENGUAN
 

Was ist angesagt? (19)

Análisis y Diseño OO 1
Análisis y Diseño OO 1Análisis y Diseño OO 1
Análisis y Diseño OO 1
 
Introduccion orientaciona objetos
Introduccion orientaciona objetosIntroduccion orientaciona objetos
Introduccion orientaciona objetos
 
Diseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosDiseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetos
 
Introducción a la programación orientada objetos
Introducción a la programación orientada objetosIntroducción a la programación orientada objetos
Introducción a la programación orientada objetos
 
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a  Programación Orientada a Objetos (OOP): Clases y ObjetosIntroducción a  Programación Orientada a Objetos (OOP): Clases y Objetos
Introducción a Programación Orientada a Objetos (OOP): Clases y Objetos
 
Intro oo2
Intro oo2Intro oo2
Intro oo2
 
Fundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetosFundamentos básicos de la programación orientada a objetos
Fundamentos básicos de la programación orientada a objetos
 
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOSCUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
 
Curso Java Inicial 4 Poo En Java
Curso Java Inicial   4 Poo En JavaCurso Java Inicial   4 Poo En Java
Curso Java Inicial 4 Poo En Java
 
Unidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióNUnidad 1 Mad IntroduccióN
Unidad 1 Mad IntroduccióN
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
POO sencillito
POO sencillitoPOO sencillito
POO sencillito
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
conceptos de la poo
conceptos de la pooconceptos de la poo
conceptos de la poo
 
Pilares de la POO
Pilares de la POOPilares de la POO
Pilares de la POO
 
Poo Programacion Orientada A Objetos Java
Poo   Programacion Orientada A Objetos   JavaPoo   Programacion Orientada A Objetos   Java
Poo Programacion Orientada A Objetos Java
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
3_Orientación a objeto
3_Orientación a objeto3_Orientación a objeto
3_Orientación a objeto
 

Ähnlich wie Introducción a la Orientación a Objetos con 5 conceptos clave

C# para desarrolladores VB6
C# para desarrolladores VB6C# para desarrolladores VB6
C# para desarrolladores VB6Tonymx
 
UML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoUML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoEliseo Castro
 
Presentacion de-uml-formato-2-1227891304393749-8
Presentacion de-uml-formato-2-1227891304393749-8Presentacion de-uml-formato-2-1227891304393749-8
Presentacion de-uml-formato-2-1227891304393749-8Henry Ayala
 
presentacion-tema-i-unidad-ii.GFGFHFHGppt
presentacion-tema-i-unidad-ii.GFGFHFHGpptpresentacion-tema-i-unidad-ii.GFGFHFHGppt
presentacion-tema-i-unidad-ii.GFGFHFHGpptjorgealfarol
 
Analisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosAnalisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosEliecer Suarez
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetosAgapito26
 
Modelado con clases instancias
Modelado con clases instanciasModelado con clases instancias
Modelado con clases instanciasCarlos Castro
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetosronnyme21
 
Programacion estructurada en objetos
Programacion estructurada en objetosProgramacion estructurada en objetos
Programacion estructurada en objetosAngel Ordoñez
 
Conceptos y definiciones de poo. alumno.juan manuel osorio baruch
Conceptos y definiciones de poo. alumno.juan manuel osorio baruchConceptos y definiciones de poo. alumno.juan manuel osorio baruch
Conceptos y definiciones de poo. alumno.juan manuel osorio baruchJuan Osorio Baruch
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clasesmtemarialuisa
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clasesmtemarialuisa
 
Programación orientada a objeto
Programación orientada a objetoProgramación orientada a objeto
Programación orientada a objetoHRS1993
 
Taller campus party .net
Taller campus party .netTaller campus party .net
Taller campus party .netcampus party
 
Taller campus party
Taller campus partyTaller campus party
Taller campus partycampus party
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetosJonathan Marcillo
 

Ähnlich wie Introducción a la Orientación a Objetos con 5 conceptos clave (20)

C# para desarrolladores VB6
C# para desarrolladores VB6C# para desarrolladores VB6
C# para desarrolladores VB6
 
UML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoUML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento Unificado
 
Presentacion de-uml-formato-2-1227891304393749-8
Presentacion de-uml-formato-2-1227891304393749-8Presentacion de-uml-formato-2-1227891304393749-8
Presentacion de-uml-formato-2-1227891304393749-8
 
presentacion-tema-i-unidad-ii.GFGFHFHGppt
presentacion-tema-i-unidad-ii.GFGFHFHGpptpresentacion-tema-i-unidad-ii.GFGFHFHGppt
presentacion-tema-i-unidad-ii.GFGFHFHGppt
 
Analisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosAnalisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado Objetos
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Modelado con clases instancias
Modelado con clases instanciasModelado con clases instancias
Modelado con clases instancias
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Java
JavaJava
Java
 
Programacion estructurada en objetos
Programacion estructurada en objetosProgramacion estructurada en objetos
Programacion estructurada en objetos
 
Conceptos y definiciones de poo. alumno.juan manuel osorio baruch
Conceptos y definiciones de poo. alumno.juan manuel osorio baruchConceptos y definiciones de poo. alumno.juan manuel osorio baruch
Conceptos y definiciones de poo. alumno.juan manuel osorio baruch
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Programación orientada a objeto
Programación orientada a objetoProgramación orientada a objeto
Programación orientada a objeto
 
Taller campus party .net
Taller campus party .netTaller campus party .net
Taller campus party .net
 
Taller campus party
Taller campus partyTaller campus party
Taller campus party
 
Unidad 1. Introducción. Conceptos fundamentales de la POO
Unidad 1. Introducción. Conceptos fundamentales de la POOUnidad 1. Introducción. Conceptos fundamentales de la POO
Unidad 1. Introducción. Conceptos fundamentales de la POO
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 

Mehr von Informática & Servicios

Mehr von Informática & Servicios (7)

TEEM 2013, Patricio Humanante Ramos
TEEM 2013, Patricio Humanante RamosTEEM 2013, Patricio Humanante Ramos
TEEM 2013, Patricio Humanante Ramos
 
MobilLearning
MobilLearningMobilLearning
MobilLearning
 
Entrada1
Entrada1Entrada1
Entrada1
 
Multimedia En El Pc
Multimedia En El PcMultimedia En El Pc
Multimedia En El Pc
 
Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)
Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)
Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)
 
Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)
Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)
Desarrollo De Sistemas Multimedia Y Sitios Web (Clase 1)
 
Dce0 Fundamentos De Programacion
Dce0 Fundamentos De ProgramacionDce0 Fundamentos De Programacion
Dce0 Fundamentos De Programacion
 

Kürzlich hochgeladen

Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIAAbelardoVelaAlbrecht1
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)veganet
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfTarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfCarol Andrea Eraso Guerrero
 

Kürzlich hochgeladen (20)

Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
Instrucciones para la aplicacion de la PAA-2024b - (Mayo 2024)
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdfTarea 5-Selección de herramientas digitales-Carol Eraso.pdf
Tarea 5-Selección de herramientas digitales-Carol Eraso.pdf
 

Introducción a la Orientación a Objetos con 5 conceptos clave

  • 1. Programa Microsoft Desarrollador Cinco Estrellas Estrella 0 -Introducción a la Orientación a Objetos
  • 2. Objetivo Describir el Paradigma de Orientación a Objetos incluyendo los conceptos relacionados al análisis, diseño y programación
  • 3. Prerrequisitos Poseer los conocimientos proporcionados en los siguientes módulos de la Estrella 0: Fundamentos de Programación
  • 4. Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Principios de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
  • 5. Paradigmas de Programación Hay para todos los gustos Estructurados (C, Pascal, Basic, etc.) Funcionales (CAML) Declarativos (Prolog) Orientados a Objetos (C#, VB.NET, Smalltalk, Java) Orientados a Aspectos Híbridos (Lisp, Visual Basic) Incomprensibles.... Cada enfoque tiene sus ventajas y desventajas Cada uno es más apropiado para ciertas cosas
  • 6. El mundo color de Objetos Todo el mundo está compuesto de entidades que se relacionan e interactúan entre si ¿Qué es un Objeto? Todo es un Objeto ¡¿~?! ¿Es lo mismo de siempre con otro nombre? Pensar en Objetos …. No es el último grito de la moda (1980s)
  • 7. El mundo color de Objetos ¿Por qué Orientación a Objetos (OO)? Se parece más al mundo real Permite representar modelos complejos Muy apropiada para aplicaciones de negocios Las empresas ahora sí aceptan la OO Las nuevas plataformas de desarrollo la han adoptado (Java / .NET)
  • 8. Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Principios de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
  • 9. ¿Qué es un Objeto? Informalmente, un objeto representa una entidad del mundo real Entidades Físicas (Ej.: Vehículo, Casa, Producto) Entidades Conceptuales (Ej.: Proceso Químico, Transacción Bancaria) Entidades de Software (Ej.: Lista Enlazada, Interfaz Gráfica)
  • 10. ¿Qué es un Objeto? Definición Formal (Rumbaugh): “Un objeto es un concepto, abstracción o cosa con un significado y límites claros en el problema en cuestión” Un objeto posee (Booch): Estado Comportamiento Identidad
  • 11. Un objeto posee Estado Lo que el objeto sabe El estado de un objeto es una de las posibles condiciones en que el objeto puede existir El estado normalmente cambia en el transcurso del tiempo El estado de un objeto es implementado por un conjunto de propiedades (atributos), además de las conexiones que puede tener con otros objetos
  • 12. Un objeto posee Comportamiento Lo que el objeto puede hacer El comportamiento de un objeto determina cómo éste actúa y reacciona frente a las peticiones de otros objetos Es modelado por un conjunto de mensajes a los que el objeto puede responder (operaciones que puede realizar) Se implementa mediante métodos
  • 13. Un objeto posee Identidad Cada objeto tiene una identidad única, incluso si su estado es idéntico al de otro objeto
  • 14. ¿Qué es una Clase? Una clase es una descripción de un grupo de objetos con: Propiedades en común (atributos) Comportamiento similar (operaciones) La misma forma de relacionarse con otros objetos (relaciones) Una semántica en común (significan lo mismo) Una clase es una abstracción que: Enfatiza las características relevantes Suprime otras características (simplificación) Un objeto es una instancia de una clase
  • 15. Objetos y Clases Una clase es una definición abstracta de un objeto Define la estructura y el comportamiento compartidos por los objetos Sirve como modelo para la creación de objetos Los objetos pueden ser agrupados en clases
  • 16. Ejemplo de una Clase Clase: Curso Estado (Atributos) Nombre Ubicación Días Ofrecidos Horario de Inicio Horario de Término Comportamiento (Métodos) Agregar un Alumno Borrar un Alumno Entregar un Listado del Curso Determinar si está Completo
  • 17. Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Pilares de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
  • 18. Modificadores de Acceso Permiten definir el nivel de acceso (visibilidad) de los miembros (atributos o métodos) de una clase Publico: Cualquier clase puede “ver” los miembros públicos de otra clase Privado: Sólo la clase puede ver sus propios miembros privados Existen otros dos modificadores para propósitos específicos (Paquete, Protegido)
  • 19. Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Pilares de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
  • 20. ¿Qué es UML? “UML es un lenguaje visual para especificar, construir y documentar sistemas” (OMG - Object Management Group) Unified (UNIFICADO): El aporte de muchos métodos y notaciones Independiente de implementaciones, plataformas y lenguajes Modeling (MODELADO): Los modelos son utilizados en todas las ingenierías Language (LENGUAJE): Si hay gente, requieren comunicarse. Si se tienen que comunicar, se tienen que entender. Para entenderse necesitan un lenguaje común ¡UML no es Metodología!
  • 21. Una Clase en UML Una clase está compuesta de tres secciones La primera sección contiene el nombre de la clase La segunda sección muestra la estructura (atributos) La tercera sección muestra el comportamiento (operaciones) La segunda y la tercera sección pueden ser suprimidas Modificadores de Acceso Los miembros públicos se denotan con el signo “+” Los miembros privados se denotan con el signo “–”
  • 22. Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Pilares de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
  • 23. Abstracción Relaciones Encapsulamiento Herencia Pilares de la Orientación a Objetos
  • 24. Abstracción Ignorancia Selectiva La abstracción nos ayuda a trabajar con cosas complejas Se enfoca en lo importante Ignora lo que no es importante (simplifica) Una clase es una abstracción en la que: Se enfatizan las características relevantes Se suprimen otras características Una clase debe capturar una y solo una abstracción clave
  • 25. Encapsulamiento Principio que establece que los atributos propios de un objeto no deben ser visibles desde otros objetos Deben ser declarados como privados Permite abstraer al resto del mundo de la complejidad de la implementación interna Permite exponer el estado del objeto sólo a través del comportamiento que le hayamos definido mediante miembros públicos ¿Por qué es útil? Punto de Control/Validación Mejor respuesta ante los Cambios
  • 26. Relaciones Todo sistema abarca muchas clases y objetos Los objetos contribuyen en el comportamiento de un sistema colaborando entre si La colaboración se logra a través de las relaciones Existen dos tipos principales de relaciones Asociación Agregación
  • 27. Relaciones de Asociación Una asociación es una conexión entre dos clases que representa una comunicación Una asociación puede tener nombre La comunicación puede ser tanto uni como bi-direccional (por defecto) La multiplicidad es el número de instancias que participan en una asociación Ejemplo: Una Persona es Dueña de un Vehículo Un Vehículo Pertenece a una Persona
  • 28. Relaciones de Agregación La agregación es una forma especial de asociación donde un todo se relaciona con sus partes También se conoce como “una parte de” o una relación de contención Ejemplo: Una Puerta es una parte de un Vehículo El Vehículo es azul, la Puerta es Azul Mover el Vehículo implica mover la Puerta
  • 29. Herencia Clase Base Es una relación entre clases en la cual una clase comparte la estructura y comportamiento definido en otra clase (Grady Booch) Cada clase que hereda de otra posee: Los atributos de la clase base además de los propios Soporta todos o algunos de los métodos de la clase base Una subclase hereda de una clase base Clases Derivadas o subclases
  • 30. Herencia Herencia “Es-Un”: herencia real, donde la subclase es un tipo específico de la superclase Un Cuadrado es un Rectángulo Un perro es un mamífero Un automóvil es un vehículo a motor
  • 31. Temas a Tratar Paradigmas de Programación Clases y Objetos Modificadores de Acceso ¿Qué es UML? Principios de la Orientación a Objetos Conceptos del Diseño Orientado a Objetos
  • 32. Interfaces (1/3) Recurso de diseño soportado por los lenguajes orientados a objetos que permite definir comportamiento Permite que clases que no están estrechamente relacionadas entre sí deban tener el mismo comportamiento La implementación de una interfaz es un contrato que obliga a la clase a implementar todos los métodos definidos en la interfaz
  • 33. Interfaces (2/3) ¿ De que clase heredaría la clase Hidroavión ?
  • 34. Interfaces (3/3) Se crean las interfaces que definen comportamiento Hidroavión deberá definir los comportamientos de cada una de las interfaces que implemente
  • 35. Es la propiedad que tienen los objetos de permitir invocar genéricamente un comportamiento (método) cuya implementación será delegada al objeto correspondiente recién en tiempo de ejecución El polimorfismo tiende a existir en las relaciones de herencia, pero no siempre es así Polimorfismo
  • 36. Polimorfismo - Ejemplo Transporte Transporte Transporte Avanzar Avanzar Avanzar Frenar Frenar Frenar Transporte Avanzar Frenar La definición del método reside en la clase base La implementación del método reside en la clase derivada La invocación es resuelta al momento de ejecución
  • 37. © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.