Tema 1 Flashcards
(21 cards)
Programa Informático
Conjunto de instrucciones que se
ejecutan de manera secuencial con el
objetivo de realizar una o varias tareas
en un sistema
Software
Conjunto de programas informáticos
Hardware
parte física del ordenador (interna + periféricos)
¿Por qué no programamos directamente en código máquina?
El ordenador solo entiende de bits , por lo que su lenguaje es el código máquina, pero nosotros utilizamos un lenguaje que se parezca al nuestro porque el código máquina es complejo
Traductor
Es el encargado de traducir el código fuente a máquina
Lenguaje Ensamblador
Lenguaje intermedio que utiliza instrucciones simbólicas más legibles (como “ADD” o “SUB”). Un ensamblador traduce este lenguaje al código máquina.
Lenguaje de alto nivel
Lenguaje más cercano al humano (como Python o Java). Un compilador o intérprete lo traduce al nivel más bajo para que el ordenador lo ejecute.
Código fuente
- Conjunto de instrucciones
escritas en un lenguaje de
programación
Código Objeto
El resultado de compilar el
código fuente
(bytecode/c.máquina)
Código ejecutable
- El resultado final de entrelazar los c.objetos + librerías
- Programa ejecutable
Compilación de un programa
- Código funte
- Análisis léxico
- Análisis sintáctico-semántico
- Generación del código intermedio
- Optimización
- Generación del código
- Enlazado con librerias
- C. Ejecutable
Lenguaje de programación
Conjunto de instrucciones, operadores y reglas de sintaxis y semánticas que dan lugar a un idioma con el que comunicar al programador con el sistema
Lenguajes por ejecución
- Compilados
- Interpretados
- Virtuales
Lenguajes por nivel de abstracción
- Bajo nivel
- Medio nivel
- Alto nivel
- Muy alto nivel
Lenguajes según su paradigma de programación
- Imperativo
- Procedimental
- Orientado a objetos
- Declarativo
- Funcional
- Lógico
Lenguaje de alto nivel
Se asemeja al lenguaje humano
Lenguaje de bajo nivel
Se asemeja al empleado por las máquinas
Ciclo de vida del software
- Análisis
Requisitos del SW - Diseño
Funcionamiento global en base a recursos - Codificación
Programación - Pruebas
Detectar errores y validar éxito - Documentación
Creación de documentación (interna/externa) - Explotación
Preparación para la distribución del SW - Mantenimiento
Mantener SW implementado
Modelos de desarrollo
- Modelo en cascada
- Modelo Incremental
- Modelo iterativo
- Modelo en espiral
UML
Unified modeling Language
UML es un lenguaje estándar para modelar, construir y documentar software orientado a objetos. Nació para unificar los diversos métodos de modelado en los años 90. Su propósito es crear diagramas que representen cada etapa del desarrollo de software.
Los diagramas correspondientes para cada fase del software
Requisitos: Diagrama de casos de uso
Análisis: D. clase, secuencia y estados
Diseño: D. de paquetes y despliegue
Codificación: Diagrama de clases
Pruebas: Diagrama de Casos de uso
Mantenimiento: Todos