Java

Description

Tipos de datos Abstractos y Conceptos sobre Java
JAIME PAUL AREVALO ARMIJOS
Mind Map by JAIME PAUL AREVALO ARMIJOS, updated more than 1 year ago
JAIME PAUL AREVALO ARMIJOS
Created by JAIME PAUL AREVALO ARMIJOS almost 8 years ago
37
0

Resource summary

Java
  1. Introducción a TDA
    1. Solución de problemas para grandes programas
      1. Modularidad y Reutilización de software
        1. Organiza:
          1. El programa en subprogramas (módulos)
          2. Agrupa:
            1. En subprogramas compilados indepndientemente
            2. Modularización:
              1. Diseñar los módulos o contenedores sintácticos
              2. Unidad de compilación
                1. Capacidad de la compilación independiente de subprogramas
              3. Encapsulación
                1. Agrupar
                  1. Subprogramas con datos que manipulan
                  2. Ventajas:
                    1. Mayor modularidad
                      1. Mejor mantención
                        1. Movilidad
                        2. Ocultamiento de la información
                          1. Abstrae detalles de implementación
                            1. Cambios en la implementación no afectan otros objetos
                      2. Tipos de Datos Abstractos (TDAs)
                        1. Corresponde:
                          1. A una encapsulación que incluye:
                            1. La representación de un tipo de dato específico
                              1. Las operaciones asociadas a ese tipo
                            2. Objeto es:
                              1. Una instancia de un TDA
                              2. Ocultamiento de Información
                                1. Mediante controles de acceso
                                2. Problemas de Reuso
                                  1. Requieren ser adaptadas para el nuevo uso
                                    1. Entender la implementación del TDA
                                3. Introducción a OO
                                  1. Programa es:
                                    1. Conjunto de objetos correspondientes a una abstracción
                                    2. Comunicación entre objetos:
                                      1. Mensajes a algún método, el cual puede retornar objetos
                                      2. Mesajes pueden alterar el estado del objeto
                                        1. Objeto
                                          1. Tiene estado (variables) y comportamiento (metodos)
                                            1. Encapsulamiento mediante metodos
                                              1. Manipulación de estado mediante métodos
                                              2. Mensajes
                                                1. Objetos interactúan enviándose mensajes
                                                  1. Consiste:
                                                    1. Identificador del objeto
                                                      1. Identificador del método
                                                        1. Parámetros
                                                      2. Clase
                                                        1. Representa:
                                                          1. Conjunto de objetos comunes
                                                          2. Un objeto es la instancia de una clase
                                                          3. Herencia
                                                            1. Capacidad de usar datos abstractos ya definidos sin alterarlos
                                                              1. La reutilización se da al definir TDAs adicionales al TDA base
                                                                1. Las clases que heredan de una clase base (superclase) se denominan derivadas (subclases)
                                                                  1. Una subclase heredera puede hacer override de un método
                                                                    1. Ventajas
                                                                      1. Subclases proveen comportamiento en base a la superclase
                                                                        1. Definir clases abstractas que representan el comportamiento de las clases heredadas
                                                                      2. Herencia Múltiple
                                                                        1. Una clase hereda de dos o mas clases
                                                                          1. Problemas
                                                                            1. Colisión de nombres
                                                                              1. Pérdida de eficiencia
                                                                                1. Desorganización
                                                                              2. Poliformismo
                                                                                1. Permite
                                                                                  1. Crear variables del tipo superclse referenciando a objetos de cualquier subclse
                                                                                    1. Adaptar métodos de la superclase con otra implementación
                                                                                    2. Se debe
                                                                                      1. Hacer ligado dinamico al invocar al un metodo
                                                                                    3. Clases y métodos Virtuales
                                                                                      1. Aveces no tiene sentido la creación de ciertos objetos
                                                                                        1. Definir un prototipo a ser implementado por clases derivadas
                                                                                          1. Clase virtual tiene estos métodos
                                                                                          2. Interfaces
                                                                                            1. Definen un protocolo
                                                                                              1. interacción de objetos sin conocer su clase
                                                                                              2. Varias clases pueden implementar una interfaz
                                                                                                1. Obligatorio implementar todos los métodos
                                                                                                  1. Utilidad
                                                                                                    1. Capturar similitudes entre clases no relacionadas
                                                                                                      1. Revelar una interfaz de programación
                                                                                                  2. Introducción a Java
                                                                                                    1. Orígenes
                                                                                                      1. James Gosling inicia un proyecto independiente de la plataforma
                                                                                                        1. Desarrolla OAK (Lenguaje de programación)
                                                                                                          1. Aparece WWW y Mosaic
                                                                                                            1. SUn anuncia Java con soporte de applets
                                                                                                              1. Versión J2se1.5-Beta disponible
                                                                                                              2. Tecnología
                                                                                                                1. Orientado a objetos
                                                                                                                  1. Sintaxis similar a C++
                                                                                                                    1. Plataforma
                                                                                                                      1. Máquina Virtual Java (JVM)
                                                                                                                        1. Java API
                                                                                                                      2. Caracteristicas
                                                                                                                        1. Simple y Orientado a objetos
                                                                                                                          1. Robusto y Seguro
                                                                                                                            1. Interpretado, neutro de la arquitectura y portable
                                                                                                                              1. Distribuido y alto desempeño
                                                                                                                                1. Mejor interactividad de aplicaciones
                                                                                                                                  1. Permite enlace y carga dinámica de clases
                                                                                                                                  2. Aplicación
                                                                                                                                    1. Ejecuta la función main de una clase
                                                                                                                                      1. Confiables (pueden leer, escribir, crear o borrar archivos
                                                                                                                                    2. Conceptos
                                                                                                                                      1. Conjunto de Caracteres
                                                                                                                                        1. Utiliza Unicode (caracteres de 16 bits)
                                                                                                                                          1. Lee ASCII convirtiendo a Unicode
                                                                                                                                            1. Pocos editores usan Unicode
                                                                                                                                            2. Identificadores
                                                                                                                                              1. Deben
                                                                                                                                                1. Comenzar con una letra, incluido _ o $ seguido de letras o dígitos
                                                                                                                                                2. Se diferencia mayusculas de minúsculas
                                                                                                                                                  1. Palabras reservadas no pueden ser identificador
                                                                                                                                                  2. Variable
                                                                                                                                                    1. Item de datos nombrado por un identificador
                                                                                                                                                      1. Tiene:
                                                                                                                                                        1. Un tipo y debe ser declarado
                                                                                                                                                          1. Ambito que define su visibilidad en el programa
                                                                                                                                                        2. Tipos de Datos
                                                                                                                                                          1. Define los posibles valores para una variable
                                                                                                                                                            1. Tiene dos categorías:
                                                                                                                                                              1. Primitivos (único valor de tamaño)
                                                                                                                                                                1. Referencias (dirección a un conjunto de valores)
                                                                                                                                                                2. Direcciones implicitas (no soporta punteros)
                                                                                                                                                                3. Valores Iniciales
                                                                                                                                                                  1. Se puede inicializar en su declaración
                                                                                                                                                                  2. Operadres
                                                                                                                                                                    1. Se asocia por precedencia
                                                                                                                                                                      1. Paréntesis cambia la precedencia
                                                                                                                                                                        1. Tipos de operadores
                                                                                                                                                                          1. Aritméticos
                                                                                                                                                                            1. Incremento y Decremento
                                                                                                                                                                              1. Relacionales
                                                                                                                                                                                1. Al bit
                                                                                                                                                                                  1. Condicional
                                                                                                                                                                                    1. De asignación
                                                                                                                                                                                  2. Expresiones
                                                                                                                                                                                    1. Se evalúa de izquierda a derecha
                                                                                                                                                                                      1. Cada operando se evalúa antes de realizar la operación
                                                                                                                                                                                        1. Cada expresión tiene un tipo
                                                                                                                                                                                        2. Conversión de tipo
                                                                                                                                                                                          1. Conversión implícita es automática en valores primitivos
                                                                                                                                                                                            1. Conversión Explícita se denomina cast
                                                                                                                                                                                            2. Control de flujo
                                                                                                                                                                                              1. Sentencias y Bloques
                                                                                                                                                                                                1. Toda sentencia termina con ; y un bloque se forma con { y {
                                                                                                                                                                                                2. Sentencia if-else
                                                                                                                                                                                                  1. Control de flujo basico condicional
                                                                                                                                                                                                  2. Sentencia switch
                                                                                                                                                                                                    1. Evalua una expresión entera para seleccionar un caso sino salta a default
                                                                                                                                                                                                    2. Sentencia while y do-while
                                                                                                                                                                                                      1. Repetición controlada por expresión booleana
                                                                                                                                                                                                      2. Sentencia for
                                                                                                                                                                                                        1. Permite controlas la repetición para un rango de valores
                                                                                                                                                                                                        2. Sentencia break, continue y return
                                                                                                                                                                                                          1. Sale de cualquier bloque o bucle
                                                                                                                                                                                                        3. Modificador final
                                                                                                                                                                                                          1. en 3 situaciones:
                                                                                                                                                                                                            1. Variable, no puede ser modificada
                                                                                                                                                                                                              1. Método, no puede ser redefinido
                                                                                                                                                                                                                1. Clase, no puede derivar
                                                                                                                                                                                                              2. La clase Object
                                                                                                                                                                                                                1. Todas las clase tienen a Object como raíz
                                                                                                                                                                                                                  1. Tiene metodos útilez que podemos usar debido a la herencia
                                                                                                                                                                                                                  2. metodos equals y hashCode
                                                                                                                                                                                                                    1. deben ser redefinidos conjuntamente
                                                                                                                                                                                                                      1. son iguales si tienen el mismo codigo hash
                                                                                                                                                                                                                    2. Clase y Objeto
                                                                                                                                                                                                                      1. Modificadores
                                                                                                                                                                                                                        1. public
                                                                                                                                                                                                                          1. Solo es accesible por el mismo paquete
                                                                                                                                                                                                                          2. abstract
                                                                                                                                                                                                                            1. No puede ser instanciada
                                                                                                                                                                                                                            2. final
                                                                                                                                                                                                                              1. No puede ser derivada
                                                                                                                                                                                                                            3. Variables Mienbros
                                                                                                                                                                                                                              1. Variables que no son estáticos y tienen sus propias instancias y estados
                                                                                                                                                                                                                              2. Control de acceso
                                                                                                                                                                                                                                1. Disponibilidad de métodos y variables en la clase
                                                                                                                                                                                                                                  1. Para controlar el acceso:
                                                                                                                                                                                                                                    1. Privado
                                                                                                                                                                                                                                      1. Accesibles por la propia clase
                                                                                                                                                                                                                                      2. Paquete
                                                                                                                                                                                                                                        1. Solo accesibles por código
                                                                                                                                                                                                                                        2. Protegido
                                                                                                                                                                                                                                          1. Accesibles por una subclase
                                                                                                                                                                                                                                          2. Púlico
                                                                                                                                                                                                                                            1. Son accesibles por cualquier clase
                                                                                                                                                                                                                                        3. Constructores y creacion de objetos
                                                                                                                                                                                                                                          1. Un objeto recién creado debe inicializar las variables miembro
                                                                                                                                                                                                                                          2. Referencia this
                                                                                                                                                                                                                                            1. Solo si es no estático y se refiere al objeto actual
                                                                                                                                                                                                                                              1. se usa implícitamente al comienzo de cada miembro referenciado en el código
                                                                                                                                                                                                                                              2. Sobrecarga de métodos
                                                                                                                                                                                                                                                1. Permite tener varios métodos con un mismo nombre
                                                                                                                                                                                                                                                  1. Se calza según los parámetros usados
                                                                                                                                                                                                                                                  2. Miembros Estáticos
                                                                                                                                                                                                                                                    1. Es único para toda una clase
                                                                                                                                                                                                                                                      1. Variable miembro estática
                                                                                                                                                                                                                                                        1. Variable única para los objetos de una clase
                                                                                                                                                                                                                                                        2. Método estático
                                                                                                                                                                                                                                                          1. Se invoca en nombre de toda la clse
                                                                                                                                                                                                                                                        3. Recolección de basura
                                                                                                                                                                                                                                                          1. Realiza recolección automática de basura
                                                                                                                                                                                                                                                            1. Ventajas
                                                                                                                                                                                                                                                              1. No requiere invocar al administrador de memoria
                                                                                                                                                                                                                                                                1. No se produce problema de dangling
                                                                                                                                                                                                                                                              2. Metodo finalize
                                                                                                                                                                                                                                                                1. Finaliza antes de librear memoria
                                                                                                                                                                                                                                                                  1. Util cuando se usan recursos no de Java
                                                                                                                                                                                                                                                                  2. Método toString
                                                                                                                                                                                                                                                                    1. invoca en cualquier expresión en que el objeto aparezca con los operadores + y +=
                                                                                                                                                                                                                                                                    2. Clases anidadas
                                                                                                                                                                                                                                                                      1. Permite definir una clase como miembro de otra clase
                                                                                                                                                                                                                                                                    3. Packages
                                                                                                                                                                                                                                                                      1. contiene
                                                                                                                                                                                                                                                                        1. Clases, interfaces, y subpaquetes relacionados entre sí
                                                                                                                                                                                                                                                                          1. Facilita la distribución del software
                                                                                                                                                                                                                                                                          2. Existen paquetes propios de Java
                                                                                                                                                                                                                                                                          3. Excepciones
                                                                                                                                                                                                                                                                            1. Corresponde a un evento que interrumpe el flujo normal de la ejecución
                                                                                                                                                                                                                                                                              1. Permite reaccionar ante errores de ejecución
                                                                                                                                                                                                                                                                                1. Ventajas
                                                                                                                                                                                                                                                                                  1. Separa el código de los errores
                                                                                                                                                                                                                                                                                    1. Propaga errores a través de los métodos activos en el stack
                                                                                                                                                                                                                                                                                      1. Permite agrupar errores y diferenciarlos
                                                                                                                                                                                                                                                                                      2. Cláusula finally
                                                                                                                                                                                                                                                                                        1. Al momento de lanzar una excepción se detiene el procesamiento del método
                                                                                                                                                                                                                                                                                          1. Se usa la cláusula finally, que se ejecuta haya o no excepción antes de retornar
                                                                                                                                                                                                                                                                                        2. Streams
                                                                                                                                                                                                                                                                                          1. Java provee más de 60 clases de streams
                                                                                                                                                                                                                                                                                            1. Las Clases básicas sólo permiten leer o escribir bytes o caracteres
                                                                                                                                                                                                                                                                                            2. Archivos
                                                                                                                                                                                                                                                                                              1. Permite tener representación abstracta de archivos y directorios
                                                                                                                                                                                                                                                                                                1. Mediante la clase File podemos acceder a métodos como:
                                                                                                                                                                                                                                                                                                  1. Crear directorio, renombrar, borrar, sendero del archivo, listar directorio, etc
                                                                                                                                                                                                                                                                                                2. Patrones de Diseño
                                                                                                                                                                                                                                                                                                  1. FactoryMethod
                                                                                                                                                                                                                                                                                                    1. Una fáblica es un patrón que devuelve un objeto dependiendo de la información proveída
                                                                                                                                                                                                                                                                                                      1. Devuelve una clase abstracta o interfaz
                                                                                                                                                                                                                                                                                                      2. Singleton
                                                                                                                                                                                                                                                                                                        1. Objeto que requiere tener una sola instancia
                                                                                                                                                                                                                                                                                                          1. Mejora el rendimiento y asegura recursos no compartidos
                                                                                                                                                                                                                                                                                                          2. Patrones de diseño empresariales
                                                                                                                                                                                                                                                                                                            1. View Helper
                                                                                                                                                                                                                                                                                                              1. Session Facade
                                                                                                                                                                                                                                                                                                                1. Data Access Object
                                                                                                                                                                                                                                                                                                              Show full summary Hide full summary

                                                                                                                                                                                                                                                                                                              Similar

                                                                                                                                                                                                                                                                                                              PROGRAMACIÓN ORIENTADA A OBJETOS - TERCER CORTE
                                                                                                                                                                                                                                                                                                              Jose Anacona Pira
                                                                                                                                                                                                                                                                                                              prueba 1
                                                                                                                                                                                                                                                                                                              ANGELA HIDALGO
                                                                                                                                                                                                                                                                                                              ESTUDIANTE
                                                                                                                                                                                                                                                                                                              Omar valeta
                                                                                                                                                                                                                                                                                                              EVENTOS EN JAVA
                                                                                                                                                                                                                                                                                                              **CR 7**
                                                                                                                                                                                                                                                                                                              ELEMENTOS Y CONCEPTOS FUNDAMENTALES trabajo final
                                                                                                                                                                                                                                                                                                              supervisortropi
                                                                                                                                                                                                                                                                                                              Parcial Fundamento de Programación
                                                                                                                                                                                                                                                                                                              ALBERTO MANUEL PATERNINA LEON
                                                                                                                                                                                                                                                                                                              Conceptos de Genética Mendeliana
                                                                                                                                                                                                                                                                                                              maya velasquez
                                                                                                                                                                                                                                                                                                              CONCEPTOS GENÉTICA MENDELIANA
                                                                                                                                                                                                                                                                                                              VICTOR MANUEL VITORIA RUIZ
                                                                                                                                                                                                                                                                                                              CUESTIONARIO DE FÍSICA
                                                                                                                                                                                                                                                                                                              amam3105
                                                                                                                                                                                                                                                                                                              Márketing (Conceptos básicos)
                                                                                                                                                                                                                                                                                                              Lina Hernandez13
                                                                                                                                                                                                                                                                                                              Historia de la Ética
                                                                                                                                                                                                                                                                                                              hectorleyva