Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Rocket clouds
TEMAS por Mind Map: TEMAS

1. ALGORITMOS

1.1. Es una lista que, dado un estado inicial y una entrada, propone pasos sucesivos para arribar a un estado final obteniendo una solución.

1.2. CARACTERÍSTICAS

1.2.1. Las características fundamentales que debe cumplir todo algoritmo son:

1.2.1.1. Debe ser preciso e indicar el orden de realización de cada paso.

1.2.1.2. Debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.

1.2.1.3. Debe ser finito. El algoritmo se debe terminar en algún momento; o sea, debe tener un número finito de pasos.

1.2.1.4. Debe ser legibles: El texto que lo describe debe ser claro, tal que permita entenderlo y leerlo fácilmente.

1.3. REPRESENTACIÓN

1.3.1. Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros.

1.3.2. DIAGRAMA DE FLUJO

1.3.2.1. Es la representación gráfica de las distintas operaciones que se tienen que realizar para resolver un problema, con indicación expresa el orden lógico en que deben realizarse.

1.3.3. PSEUDOCÒDIGO (lenguaje falso)

1.3.3.1. Es un conjunto pequeño y claro de instrucciones; en secuencia, que permite llevar a cabo una tarea.

1.3.3.2. El pseudocódigo utiliza para representar las acciones sucesivas palabras reservadas en inglés (similares a sus homónimos en los lenguajes de programación), tales como star,begin, end, stop, if-then-else, while, repeat-until….etc

1.4. Un algoritmo debe definir tres partes: Entrada, Proceso y Salida.

2. ESTRUCTURAS

2.1. ESTRUCTURAS SECUENCIALES

2.1.1. Es aquélla en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso.

2.2. ESTRUCTURAS SELECTIVAS

2.2.1. Se utilizan para tomar decisiones lógicas

2.2.2. En las estructuras selectivas se evalúa una condición y en función del resultado la misma se realiza una opción u otra.

2.2.3. Las estructuras selectivas pueden ser:

2.2.3.1. ALTERNATIVA SIMPLE (SI-ENTONCES/IF-THEN).

2.2.3.1.1. Si la condición es verdadera, entonces ejecuta la acción. Si la condición es falsa, entonces no hacer nada.

2.2.3.2. ALTERNATIVA DOBLE ( SI-ENTONCES-SI_NO / IF - THEN - ELSE ).

2.2.3.2.1. Estructura que permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una determinada condición. SI o NO, VERDADERO o FALSO

2.2.3.3. ALTERNATIVAS MÚLTIPLES (SEGÚN _ SEA, CASO DE / CASE).

2.2.3.3.1. Cuando existen más de dos elecciones (alternativas) posibles

2.3. ESTRUCTURAS REPETITIVAS

2.3.1. Las estructuras que repiten una secuencia de instrucciones un número determinado de veces se denominan Bucles y se denomina Iteración al hecho de repetir la ejecución de una secuencia de acciones.

2.3.2. Entre las estructuras repetitivas se encuentran:

2.3.2.1. Estructura mientras (WHILE).

2.3.2.1.1. La estructura repetitiva while, es aquélla en que el cuerpo del bucle se repite mientras se cumple una determinada condición.

3. LENGUAJE DE PROGRAMACION

3.1. Consiste en todos los símbolos, caracteres y reglas de uso que permiten a las personas "comunicarse" con las computadoras

3.1.1. Aunque todos los lenguajes de programación tienen un conjunto de instrucciones que permiten realizar dichas operaciones, existe una marcada diferencia en los símbolos, caracteres y sintaxis de los lenguajes de máquina, lenguajes ensambladores y lenguajes de alto nivel.

3.1.2. Son herramientas que nos permiten crear programas y software. Entre ellos tenemos: C#, Delphi, C, PHP, Perl, Python,Visual Basic, Pascal, Java, entre otros.

3.2. EVOLUCIÓN DE LOS LENGUAJES DE PROGRAMACIÓN

3.2.1. Fortran (1957) (“The IBM Mathematical Formula Translating System”): Un lenguaje de programación de alto nivel de propósito general. Para cálculo numérico y científico (como alternativa al lenguaje ensamblador).

3.2.2. Lisp (1958) (“List Processor”) Utilizado para la notación matemática y temas de ciencias de la computación.

3.2.3. Cobol (1959) (“Common Business-Oriented Language) Usado principalmente para la informática empresarial. Es el primer lenguaje de programación que se demandan por el Departamento de Defensa de EE.UU

3.2.4. Basic (1964) (“Beginner’s All-purpose Symbolic Instruction Code”) Diseñado para la simplicidad. Su popularidad explotó a mediados de los años 70 con los computadores personales.

3.2.5. C (1969) Este lenguaje fue desarrollado entre 1969 y 1973 por Dennis Ritchie para los laboratorios Bell Telephone para usarlos en el sistema Unix. Se le llamó “C” porque sus características derivaban de un lenguaje anterior llamado “B”.

3.2.6. Pascal (1970) (En honor al matemático/físico francés Blaise Pascal) Utilizado para la enseñanza de la programación estructurada y estructuración de datos.

3.2.7. Ada (1980) (En honor a Ada Lovelace): Es derivado del Pascal. Contratado por el Departamento de Defensa de los EE.UU. en 1977 para el desarrollo de sistemas de software grandes.

3.2.8. C++ (1983) (“C con clases”; ++ es el operador de incremento en “C”) Es una extensión de lenguaje C, con mejoras tales como clases, funciones virtuales y plantillas.

3.2.9. Perl (1987) Creado para el procesamiento de informes en sistemas Unix. Hoy en día es conocido por su gran potencia y versatilidad.

3.2.10. Python (1991) Guido Van Rossum lo creó para solucionar problemas en el lenguaje ABC y continúa utilizándose para tal fin. Hoy en día es usado por la NASA

3.2.11. Ruby (1993) Una lenguaje influenciado por Perl, Ada, Lisp, Smalltalk, etc. Diseñado para la programación productiva y agradable.

3.2.12. PHP (1995) (“Personal Home Page”) Usado para la creación de páginas web dinámicas.

3.2.13. Java (1995) Un grupo de trabajadores de Sun Microsystems, liderado por James Gosling, creó Java para arrancar los decodificadores de una televisión interactiva.

3.2.14. Javascript (1995) Creado para ampliar la funcionalidad de las páginas web, permite utilizar formularios de presentación/validación, interactividad, animaciones, seguimiento de la actividad del usuario, etc.

3.2.15. Ruby On Rails (2005) Hasson lanzó Ruby On Rails, en principio, como código abierto, en 2004, pero no compartió los derechos hasta febrero de 2005.

3.3. PARADIGMAS DE LOS LENGUAJES DE PROGRAMACION

3.3.1. Propuesta tecnológica adoptada por una comunidad de programadores incuestionable en cuanto a que unívocamente trata de resolver uno o varios problemas claramente delimitados.

3.3.2. TIPOS DE PARADIGMAS

3.3.2.1. Programación Imperativa

3.3.2.2. Programación funcional

3.3.2.3. Programación lógica

3.3.2.4. Declarativo

3.3.2.5. POO Orientado a Objetos

3.3.2.6. Por procedimientos

3.3.2.7. C++ es un lenguaje multi paradigma que abarca tres paradigmas de la programación

4. CICLO DE VIDA DEL SOFTWARE

4.1. Describe el desarrollo de software, desde la fase inicial hasta la fase final.

4.2. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación

4.3. El ciclo de vida básico de un software consta de los siguientes procedimientos:

4.3.1. Definición de objetivos: definir el resultado del proyecto y su papel en la estrategia global

4.3.2. Análisis de los requisitos y su viabilidad: recopilar, examinar y formular los requisitos del cliente y examinar cualquier restricción que se pueda aplicar.

4.3.3. Diseño general: requisitos generales de la arquitectura de la aplicación.

4.3.4. Diseño en detalle: definición precisa de cada subconjunto de la aplicación.

4.3.5. Programación (programación e implementación): es la implementación de un lenguaje de programación para crear las funciones definidas durante la etapa de diseño.

4.3.6. Prueba de unidad: prueba individual de cada subconjunto de la aplicación para garantizar que se implementaron de acuerdo con las especificaciones.

4.3.7. Integración: para garantizar que los diferentes módulos se integren con la aplicación. Éste es el propósito de la prueba de integración que está cuidadosamente documentada.

4.3.8. Prueba beta (o validación), para garantizar que el software cumple con las especificaciones originales.

4.3.9. Documentación: sirve para documentar información necesaria para los usuarios del software y para desarrollos futuros.

4.3.10. Implementación

4.3.11. Mantenimiento: para todos los procedimientos correctivos (mantenimiento correctivo) y las actualizaciones secundarias del software (mantenimiento continuo).