SlideShare une entreprise Scribd logo
1  sur  14
Programación Orientada a Objeto (POO)

                               Origen y
                              Conceptos




      Características                             Objeto



                              POO


                        UML               Clase
Programación Orientada a Objeto (POO)
   Paradigma                                                                Forma en que
   Orientado a                                Programación                   un hombre
                      Representa la                             Simula la
     Objeto           evolución natural de
                                                                               trabaja



                                              El mundo como
   Concepción
                                              un conjunto de
     Básica            Es Percibir
                                                  objetos




                                             Orden Cronológico

                                     Lenguajes
   Basado en Simula                                            Nacimiento                  C++
                                     predecesores

   •Desarrollado por                 •SmallTalk                •Se creó en los años 70     •Debido a su influencia
    Krysten Nygaard y Ole            •C++                                                   se convirtió en un de un
    Johan Dahl                       •Java                                                  paradigma de
   •Fue creado a mediados                                                                   programación
                                     •C#
    de los años 60 en el                                                                    dominante a mediado
    centro de computación                                                                   de los 80’s
    Noruego
   •Fue un lenguaje de
    orientado a simulación
    de procesos
   •Aparecen por primera
    vez el término Objeto y
    Clase
Programación Orientada a Objeto (POO)
                                                                                 Utilizado para
                                          Utiliza Objetos y                   diseñar aplicaciones
            Paradigma
                                          sus interacciones                     y programas de
                                                                                 Computadora




                                                                Lenguajes
  Teorías   Estándares     Modelos                             Orientados a
                                                                  Objeto

             Métodos



                                                                                                                  Basado
                                                                                                                    en
                                                        Ventajas                                     Basado
                                                                                                       en         Objetos
                                                                                                     Clases
                         •Reutilización de Código                                                             Herencia
                         •Permite crear sistemas más complejos                                                   de
                         •Relación del sistema con el mundo real                                               Clases
                         •Facilita la creación de programas visuales
                         •Se trabaja mediante la construcción de prototipos
                         •Agiliza el desarrollo del Software
                         •Facilita el trabajo en Equipo
                         •Facilita el mantenimiento del Software                                     Lenguajes Orientados a
                                                                                                            Objeto
Programación Orientada a Objeto (POO)

                                                            Abstracción:
                                                            •Generalización conceptual de un determinado conjunto de
                                                             objetos y de sus atributos y propiedades
                       Abstracción                          •Deja en segundo término los detalles concretos de cada
                                                             objeto

                                                            Polimorfismo:
                                                            •Acceso a un grupo de funciones a través de la misma
                                                             interfaz
 Herencia                                    Polimorfismo
                                                            •Un identificador puede tener distintas formas (distintos
                                                             cuerpos de función y comportamiento)


                       POO                                  Modularidad
                                                            •Propiedad de un sistema descompuesto en un conjunto de
                                                             módulos cohesivos débilmente acoplados


                                                            Encapsulamiento:
                                                            •Capacidad de agrupar y condensar en un entorno con
                                                             límites bien definidos distintos elementos
        Encapsulamie
                                     Modularidad
                                                            •Se hace referencia a encapsulamiento abstracto
            nto
                                                            Herencia:
                                                            •Es un tipo de jerarquía aplicada sobre las clases
                                                            •Las clases tienen descendencia y heredan atributos de
                                                             clases “padres” (Superclases)
                                                            •Existe la herencia simple y la múltiple
Definición de Objeto
      Objeto
                                        Representa
                                                                                 Componentes
Es
                 Representa




                                                                                                  •Caracterizan al Objeto
                                                         Entidad Real                             •Variables que
     Instancia                 Abstracción                                          Atributos
                                                          o Abstracta                              almacenan datos
                                                                                                   relacionados al estado
                                                                                                   de un objeto
De                                     De       En el dominio del
                                                                                                       •Caracterizan el
                                                                                                        comportamiento del
                              Elementos de la                                                           objeto
      Clase                                                Problema
                                 vida real                                                             •Hacen posible que el
                                                                        Objeto           Método         objeto responda a
                                                                                                        solicitudes externas
                                                                                                       •Pueden depender o
                                                                                                        modificar valores de
                                                                                                        los atributos
     Relación con otros paradigmas
                                                                                                  •Es lo que le diferencia
                                                                                                   de los demás objetos
                                                                                    Identidad     •Esta identidad se crea
                                                                                                   mediante un
                                                                                                   identificador

Paradigma                             Paradigma
Estructurado                          POO
•Variables                            •Objetos
Definición de Clase
                                                                                      Ejemplo
                    Clase
                                          De



                                                                                             Mi auto
       Representa
                             Es                                                 El auto
                                                                                de Luis
                              Plantilla        Instancia
                                                                                          El auto
                                                                                            de
                                   De
                                                      Son                                 Laura
                    De
                            Conjunto de
Abstracción
                              Objetos
                                          Que
                                          Comparten



                                                                                     Clase: Auto
                                            Estructura y
         Componentes                      comportamientos


    Atributos
                                                             Objeto                            Clase
    (Estado)

                                                            Es una instancia de la           Es la definición de un

                            Clase                                   clase                        tipo de objeto


                                                                                                Representa la
                                                            Ya está definido, con
   Métodos o                                                                                  abstracción de las
   Procesos                                                    características
                                                                                             características de un
                                                                particulares
                                                                                               grupo de objetos
Definición de UML
                                                                      Los diagramas UML permiten:
                   UML
            (Lenguaje unificado de
                  modelo)                          Sirve para




          Es                                Es

                                     Lenguaje          Especificar,
     Sucesor                            de             construir y
                                                                                            Comunicar la
                                     Modelado          documentar                          estructura de un
          De                                                                                    sistema
                                      De
                                                                                               complejo

    Métodos de                                           Software
                                     Conjunto de
 análisis y diseños                                     Orientado a
                                       Objetos                                              Comprender
orientados a objeto                                       Objetos
                                                                                             Mejor lo que
                                                                                              estamos
                                                                                            Construyendo
                      Características
                                                                                                                 Descubrir
                                                                          Especificar el
   Representa los planos de un sistema                                                                         oportunidades
                                                                        comportamiento
                                                                                                                     de
                                                                          deseado del
                                                                                                              simplificación y
                                                                            sistema
                                                                                                                Reutilización
   El modelo captura lo esencial


   Tiene 13 tipos de Diagramas

   Es un estándar OMG (Object Management
   Group)
Diagramas UML
                    Diagramas UML




Diagrama sde                                    Diagramas de
 Estructuras                                   comportamiento


                                                         Diagrama de
    Diagrama de    Diagrama de         Diagrama de                     Diagramas de
                                                         Máquina de
       Clases       Actividad          Casos de Uso                     Interacción
                                                            Estado


    Diagrama de
                                                                           Diagrama de
     Estructura
     compuesta
                                   Los más utilizados                       Secuencia


                                           Clases
   Diagrama de                                                           Diagrama Global
   Componentes                                                            de Interacción

                                                           Casos de
                       Actividad
                                                             Uso
    Diagrama de                                                           Diagrama de
    Despliegue                                                            comunicación



    Diagrama de                                                            Diagrama de
      Objetos                                                                Tiempo

                        Estado                            Secuencia

    Diagrama de
     Paquetes
                                        Colaboració
                                             n
Diagramas UML más utilizados

  Clases           Actividad          Casos de Uso         Estado          Colaboración       Secuencia



  Estático que                                             Describe el         Permite la        Resalta la
                    Representa el      Son usados en
   describe la                                           comportamient      observación de      ordenación
                   flujo de control     el modelado
 estructura de                                           o de un sistema     la interacción   temporal de los
                     del Sistema         del sistema
  un sistema                                                Reactivo          de un objeto       mensajes
                                                                             respecto a los
   Sirve para       Se muestra el                                                demás           Se puede
                                       Se representan           El
 visualizar las    orden en el que       acciones que    comportamient                         transformar
relaciones entre   van realizando        realiza cada     o del sistema                       mecánicamente
    las clases         tareas                                                   Muestra         en uno de
                                       tipo de usuario    está dirigido
                                                                             interacciones     colaboración
                                          (desde su        por eventos
                                                                              organizadas
Esta compuesto                          punto de vista
                                                                             alrededor de
      por                                                                       los roles
Clases, relacion                                         Denota Estados
       es                                                 y transiciones
                                                          entre estados      Es necesario
                                                                              etiquetar la
                                                                             secuencia de
                                                                               mensajes
Diagrama de Clases y relaciones
                           •Una subclase hereda métodos y atributos
                            especificados por una super clase                 Automóvil            Ventana
                           •La subclase posee sus propios métodos y
Generalización /Herencia    atributos




                           •Denota la dependencia de una clase con otra
                           •La clase dependiente se puede ver afectada si
                                                                              Aplicación
     Dependencia
                            sufre cambios la otra clase
                           •Gráficamente se muestra como una línea
                                                                                           1   *       Ventana
                            discontinua con punta de flecha



                                                                                                       Base de Datos
                           •Por valor (composición)                           Aplicación
                            •El elemento destino forma parte del elemento
                             fuente, su relación se rompe cumpliendo
      Agregación             restricciones
                           •Por referencia (agregación)                                                Código
                            •El elemento destino forma parte del elemento
                             fuente, su relación se rompe sin restricciones



                           •Asociación estructural que describe conexión
                            entre objetos                                                              Orden de
                           •Se muestra gráficamente con una línea continua
                                                                              Cliente      1       *   Compra
      Asociación           •No es una relación fuerte
Introducción a Java
                                  Lenguaje                              Sun
      Java                       Moderno y de                       Microsystems
                   Es un                           Presentado por
                                  alto nivel                          en 1995

 Su

                   Lo que permite añadir
                                           Programas a
Neutralidad
                                           Páginas Web




                                                 Historia

Microprocesadores              Sun Microsystems            Oak                         Java

•Relacionado con el            •Patrocinó en 1991 un       •Fue llamado Oak            •Tuvo problemas en el
 desarrollo de                  proyecto interno de         debido a que se hacía       mercado
 Microprocesadores              programación llamado        referencia a un roble al   •En 1993 se aprovechó la
•Permitió la                    Green                       momento de nombrarlo        explosión de WWW por
 masificación de las           •El proyecto                •Se cambió el nombre de      su buena capacidad
 computadoras                   patrocinado era un          lenguaje al enterarse       para agregar contenido
 personales                     lenguaje de                 que ya existía uno con      dinámico
                                programación basado         el mismo nombre, ahora     •Se anunció
                                en C++ llamado Oak          se nombró Java en           formalmente en 1995
                                                            honor a una cafetería
                                                            local visitada por el
                                                            grupo
Características de Java

                      Es                                                         Indiferente a
       Lenguaje                                                                                              Tiene Alto
                  Orientado a   Distribuido       Robusto   Seguro    Portable         la        Dinámico
        Simple                                                                                              Rendimiento
                    Objeto                                                       arquitectura




Máquina Virtual de Java (JVM)                                    Estructura básica de un programa en java

       Java              Programa Java


          Es un                   Al compilarse
                                  produce


  Lenguaje                  Programas
Interpretado                 Bytecode

                                    Son interpretados
 por                                por




                  JVM
Elementos de un programa en Java

               Identificadores
                                                Elementos           Características
                                               Identificadores   Es el nombre que identifica a
                                                                 una variable, método,
                                                                 función miembro o clase


 Variables                       Comentarios   Comentarios       Es un texto adicional que se
                                                                 agrega a un programa para
                                                                 explicar su funcionalidad

                                               Sentencias        Es una orden que se le da al

              Programa                                           programa para ejecutar una
                                                                 acción específica
                Java
                                               Bloques de        Un grupo de sentencias que
                                                                 comparten una unidad
                                               Código
Expresiones                       Sentencias   Expresiones       Es todo aquello que se puede
                                                                 poner a la derecha de un
                                                                 operador de asignación

                                               Variable          Una variable es un nombre
                                                                 que se asocia con una
                 Bloques de
                   Código                                        porción de la memoria del
                                                                 ordenador, en la que se
                                                                 guarda el valor asignado a
                                                                 dicha variable
Errores comunes en la programación
                                             Ciclos Infinitos




                    Errores Lógicos o
                                            División entre 0
                       semánticos




                                         Errores en el algoritmo

    Errores en un
     programa

                                            No finalizar una
                                           sentencia con un ;



                                             No utilizar la
                                         combinación apropiada
                    Errores Sintáticos
                                            de Mayúsculas y
                                               minúculas



                                         No utilizar llaves pares

Contenu connexe

Tendances

Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenKarlytoz_36
 
Programación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVAProgramación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVAMichelle Torres
 
Constructores en Java
Constructores en JavaConstructores en Java
Constructores en JavaUCE
 
Elementos avanzados de poo
Elementos avanzados de pooElementos avanzados de poo
Elementos avanzados de pooLCA
 
Introducción a HTML5 y CSS3
Introducción a HTML5 y CSS3Introducción a HTML5 y CSS3
Introducción a HTML5 y CSS3Paradigma Digital
 
Diagramas clases presentacion
Diagramas clases presentacionDiagramas clases presentacion
Diagramas clases presentacionjosebrandon24
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definicionesBoris Salleg
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xpCrisCobol
 
Rhapsody reverseengineering
Rhapsody reverseengineeringRhapsody reverseengineering
Rhapsody reverseengineeringScott Althouse
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 

Tendances (20)

MVC
MVCMVC
MVC
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
 
Programación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVAProgramación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVA
 
Constructores en Java
Constructores en JavaConstructores en Java
Constructores en Java
 
Elementos avanzados de poo
Elementos avanzados de pooElementos avanzados de poo
Elementos avanzados de poo
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Introducción a HTML5 y CSS3
Introducción a HTML5 y CSS3Introducción a HTML5 y CSS3
Introducción a HTML5 y CSS3
 
Diagramas clases presentacion
Diagramas clases presentacionDiagramas clases presentacion
Diagramas clases presentacion
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definiciones
 
Metodologia xp
Metodologia xpMetodologia xp
Metodologia xp
 
Rhapsody reverseengineering
Rhapsody reverseengineeringRhapsody reverseengineering
Rhapsody reverseengineering
 
Componentes en-poo
Componentes en-pooComponentes en-poo
Componentes en-poo
 
10.el diseño en el nivel de componentes
10.el diseño en el nivel de componentes10.el diseño en el nivel de componentes
10.el diseño en el nivel de componentes
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Modelo Conceptual UML
Modelo Conceptual UMLModelo Conceptual UML
Modelo Conceptual UML
 
Php oop presentation
Php   oop presentationPhp   oop presentation
Php oop presentation
 
Diagrama de estado
Diagrama de estadoDiagrama de estado
Diagrama de estado
 
Qué es el modelado de negocios
Qué es el modelado de negociosQué es el modelado de negocios
Qué es el modelado de negocios
 
Conceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de DatosConceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de Datos
 

En vedette

POO Programación Orientada a Objetos
POO Programación Orientada a ObjetosPOO Programación Orientada a Objetos
POO Programación Orientada a ObjetosLuis Berganza
 
Orientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesOrientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesSorey García
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaMichael de la Cruz
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosJavier Camacho
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempoLibertad25
 
Métodos POO
Métodos POOMétodos POO
Métodos POO1da4
 
Programacion orientada a objetos
Programacion orientada a objetos Programacion orientada a objetos
Programacion orientada a objetos Jorge Luis B
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetoschutas666
 
Clase3 Programación Orientada a Objetos
Clase3 Programación Orientada a ObjetosClase3 Programación Orientada a Objetos
Clase3 Programación Orientada a Objetosdesimartinez
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Whaleejaa Wha
 
8b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 18b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 1Clara Patricia Avella Ibañez
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoActimel
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Josue Lara Reyes
 
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
 
Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...
Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...
Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...Conalep Puebla III
 

En vedette (20)

POO Programación Orientada a Objetos
POO Programación Orientada a ObjetosPOO Programación Orientada a Objetos
POO Programación Orientada a Objetos
 
Orientacion A Objetos Para Dummies
Orientacion A Objetos Para DummiesOrientacion A Objetos Para Dummies
Orientacion A Objetos Para Dummies
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación Estructurada
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Linea del tiempo
Linea del tiempoLinea del tiempo
Linea del tiempo
 
Conceptos basicos POO
Conceptos basicos POOConceptos basicos POO
Conceptos basicos POO
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
 
Programacion orientada a objetos
Programacion orientada a objetos Programacion orientada a objetos
Programacion orientada a objetos
 
Lógica y programación orientada a objetos:Un enfoque basado en problemas
Lógica y programación orientada a objetos:Un enfoque basado en problemasLógica y programación orientada a objetos:Un enfoque basado en problemas
Lógica y programación orientada a objetos:Un enfoque basado en problemas
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Clase3 Programación Orientada a Objetos
Clase3 Programación Orientada a ObjetosClase3 Programación Orientada a Objetos
Clase3 Programación Orientada a Objetos
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
 
8b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 18b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 1
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Java orientado a objetos
Java orientado a objetosJava orientado a objetos
Java orientado a objetos
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a 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
 
Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...
Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...
Upmp programación orientada a objetos-sesión 2-conceptos básicos del paradigm...
 

Similaire à Programación Orientada a Objeto y Java

Similaire à Programación Orientada a Objeto y Java (20)

1-Unidad 1. Paradigma de la Programación-Orientación a Objetos
1-Unidad 1. Paradigma de la Programación-Orientación a Objetos1-Unidad 1. Paradigma de la Programación-Orientación a Objetos
1-Unidad 1. Paradigma de la Programación-Orientación a Objetos
 
UD:INGENIERIA WEB - SESION N°02
UD:INGENIERIA WEB - SESION N°02UD:INGENIERIA WEB - SESION N°02
UD:INGENIERIA WEB - SESION N°02
 
S1-POO-1.1 Fundamentos
S1-POO-1.1 FundamentosS1-POO-1.1 Fundamentos
S1-POO-1.1 Fundamentos
 
S1-Fundamentos POO
S1-Fundamentos POOS1-Fundamentos POO
S1-Fundamentos POO
 
Diapositiva de Estudio: FUNDAMENTOS UML.ppt
Diapositiva de Estudio: FUNDAMENTOS UML.pptDiapositiva de Estudio: FUNDAMENTOS UML.ppt
Diapositiva de Estudio: FUNDAMENTOS UML.ppt
 
Lenguajes de programacion en pps en el Plantel de Zacualpan, Tlaxcala
Lenguajes de programacion en pps en el Plantel de Zacualpan, TlaxcalaLenguajes de programacion en pps en el Plantel de Zacualpan, Tlaxcala
Lenguajes de programacion en pps en el Plantel de Zacualpan, Tlaxcala
 
Modelo Orientado A Objetos
Modelo Orientado A ObjetosModelo Orientado A Objetos
Modelo Orientado A Objetos
 
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
 
Tabla sqa
Tabla sqaTabla sqa
Tabla sqa
 
Presentación TT Javier Calvo
Presentación TT Javier CalvoPresentación TT Javier Calvo
Presentación TT Javier Calvo
 
Poo3
Poo3Poo3
Poo3
 
Karla garcia java 3
Karla garcia java 3Karla garcia java 3
Karla garcia java 3
 
Clase i
Clase iClase i
Clase i
 
Programacion ii
Programacion iiProgramacion ii
Programacion ii
 
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
 
Guia flash
Guia flashGuia flash
Guia flash
 
CURSO DE PROGRAMACION BASICA - Cap 7
CURSO DE PROGRAMACION BASICA - Cap 7CURSO DE PROGRAMACION BASICA - Cap 7
CURSO DE PROGRAMACION BASICA - Cap 7
 
Informe
InformeInforme
Informe
 
S1-P2.pptx
S1-P2.pptxS1-P2.pptx
S1-P2.pptx
 
S1 p2
S1 p2S1 p2
S1 p2
 

Plus de Ingeniería Nica

Programa de curso de formulación y evaluación de proyectos informáticos
Programa de curso de formulación y evaluación de proyectos informáticosPrograma de curso de formulación y evaluación de proyectos informáticos
Programa de curso de formulación y evaluación de proyectos informáticosIngeniería Nica
 
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de desarrollo y administración de bases de datos con SQL Server 2012...Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de desarrollo y administración de bases de datos con SQL Server 2012...Ingeniería Nica
 
Programa de Curso on line de Android!
Programa de Curso on line de Android!Programa de Curso on line de Android!
Programa de Curso on line de Android!Ingeniería Nica
 
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...Ingeniería Nica
 
Curriculum vitae 2012 c arlos van de velde
Curriculum vitae 2012 c arlos van de veldeCurriculum vitae 2012 c arlos van de velde
Curriculum vitae 2012 c arlos van de veldeIngeniería Nica
 
Programa de curso excel 2010 financiero
Programa de curso excel 2010 financieroPrograma de curso excel 2010 financiero
Programa de curso excel 2010 financieroIngeniería Nica
 
Vectores o arreglos con PHP
Vectores o arreglos con PHP Vectores o arreglos con PHP
Vectores o arreglos con PHP Ingeniería Nica
 
Programa de curso de project 2010
Programa de curso de  project 2010Programa de curso de  project 2010
Programa de curso de project 2010Ingeniería Nica
 
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
La necesidad de un sistema automatizado de vinculación Universidad – Empresa La necesidad de un sistema automatizado de vinculación Universidad – Empresa
La necesidad de un sistema automatizado de vinculación Universidad – Empresa Ingeniería Nica
 
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
Curso de Desarrollo de sitios web dinámicos con PHP y MySQLCurso de Desarrollo de sitios web dinámicos con PHP y MySQL
Curso de Desarrollo de sitios web dinámicos con PHP y MySQLIngeniería Nica
 
Programa de curso excel 2010
Programa de curso excel 2010Programa de curso excel 2010
Programa de curso excel 2010Ingeniería Nica
 
Manual de usuario de sistema de vinculación Universidad Empresa
Manual de usuario de sistema de vinculación Universidad EmpresaManual de usuario de sistema de vinculación Universidad Empresa
Manual de usuario de sistema de vinculación Universidad EmpresaIngeniería Nica
 
Programa de curso de desarrollo web con html5
Programa de curso de desarrollo web con html5Programa de curso de desarrollo web con html5
Programa de curso de desarrollo web con html5Ingeniería Nica
 
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...Ingeniería Nica
 
Resultado concurso HTML5 OCT2012
Resultado concurso HTML5 OCT2012Resultado concurso HTML5 OCT2012
Resultado concurso HTML5 OCT2012Ingeniería Nica
 
Información Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era EdiciónInformación Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era EdiciónIngeniería Nica
 
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...Ingeniería Nica
 

Plus de Ingeniería Nica (20)

Programa de curso de formulación y evaluación de proyectos informáticos
Programa de curso de formulación y evaluación de proyectos informáticosPrograma de curso de formulación y evaluación de proyectos informáticos
Programa de curso de formulación y evaluación de proyectos informáticos
 
Sesiones en PHP
Sesiones en PHPSesiones en PHP
Sesiones en PHP
 
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de desarrollo y administración de bases de datos con SQL Server 2012...Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
 
Programa de Curso on line de Android!
Programa de Curso on line de Android!Programa de Curso on line de Android!
Programa de Curso on line de Android!
 
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
 
Curriculum vitae 2012 c arlos van de velde
Curriculum vitae 2012 c arlos van de veldeCurriculum vitae 2012 c arlos van de velde
Curriculum vitae 2012 c arlos van de velde
 
Programa de curso excel 2010 financiero
Programa de curso excel 2010 financieroPrograma de curso excel 2010 financiero
Programa de curso excel 2010 financiero
 
Vectores o arreglos con PHP
Vectores o arreglos con PHP Vectores o arreglos con PHP
Vectores o arreglos con PHP
 
Programa de curso de project 2010
Programa de curso de  project 2010Programa de curso de  project 2010
Programa de curso de project 2010
 
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
La necesidad de un sistema automatizado de vinculación Universidad – Empresa La necesidad de un sistema automatizado de vinculación Universidad – Empresa
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
 
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
Curso de Desarrollo de sitios web dinámicos con PHP y MySQLCurso de Desarrollo de sitios web dinámicos con PHP y MySQL
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
 
Programa de curso excel 2010
Programa de curso excel 2010Programa de curso excel 2010
Programa de curso excel 2010
 
Manual de usuario de sistema de vinculación Universidad Empresa
Manual de usuario de sistema de vinculación Universidad EmpresaManual de usuario de sistema de vinculación Universidad Empresa
Manual de usuario de sistema de vinculación Universidad Empresa
 
Programa de curso de desarrollo web con html5
Programa de curso de desarrollo web con html5Programa de curso de desarrollo web con html5
Programa de curso de desarrollo web con html5
 
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
 
Brochure IN
Brochure INBrochure IN
Brochure IN
 
Curso SQL 2012
Curso SQL 2012Curso SQL 2012
Curso SQL 2012
 
Resultado concurso HTML5 OCT2012
Resultado concurso HTML5 OCT2012Resultado concurso HTML5 OCT2012
Resultado concurso HTML5 OCT2012
 
Información Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era EdiciónInformación Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era Edición
 
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
 

Programación Orientada a Objeto y Java

  • 1. Programación Orientada a Objeto (POO) Origen y Conceptos Características Objeto POO UML Clase
  • 2. Programación Orientada a Objeto (POO) Paradigma Forma en que Orientado a Programación un hombre Representa la Simula la Objeto evolución natural de trabaja El mundo como Concepción un conjunto de Básica Es Percibir objetos Orden Cronológico Lenguajes Basado en Simula Nacimiento C++ predecesores •Desarrollado por •SmallTalk •Se creó en los años 70 •Debido a su influencia Krysten Nygaard y Ole •C++ se convirtió en un de un Johan Dahl •Java paradigma de •Fue creado a mediados programación •C# de los años 60 en el dominante a mediado centro de computación de los 80’s Noruego •Fue un lenguaje de orientado a simulación de procesos •Aparecen por primera vez el término Objeto y Clase
  • 3. Programación Orientada a Objeto (POO) Utilizado para Utiliza Objetos y diseñar aplicaciones Paradigma sus interacciones y programas de Computadora Lenguajes Teorías Estándares Modelos Orientados a Objeto Métodos Basado en Ventajas Basado en Objetos Clases •Reutilización de Código Herencia •Permite crear sistemas más complejos de •Relación del sistema con el mundo real Clases •Facilita la creación de programas visuales •Se trabaja mediante la construcción de prototipos •Agiliza el desarrollo del Software •Facilita el trabajo en Equipo •Facilita el mantenimiento del Software Lenguajes Orientados a Objeto
  • 4. Programación Orientada a Objeto (POO) Abstracción: •Generalización conceptual de un determinado conjunto de objetos y de sus atributos y propiedades Abstracción •Deja en segundo término los detalles concretos de cada objeto Polimorfismo: •Acceso a un grupo de funciones a través de la misma interfaz Herencia Polimorfismo •Un identificador puede tener distintas formas (distintos cuerpos de función y comportamiento) POO Modularidad •Propiedad de un sistema descompuesto en un conjunto de módulos cohesivos débilmente acoplados Encapsulamiento: •Capacidad de agrupar y condensar en un entorno con límites bien definidos distintos elementos Encapsulamie Modularidad •Se hace referencia a encapsulamiento abstracto nto Herencia: •Es un tipo de jerarquía aplicada sobre las clases •Las clases tienen descendencia y heredan atributos de clases “padres” (Superclases) •Existe la herencia simple y la múltiple
  • 5. Definición de Objeto Objeto Representa Componentes Es Representa •Caracterizan al Objeto Entidad Real •Variables que Instancia Abstracción Atributos o Abstracta almacenan datos relacionados al estado de un objeto De De En el dominio del •Caracterizan el comportamiento del Elementos de la objeto Clase Problema vida real •Hacen posible que el Objeto Método objeto responda a solicitudes externas •Pueden depender o modificar valores de los atributos Relación con otros paradigmas •Es lo que le diferencia de los demás objetos Identidad •Esta identidad se crea mediante un identificador Paradigma Paradigma Estructurado POO •Variables •Objetos
  • 6. Definición de Clase Ejemplo Clase De Mi auto Representa Es El auto de Luis Plantilla Instancia El auto de De Son Laura De Conjunto de Abstracción Objetos Que Comparten Clase: Auto Estructura y Componentes comportamientos Atributos Objeto Clase (Estado) Es una instancia de la Es la definición de un Clase clase tipo de objeto Representa la Ya está definido, con Métodos o abstracción de las Procesos características características de un particulares grupo de objetos
  • 7. Definición de UML Los diagramas UML permiten: UML (Lenguaje unificado de modelo) Sirve para Es Es Lenguaje Especificar, Sucesor de construir y Comunicar la Modelado documentar estructura de un De sistema De complejo Métodos de Software Conjunto de análisis y diseños Orientado a Objetos Comprender orientados a objeto Objetos Mejor lo que estamos Construyendo Características Descubrir Especificar el Representa los planos de un sistema oportunidades comportamiento de deseado del simplificación y sistema Reutilización El modelo captura lo esencial Tiene 13 tipos de Diagramas Es un estándar OMG (Object Management Group)
  • 8. Diagramas UML Diagramas UML Diagrama sde Diagramas de Estructuras comportamiento Diagrama de Diagrama de Diagrama de Diagrama de Diagramas de Máquina de Clases Actividad Casos de Uso Interacción Estado Diagrama de Diagrama de Estructura compuesta Los más utilizados Secuencia Clases Diagrama de Diagrama Global Componentes de Interacción Casos de Actividad Uso Diagrama de Diagrama de Despliegue comunicación Diagrama de Diagrama de Objetos Tiempo Estado Secuencia Diagrama de Paquetes Colaboració n
  • 9. Diagramas UML más utilizados Clases Actividad Casos de Uso Estado Colaboración Secuencia Estático que Describe el Permite la Resalta la Representa el Son usados en describe la comportamient observación de ordenación flujo de control el modelado estructura de o de un sistema la interacción temporal de los del Sistema del sistema un sistema Reactivo de un objeto mensajes respecto a los Sirve para Se muestra el demás Se puede Se representan El visualizar las orden en el que acciones que comportamient transformar relaciones entre van realizando realiza cada o del sistema mecánicamente las clases tareas Muestra en uno de tipo de usuario está dirigido interacciones colaboración (desde su por eventos organizadas Esta compuesto punto de vista alrededor de por los roles Clases, relacion Denota Estados es y transiciones entre estados Es necesario etiquetar la secuencia de mensajes
  • 10. Diagrama de Clases y relaciones •Una subclase hereda métodos y atributos especificados por una super clase Automóvil Ventana •La subclase posee sus propios métodos y Generalización /Herencia atributos •Denota la dependencia de una clase con otra •La clase dependiente se puede ver afectada si Aplicación Dependencia sufre cambios la otra clase •Gráficamente se muestra como una línea 1 * Ventana discontinua con punta de flecha Base de Datos •Por valor (composición) Aplicación •El elemento destino forma parte del elemento fuente, su relación se rompe cumpliendo Agregación restricciones •Por referencia (agregación) Código •El elemento destino forma parte del elemento fuente, su relación se rompe sin restricciones •Asociación estructural que describe conexión entre objetos Orden de •Se muestra gráficamente con una línea continua Cliente 1 * Compra Asociación •No es una relación fuerte
  • 11. Introducción a Java Lenguaje Sun Java Moderno y de Microsystems Es un Presentado por alto nivel en 1995 Su Lo que permite añadir Programas a Neutralidad Páginas Web Historia Microprocesadores Sun Microsystems Oak Java •Relacionado con el •Patrocinó en 1991 un •Fue llamado Oak •Tuvo problemas en el desarrollo de proyecto interno de debido a que se hacía mercado Microprocesadores programación llamado referencia a un roble al •En 1993 se aprovechó la •Permitió la Green momento de nombrarlo explosión de WWW por masificación de las •El proyecto •Se cambió el nombre de su buena capacidad computadoras patrocinado era un lenguaje al enterarse para agregar contenido personales lenguaje de que ya existía uno con dinámico programación basado el mismo nombre, ahora •Se anunció en C++ llamado Oak se nombró Java en formalmente en 1995 honor a una cafetería local visitada por el grupo
  • 12. Características de Java Es Indiferente a Lenguaje Tiene Alto Orientado a Distribuido Robusto Seguro Portable la Dinámico Simple Rendimiento Objeto arquitectura Máquina Virtual de Java (JVM) Estructura básica de un programa en java Java Programa Java Es un Al compilarse produce Lenguaje Programas Interpretado Bytecode Son interpretados por por JVM
  • 13. Elementos de un programa en Java Identificadores Elementos Características Identificadores Es el nombre que identifica a una variable, método, función miembro o clase Variables Comentarios Comentarios Es un texto adicional que se agrega a un programa para explicar su funcionalidad Sentencias Es una orden que se le da al Programa programa para ejecutar una acción específica Java Bloques de Un grupo de sentencias que comparten una unidad Código Expresiones Sentencias Expresiones Es todo aquello que se puede poner a la derecha de un operador de asignación Variable Una variable es un nombre que se asocia con una Bloques de Código porción de la memoria del ordenador, en la que se guarda el valor asignado a dicha variable
  • 14. Errores comunes en la programación Ciclos Infinitos Errores Lógicos o División entre 0 semánticos Errores en el algoritmo Errores en un programa No finalizar una sentencia con un ; No utilizar la combinación apropiada Errores Sintáticos de Mayúsculas y minúculas No utilizar llaves pares