Programación

Description

Mind Map on Programación, created by jhon malagon on 20/02/2018.
jhon malagon
Mind Map by jhon malagon, updated more than 1 year ago
jhon malagon
Created by jhon malagon about 6 years ago
18
0

Resource summary

Programación
  1. Lenguajes:
    1. Java
      1. Es un lenguaje
        1. Concurrente
          1. De propósito general
            1. Orientado a objetos
            2. Diseñado para tener tan pocas dependencias como sea posible
              1. Diseñado por sun microsystem
                1. Su sintaxis deriva en gran medida de C y C++
                  1. Se creó con 5 objetivos
                    1. Usar el paradigma POO
                      1. Permitir su ejecución en múltiples sistemas operativos
                        1. Incluir soporte para trabajo en red
                          1. Diceñarse para ejecutar código en sistemas remotos de forma segura
                            1. Fácil de usar
                          2. C++
                            1. Diseñado por BJARME STROUSTRUP
                              1. Fue creado con el objetivo de extender al lenguaje C, mecanismos de manipulación de objetos
                              2. HTML
                                1. Hyper Text Markup Langauge
                                  1. Estandar acargo del World Wide Web (WWW)
                                    1. Basa su filosofía de desarrollo de la diferenciación
                                    2. Etc
                                      1. Todos constan de algoritmos
                                        1. Un algoritmo es una serie de pasos o instrucciones
                                          1. Los pasos del algoritmo deben ser bien definidos, ordenados y finitos
                                            1. Se pueden expresar mediante
                                              1. Pseudocodigo
                                                1. Es una forma de escribir los pasos que va a realizar un programa de la forma más cercana al lenguaje del programa
                                                2. Diagramas de flujo
                                                  1. Se usan para describir procesos o algoritmos de forma gráfica
                                                    1. Pueden ser usados para:
                                                      1. Documentar
                                                        1. Estudiar
                                                          1. Planificar
                                                          2. Emplean:
                                                            1. Rectangulos
                                                              1. Ovalos
                                                                1. Diamantes
                                                                  1. Etc
                                                            2. Se emplean frecuentemente para resolver problemas en la vida cotidiana
                                                              1. Pueden ser funciones que transforman un problema (entrada) en una solución (salida)
                                                                1. Algunos de estos son susceptiples a nunca terminar (bucle infinito)
                                                                  1. Si una función puede ser calculada por medio de una algoritmo se dice que esta es computable
                                                                  2. Como medida de eficiencia estos se suelen estudiar mediante:
                                                                    1. Memoria que consume
                                                                      1. Tiempo que consume
                                                                        1. Esta es una disciplina de las ciencias de la computación
                                                                          1. Este estudio se puede dar sin usar ningún tipo de lenguaje de programación
                                                                            1. En este se estudian algoritmos
                                                                              1. Heuristicos
                                                                                1. Los cuales buscan
                                                                                  1. Buenos tiempos de ejecución
                                                                                    1. Soluciones óptimas
                                                                                  2. De ordenamiento
                                                                                    1. Pone elementos de una lista en una secuencia dada por una relación de orden
                                                                                    2. De búsqueda
                                                                                      1. Esta diseñado para localizar un elemento en una estructura de datos
                                                                          2. Paradigmas
                                                                            1. Imperativo
                                                                              1. Describe la programacion en terminos del estado del programa y sentencias
                                                                                1. Caracteristicas
                                                                                  1. Memoria
                                                                                    1. Unidad de control
                                                                                    2. También conocido como procedimental o algorítmico
                                                                                      1. Se rige por 2 conceptos básicos para la construcción de programas
                                                                                        1. Estructura
                                                                                          1. Módulo
                                                                                          2. Se basa en 3 conceptos importantes:
                                                                                            1. Celda de memoria variables
                                                                                              1. Se almacenan valores que sonreferenciados y modificados durante la ejecución
                                                                                              2. Repetición
                                                                                                1. Se realiza ejecutandose varias veces
                                                                                                2. Operadores de asignación
                                                                                                  1. Permite asociar datos o valores a la pocisión de memoria que los contiene
                                                                                                3. Ventajas
                                                                                                  1. Simple y fácil de implementar
                                                                                                    1. Gran capacidad de reutilización de código
                                                                                                      1. Facilidad con el seguimiento del flujo del programa
                                                                                                        1. Menos uso de memoria
                                                                                                        2. Desventajas
                                                                                                          1. Los datos son expuestos a la totalidad del programa
                                                                                                            1. Dificultad de relacionar los objetos con el mundo real
                                                                                                              1. Dificultad en la extensibilidad del programa
                                                                                                                1. Mayor importancia a la operación de datos que a los mismos
                                                                                                              2. Orientado a Objetos
                                                                                                                1. Define los programas en terminos de comunidades de objetos
                                                                                                                  1. Esta basado en varias técnicas incluyendo
                                                                                                                    1. Herencia
                                                                                                                      1. Mecanismo más utilizado para alcanzar los objetivos en el desarrollo de software
                                                                                                                        1. Como lo son:
                                                                                                                          1. La reutilización
                                                                                                                            1. La extensibilidad
                                                                                                                          2. Se puede crear nuevas clases partiendo de una clase o una jerarquía de estas ya pre-existentes
                                                                                                                            1. Evita el rediseño, modificación o verificación de algo ya implementado
                                                                                                                              1. Facilita la creación de objetos a partir de la creación de otros
                                                                                                                                1. Es una relación entre una clase general y otra más específica
                                                                                                                                  1. Una clase que deriva de otra extiende su funcionalidad
                                                                                                                                    1. Suele ser requisito fundamental para implementar el polimorfismo
                                                                                                                                      1. Permite que existan clases que nunca serán instanciadas directamente
                                                                                                                                        1. Ventajas
                                                                                                                                          1. Ayuda a ahorrar código y tiempo
                                                                                                                                            1. Toda clase puede servir para crear otras
                                                                                                                                              1. Todo objeto puede ser construido a partir de otro
                                                                                                                                              2. Desventajas
                                                                                                                                                1. Si la jerarquía es demasido compleja pueden haber problemas para comprender el funcionamiento
                                                                                                                                                2. Existe dos tipos de herencia
                                                                                                                                                  1. Simple
                                                                                                                                                    1. Múltiple
                                                                                                                                                  2. Abstracción
                                                                                                                                                    1. Polimorfismo
                                                                                                                                                      1. Cohesión
                                                                                                                                                        1. Grado en el que los elementos permanecen juntos
                                                                                                                                                          1. Debe haber alta cohesión
                                                                                                                                                            1. Mide las fuerzas de relación entre las piezas de funcionalidad y módulo
                                                                                                                                                              1. Generalmente se describe como cohesión alta o baja
                                                                                                                                                              2. Encapsulamiento
                                                                                                                                                                1. Acoplamiento
                                                                                                                                                              3. Funcional
                                                                                                                                                                1. Dinamico
                                                                                                                                                                  1. Etc
                                                                                                                                                                  Show full summary Hide full summary

                                                                                                                                                                  Similar

                                                                                                                                                                  Operadores Python
                                                                                                                                                                  Giovanni Sanhuez
                                                                                                                                                                  Mis Recursos de Programación
                                                                                                                                                                  maya velasquez
                                                                                                                                                                  FUNDAMENTOS DE REDES DE COMPUTADORAS
                                                                                                                                                                  anhita
                                                                                                                                                                  Mapa Conceptual de la arquitectura de base de datos
                                                                                                                                                                  Alan Alvarado
                                                                                                                                                                  Abreviaciones comunes en programación web
                                                                                                                                                                  Diego Santos
                                                                                                                                                                  codigos QR
                                                                                                                                                                  Cristina Padilla
                                                                                                                                                                  Editor Dibujo Paint
                                                                                                                                                                  gladiscj
                                                                                                                                                                  ANALISIS SISTEMATICO DE LA COMPUTADORA Y LOS PERIFERICOS QUE LO INTEGRAN
                                                                                                                                                                  Ana pinzon
                                                                                                                                                                  Herramientas de Software para Comercio y Finanzas
                                                                                                                                                                  mishelleisabel
                                                                                                                                                                  Historia de la Computadora
                                                                                                                                                                  Diego Santos
                                                                                                                                                                  BASES DE DATOS
                                                                                                                                                                  Horst Berndt Reyes