Programas informáticos, lenguajes de programación y conceptos del desarrollo de software Flashcards

(40 cards)

1
Q

¿Qué es un programa informático?

A

Es un conjunto de instrucciones escritas en un lenguaje de programación que se ejecutan secuencialmente para realizar una tarea específica.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué entiende el sistema directamente?

A

Solo puede interpretar instrucciones en código máquina (binario: 1s y 0s).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Qué es un lenguaje ensamblador?

A

Es un lenguaje de bajo nivel que utiliza códigos mnemotécnicos y depende directamente del hardware donde se ejecuta.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué tipos de datos pueden procesar los programas?

A

Ejemplos incluyen órdenes del usuario (navegador), posiciones y puntuaciones (videojuegos), texto e imágenes (ofimática).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué es un lenguaje de programación?

A

Conjunto de instrucciones, operadores y reglas de sintaxis y semántica que permite comunicarse con el hardware redactando código legible por humanos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Qué objetivo tienen los lenguajes de programación?

A

Facilitar la programación acercando el código al lenguaje humano y alejándolo del lenguaje máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué es un lenguaje de primera generación?

A

Lenguaje máquina, escrito en código binario, que es directamente entendido por el procesador.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué es un lenguaje de segunda generación?

A

Lenguaje ensamblador, que usa instrucciones mnemotécnicas y permite programas muy optimizados pero dependientes del hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué es un lenguaje de tercera generación?

A

Lenguaje de alto nivel como Java o C++, con sintaxis más cercana al lenguaje humano e independiente del hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué es un lenguaje de cuarta generación?

A

Lenguajes específicos para ciertas tareas como manejo de bases de datos, que permiten desarrollar aplicaciones complejas con menos código.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué es un lenguaje de quinta generación?

A

Lenguajes para la programación lógica y la inteligencia artificial, facilitando que las computadoras aborden problemas a través del razonamiento automático y la inferencia lógica

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Qué es el nivel de abstracción?

A

Es el grado de cercanía del lenguaje de programación al lenguaje humano. A mayor nivel, más alejado está del lenguaje máquina.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué caracteriza a los lenguajes compilados?

A

Requieren ser traducidos a código máquina antes de ejecutarse. La compilación genera un archivo ejecutable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué caracteriza a los lenguajes interpretados?

A

Se ejecutan línea por línea sin necesidad de compilación previa, usando un intérprete en tiempo real.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Qué son los lenguajes virtuales?

A

Lenguajes que se compilan a bytecode, que luego es ejecutado por una máquina virtual en lugar del hardware directamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

¿Qué es el paradigma imperativo o estructurado?

A

Un modelo de programación basado en secuencias, decisiones e iteraciones. Se enfoca en cómo se realiza una tarea paso a paso.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

¿Qué es el paradigma orientado a objetos?

A

Modelo basado en objetos que encapsulan datos y comportamientos, e interactúan entre sí simulando entidades del mundo real.

18
Q

¿Qué es el paradigma funcional?

A

Modelo basado en funciones puras y matemáticas, donde el resultado de una función se usa como entrada de otra.

19
Q

¿Qué es el paradigma lógico?

A

Basado en lógica formal, usa hechos y reglas para deducir información y resolver problemas.

20
Q

¿Qué es el código fuente?

A

Conjunto de instrucciones escritas por el programador en un lenguaje de alto nivel.

21
Q

¿Qué es el código objeto?

A

Resultado de compilar el código fuente; puede ser código máquina o bytecode.

22
Q

¿Qué es el código ejecutable?

A

Archivo que contiene el código listo para ser ejecutado por el sistema operativo, tras enlazar el código objeto con bibliotecas.

23
Q

¿Qué es un compilador?

A

Herramienta que traduce el código fuente a código máquina, detecta errores y genera el programa ejecutable.

24
Q

¿Qué es una máquina virtual?

A

Software que simula un entorno de ejecución para interpretar bytecode en cualquier plataforma, como la JVM de Java.

25
¿Qué es el análisis lexicográfico?
Primera fase de la compilación que transforma el código fuente en tokens y detecta errores léxicos.
26
¿Qué es el análisis sintáctico-semántico?
Verifica que las estructuras del código fuente sean correctas gramatical y lógicamente.
27
¿Qué hace el generador de código intermedio?
Traduce el código fuente a un formato más cercano a la máquina pero aún independiente del hardware.
28
¿Qué hace el optimizador de código?
Mejora el código intermedio eliminando redundancias y mejorando la eficiencia.
29
¿Qué hace el generador de código?
Convierte el código optimizado en código objeto que puede ejecutarse por el sistema.
30
¿Qué hace el enlazador?
Une el código objeto con las bibliotecas necesarias y genera el ejecutable final.
31
¿Cuáles son las fases del desarrollo de software?
Análisis, Diseño, Codificación, Pruebas, Documentación, Mantenimiento y Explotación.
32
¿Qué hace un analista de sistemas?
Recoge los requisitos del cliente y asegura que el software cumpla sus expectativas.
33
¿Qué hace un diseñador de software?
Define la solución técnica y estructura del software, eligiendo tecnologías adecuadas.
34
¿Qué hace un analista programador?
Traduce el diseño en especificaciones funcionales y técnicas para los programadores.
35
¿Qué hace un programador?
Escribe el código siguiendo las indicaciones del analista programador.
36
¿Qué hace un arquitecto de software?
Define la estructura técnica del sistema y selecciona las tecnologías para optimizar recursos.
37
¿Qué es bytecode?
Código intermedio generado por compiladores de lenguajes como Java, ejecutado por una máquina virtual en distintas plataformas.
38
¿Qué herramienta ofrece simulación de código ensamblador?
Assembler Simulator, disponible en https://schweigi.github.io/assembler-simulator/
39
¿Qué es JDK?
Java Development Kit: incluye la JRE más herramientas necesarias para desarrollar aplicaciones Java.
40
¿Qué es JRE?
Java Runtime Environment: permite ejecutar programas Java, pero no desarrollarlos.