Untitled Quiz

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

¿Qué caracteriza al software en comparación con los elementos físicos?

  • El software no se puede replicar.
  • El software se puede estropear fácilmente.
  • El software es un elemento tangible.
  • El software es lógico e intangible. (correct)

¿Qué es una aplicación informática?

  • Un dispositivo utilizado para modificar datos.
  • Un documento digital que se almacena en la nube.
  • Un conjunto de hardware que realiza tareas específicas.
  • Un programa compuesto por instrucciones que el ordenador debe ejecutar. (correct)

¿Cuál de las siguientes afirmaciones sobre el desarrollo de software es verdadera?

  • El software se puede instalar sin necesidad de un sistema operativo.
  • El software no se puede desarrollar a medida.
  • El software se desarrolla solo con metodologías estándar.
  • El software se desarrolla usando un lenguaje de programación y una metodología de programación. (correct)

¿Qué ocurre si el ordenador no entiende alguna instrucción de un programa?

<p>Se mostrará un mensaje de error. (D)</p> Signup and view all the answers

¿Cuál de las siguientes es una característica de las aplicaciones informáticas personalizadas?

<p>Realizan tareas específicas según las necesidades del usuario. (B)</p> Signup and view all the answers

¿Qué tipo de aplicaciones informáticas incluye la gestión de bases de datos?

<p>Aplicaciones de contabilidad. (A)</p> Signup and view all the answers

¿Cuál es el significado de 'ejecutar' en el contexto del software?

<p>Iniciar un programa y ponerlo en ejecución. (A)</p> Signup and view all the answers

¿Qué es una 'librería' en el contexto del desarrollo de software?

<p>Un conjunto de programas y funciones que realizan tareas específicas. (A)</p> Signup and view all the answers

¿Qué caracteriza a un lenguaje de programación en comparación con el lenguaje máquina?

<p>Es comprensible por los ordenadores, pero también por los humanos. (D)</p> Signup and view all the answers

¿Cuál de las siguientes opciones no es un tipo de lenguaje de programación mencionado?

<p>Lenguaje de baja nivel (A)</p> Signup and view all the answers

¿Qué implica la evolución de los lenguajes de programación según la información?

<p>Facilitan la tarea del programador aunque pueden ser más lentos. (D)</p> Signup and view all the answers

¿Qué es una palabra reservada en un lenguaje de programación?

<p>Los símbolos que componen la sintaxis del lenguaje. (C)</p> Signup and view all the answers

¿Cuál de los siguientes lenguajes es considerado un lenguaje de alto nivel?

<p>C++ (D)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones es verdadera sobre los lenguajes de programación actuales?

<p>Facilitan la programación pero a veces crean programas más pesados. (A)</p> Signup and view all the answers

En el contexto de lenguajes de programación, ¿qué se entiende por semántica?

<p>Las reglas que definen la combinación de símbolos en un lenguaje. (A)</p> Signup and view all the answers

¿Qué elemento no forma parte de la definición de un programa en un lenguaje de programación?

<p>Lenguaje máquina relacionado. (B)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones describe mejor a los lenguajes compilados?

<p>Son más seguros pero menos portables que los lenguajes interpretados. (A), Requieren un compilador y son más rápidos que los lenguajes interpretados. (C)</p> Signup and view all the answers

Qué característica distingue a los lenguajes interpretados de los compilados?

<p>No generan código objeto y se ejecutan línea por línea. (A)</p> Signup and view all the answers

¿Cuál es el elemento clave necesario para ejecutar un lenguaje compilado?

<p>Un compilador para traducir el código fuente. (D)</p> Signup and view all the answers

¿Qué ventaja tienen generalmente los lenguajes virtuales respecto a los lenguajes compilados?

<p>Son más portables y versátiles. (D)</p> Signup and view all the answers

Cuál es una desventaja de los lenguajes compilados en comparación con los interpretados?

<p>Son menos flexibles para realizar cambios rápidos. (A)</p> Signup and view all the answers

Cuál de los siguientes lenguajes es un ejemplo de lenguaje interpretado?

<p>PHP (C)</p> Signup and view all the answers

En qué momento se traduce el código en los lenguajes interpretados?

<p>A medida que se va ejecutando, línea por línea. (A)</p> Signup and view all the answers

Un compilador se utiliza principalmente para traducir:

<p>Lenguaje de alto nivel a código objeto. (B)</p> Signup and view all the answers

¿Cuál es la salida final del proceso de compilación?

<p>Programa ejecutable (A)</p> Signup and view all the answers

¿En qué fase del desarrollo de una aplicación se estima la viabilidad del proyecto?

<p>Fase inicial (C)</p> Signup and view all the answers

¿Cuál de las siguientes fases no forma parte del desarrollo de software?

<p>Despliegue (B)</p> Signup and view all the answers

¿Qué actividad es clave en la fase inicial del desarrollo de una aplicación?

<p>Planificación del proyecto (B)</p> Signup and view all the answers

¿Qué representa el código objeto en el proceso de compilación?

<p>Un paso intermedio en la creación del programa (A)</p> Signup and view all the answers

¿Cuál es un documento importante que se desarrolla en la fase inicial del proyecto?

<p>Estimación de costes (D)</p> Signup and view all the answers

¿Cuál es la última fase del desarrollo de una aplicación?

<p>Retirada (D)</p> Signup and view all the answers

¿Qué papel desempeñan los expertos en la fase inicial de desarrollo de software?

<p>Planifican el proyecto (A)</p> Signup and view all the answers

¿Qué es el código fuente?

<p>Código de un programa escrito en un lenguaje de programación. (D)</p> Signup and view all the answers

¿Cuál es la función de un compilador?

<p>Traducir el código fuente a código máquina. (B)</p> Signup and view all the answers

¿Qué sucede durante la fase de enlazado en el proceso de compilación?

<p>Se vinculan el código objeto con librerías externas. (C)</p> Signup and view all the answers

¿Qué es un intérprete en el contexto de la traducción de código?

<p>Un programa que traduce código fuente línea a línea. (D)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones sobre el código objeto es correcta?

<p>Es el resultado de la traducción del código fuente realizado por un compilador. (B)</p> Signup and view all the answers

¿Por qué es necesario que un compilador se instale en cada máquina que quiera compilar un programa?

<p>Porque el compilador depende de la arquitectura hardware de la máquina. (D)</p> Signup and view all the answers

¿Cuál es la diferencia principal entre compilación e interpretación?

<p>La compilación transforma el código a código máquina antes de ejecutarlo. (C)</p> Signup and view all the answers

¿Qué es una librería en el contexto de un programa?

<p>Código externo que se incluye para aportar funcionalidades al programa. (C)</p> Signup and view all the answers

¿Cuál es el propósito principal del mantenimiento de software?

<p>Proceder con correcciones en la aplicación (D)</p> Signup and view all the answers

¿Qué documento es vital para entender cómo usar la aplicación final?

<p>Manual de usuario (A)</p> Signup and view all the answers

En qué momento se considera que un software ha llegado al final de su vida útil?

<p>Cuando ya no resulta rentable mantenerlo (D)</p> Signup and view all the answers

¿Qué acción se debe llevar a cabo al documentar las operaciones de mantenimiento?

<p>Registrar los cambios realizados (A)</p> Signup and view all the answers

¿Qué tipo de documentación está dirigida específicamente a los técnicos?

<p>Manual técnico (A)</p> Signup and view all the answers

¿Cuál de las siguientes afirmaciones sobre la explotación del software es correcta?

<p>Se recogen errores para su análisis y corrección (B)</p> Signup and view all the answers

¿Qué se debe hacer al llegar al final de la vida útil del software?

<p>Comprar o desarrollar un nuevo software (D)</p> Signup and view all the answers

¿Qué fase es crucial para identificar nuevas necesidades del software?

<p>Explotación (B)</p> Signup and view all the answers

Flashcards

¿Qué es una aplicación informática?

Un conjunto de instrucciones que indican al ordenador qué hacer. Se desarrolla usando un lenguaje de programación.

Programa

Conjunto de pasos o instrucciones que le dicen al ordenador cómo realizar un proceso.

Ejecutar un programa

Iniciarlo y ponerlo en funcionamiento.

Librería

Conjunto de programas y funciones que realizan tareas específicas (bases de datos, informes, etc.).

Signup and view all the flashcards

Software (intangible)

Instrucciones lógicas (no físicas) para el ordenador.

Signup and view all the flashcards

Software a medida

Aplicaciones diseñadas especialmente para necesidades concretas.

Signup and view all the flashcards

Software estándar

Aplicaciones ya hechas y listas para usar.

Signup and view all the flashcards

Lenguaje de programación

Idioma usado por los programadores para crear instrucciones.

Signup and view all the flashcards

Lenguaje de programación

Lenguaje artificial creado por programadores para traducir instrucciones de un programa a código entendible por la computadora.

Signup and view all the flashcards

Lenguaje máquina

Lenguaje entendible solo por la computadora, basado en 0 y 1 (código binario).

Signup and view all the flashcards

Programa

Conjunto de instrucciones escritas en un lenguaje de programación para realizar una tarea.

Signup and view all the flashcards

Instrucción

Cada orden o sentencia dentro de un programa.

Signup and view all the flashcards

Palabra reservada

Símbolo clave dentro de un lenguaje de programación con significado especial.

Signup and view all the flashcards

Semántica

Reglas que definen cómo combinar los símbolos en un lenguaje de programación para lograr un propósito.

Signup and view all the flashcards

Lenguaje de alto nivel

Lenguaje de programación más cercano al lenguaje humano, más fácil de leer y escribir que el lenguaje máquina.

Signup and view all the flashcards

Tipos de lenguajes de programación

Variedad de lenguajes, desde lenguaje máquina hasta lenguajes de alto nivel (como C++, Java, Python, etc.).

Signup and view all the flashcards

Código fuente

Código de un programa escrito por un programador en un lenguaje de programación.

Signup and view all the flashcards

Compilar

Proceso que traduce el código fuente en código objeto, comprensible por la computadora.

Signup and view all the flashcards

Código objeto

Código máquina generado tras la compilación del código fuente.

Signup and view all the flashcards

Librería

Código externo que se incluye al programa para proporcionar funcionalidad adicional.

Signup and view all the flashcards

Archivo ejecutable

Programa ejecutable que puede ser ejecutado en el ordenador, incluyendo librerías enlazadas.

Signup and view all the flashcards

Interpretación de código

Un intérprete traduce el código fuente línea a línea, mientras se ejecuta el programa.

Signup and view all the flashcards

Compilador

Traduce código fuente a código máquina.

Signup and view all the flashcards

Preprocesado (compilación)

Fase de la compilación que traduce y ejecuta comandos de preprocesamiento.

Signup and view all the flashcards

Traductor de código

Un programa que convierte código de alto nivel (como Python o Java) a código de bajo nivel (ensamblador o máquina), para que la computadora pueda ejecutarlo.

Signup and view all the flashcards

Lenguaje Compilado

Un lenguaje de programación que necesita un compilador para traducir el código fuente a código máquina antes de la ejecución.

Signup and view all the flashcards

Lenguaje Interpretado

Un lenguaje de programación en el que cada línea de código se traduce y ejecuta de inmediato por un intérprete.

Signup and view all the flashcards

Lenguaje Virtual

Un tipo de lenguaje de programación que genera un código intermedio (bytecode) que una máquina virtual ejecuta en diferentes sistemas operativos.

Signup and view all the flashcards

Compilador

Un programa que traduce código fuente de alto nivel a código objeto o código máquina.

Signup and view all the flashcards

Código Objeto

El código resultante de la compilación, que aún no es ejecutable directamente por la computadora.

Signup and view all the flashcards

Código Máquina

El código binario que la computadora puede ejecutar directamente.

Signup and view all the flashcards

Intérprete

Un programa que ejecuta un lenguaje interpretado línea por línea, traduciéndolo y ejecutándolo al momento.

Signup and view all the flashcards

Compilación de código

Proceso de convertir código fuente (leíble por humanos) a código objeto (leíble por la máquina).

Signup and view all the flashcards

Código fuente

Instrucción escrita por los programadores, que es legible por el ser humano.

Signup and view all the flashcards

Código objeto

Código resultante de la compilación, listo para ser procesado por la computadora.

Signup and view all the flashcards

Fase inicial (desarrollo)

Etapa inicial del desarrollo de una aplicación que incluye planificación y estimación de costes.

Signup and view all the flashcards

Análisis (desarrollo)

Fase del desarrollo de software en la que se definen las necesidades del usuario y el alcance del proyecto.

Signup and view all the flashcards

Diseño (desarrollo)

Fase de desarrollo en la que se crean los modelos y especificaciones del programa.

Signup and view all the flashcards

Fases de desarrollo (software)

Conjunto de pasos (inicial, análisis, diseño, implementación, etc) que componen el desarrollo de una aplicación.

Signup and view all the flashcards

Metodologías ágiles

Enfoque de desarrollo de software que prioriza la adaptación y la entrega frecuente de versiones funcionales.

Signup and view all the flashcards

Mantenimiento de software

Proceso de corrección de errores, mejoras y ajustes en un programa después de su lanzamiento.

Signup and view all the flashcards

Documentación técnica

Información detallada sobre cómo funciona un programa, incluyendo instalación, operación e instrucciones.

Signup and view all the flashcards

Fase de retirada (software)

Etapa donde se deja de usar y mantener un programa por no ser rentable.

Signup and view all the flashcards

Manual de usuario

Guía que explica cómo usar el software a los usuarios comunes.

Signup and view all the flashcards

Explotación de software

Fase donde el software se usa diariamente y se recopilan errores para corregirlos.

Signup and view all the flashcards

Manual técnico

Guía detallada sobre el software para desarrolladores y administradores.

Signup and view all the flashcards

Ciclo de vida del software

Etapas que abarca el desarrollo, uso y finalización de una aplicación.

Signup and view all the flashcards

Documentación vital

La documentación es esencial para entender y usar el software.

Signup and view all the flashcards

Study Notes

UA1: Desarrollo de Software

  • El curso se titula "Entornos de Desarrollo - 1°DAM"
  • El autor es Luis del Moral Martínez
  • La versión del material es 21.02
  • El material está bajo licencia CC BY-NC-SA 4.0

Contenidos del Tema

  • Introducción:
    • Se presenta un mapa conceptual del tema
    • Se define un sistema informático
    • Se define software
  • Programas y Aplicaciones Informáticas:
    • Se define una aplicación informática
    • Se distingue entre software a medida y estándar
  • Lenguajes de Programación:
    • Se define un lenguaje de programación
    • Se describen los diferentes tipos de lenguajes de programación
    • Se describen los paradigmas de programación
  • El proceso de traducción/compilación:
    • Se describen los traductores de código
    • Se explica la interpretación de código
    • Se explica la compilación de código
  • Desarrollo de una aplicación:
    • Se describen las fases del desarrollo de una aplicación
    • Se describe la documentación
    • Se describen los roles en el desarrollo de software
    • Se describen los paradigmas de desarrollo clásicos
    • Se describen las metodologías ágiles

1. Introducción

  • 1.2 ¿Qué es un ordenador?:
    • Los primeros ordenadores surgieron en la década de 1940.
    • Un ordenador procesa datos de entrada para generar salidas (resultados)
    • Se compone de hardware y software
    • Las instrucciones del usuario son traducidas para que el ordenador las comprenda
    • Se presenta un diagrama de un ordenador con sus componentes
    • Se muestran ejemplos históricos de ordenadores (Máquina analítica de Babbage, ENIAC, IBM Mainframe 701, IBM PC, HP Pavilion x2).
  • 1.3 ¿Qué es el software?:
    • Es la parte intangible (lógica) de un sistema informático.
    • Está diseñado para realizar tareas específicas.
    • Permite comunicarse con el hardware para ejecutar instrucciones de los usuarios.
    • El término fue acuñado por Charles Babbage en el siglo XIX.
    • Alan Turing contribuyó a su desarrollo
    • Se presentan las características clave del software

2. Programas y aplicaciones informáticas

  • 2.1 ¿Qué es una aplicación informática?:
    • Conjunto de instrucciones que indican al ordenador cómo realizar un proceso
    • Usa lenguajes de programación
    • Se describe como una aplicación le indica al ordenador qué pasos seguir
    • El ordenador notifica al usuario cuando no comprende una instrucción.
    • Se muestra ejemplos de algunas aplicaciones informáticas(Sistemas operativos, Aplicaciones de contabilidad y ofimática, Aplicaciones de gestión de bases de datos, Aplicaciones de diseño gráfico, Aplicaciones de correo electrónico, Sistemas de mensajería, Videojuegos))
  • 2.2 Software a medida vs. estándar:
    • Software a medida: Desarrollado según las necesidades específicas de un cliente o empresa, Se adapta a la actividad del cliente, suele ser más costoso.
    • Software estándar: Software genérico para diferentes clientes. Fácil de configurar o actualizar, suele ser más económico que el software a medida.
    • Se presentan las características de cada uno.

3. Lenguajes de programación

  • 3.1 ¿Qué es un lenguaje de programación?:
    • Es un lenguaje artificial creado para programadores, traducido por el ordenador
    • Es más complejo que el lenguaje máquina (01010101)
    • Se componen de símbolos (sintaxis) y reglas (semántica),
  • 3.2 Tipos de lenguajes de programación:
    • Lenguaje máquina: Ininteligible para los seres humanos, el ordenador lo entiende directamente (01010101).
    • Lenguaje de medio nivel (ensamblador): Más amigable, usando mnemotécnicos. Se centra en el hardware. Se necesitan compilar.
    • Lenguaje de alto nivel: Más cercano a los lenguajes humanos (IF, WHILE, DO...). Usan variables, funciones. Hay muchos lenguajes (Fortran, Cobol, Pascal, C, C++, Visual Basic, C#, Java, JavaScript, PHP, Python...).
    • Se muestran ejemplos de varios lenguajes (C++, Java, JavaScript, Python, PHP).
  • 3.3 Paradigmas de programación:
    • Programación estructurada o imperativa:
      • Secuencia ordenada de instrucciones
      • Lógica fácil de comprender.
      • Programas sencillos, rápidos.
      • Inconveniente: crecimiento inmanejable si el programa se hace demasiado grande
    • Programación funcional:
      • Se descompone en módulos o funciones.
      • Programa modular y estructurado.
      • Posibles inconvenientes: crecimiento inmanejable de los proyectos
    • Programación orientada a objetos:
      • Representación de entidades del mundo real
      • Reutilización de código
      • Principio de separación de responsabilidades (MVC)
      • Polimorfismo, herencia, encapsulación
    • Programación lógica:
      • Representación predicados y relaciones.
      • Utiliza lógica de predicados de primer orden.
      • Aplicaciones de inteligencia artificial.

4. El proceso de traducción/compilación

  • 4.1 Traductores de código: Traducen de alto nivel a lenguaje de máquina.
    • Lenguajes compilados: Se traduce todo el código antes de ejecutarlo, traduce una vez y se ejecuta muchas.
    • Lenguajes interpretados: Se traduce y ejecuta línea por línea
    • Lenguajes virtuales: Más portables y versátiles, pero más lentos. Se traduce a un código intermedio (bytecode) para ser interpretado por una máquina virtual.
  • 4.2 Interpretación de código: Traduce el programa linea por linea; el programa tiene que estar en memoria.
  • 4.3 Compilación de código: Traduce el código fuente a código objeto, y éste a código máquina para ser ejecutado por el ordenador
    • Se describen las fases (preprocesado, generación de código intermedio, ensamblador, enlazado) del proceso de compilación

5 Desarrollo de una aplicación

  • 5.1 Fases del desarrollo de una aplicación:
    • Fase inicial: Planificación de proyecto, estimación de costos (viabilidad).
    • Análisis: Analizar el problema, requisitos del cliente. (recopilar, examinar y formular requisitos del cliente mediante entrevistas, analisis restricciones y otros documentos).
    • Diseño: Determinar la arquitectura de la aplicación. (subconjuntos de la aplicación, documentos técnicos). Involucra analistas y jefes de proyecto.
    • Implementación: Desarrollo del programa. (uso de lenguajes, librerías, frameworks; documentación detallada del código fuente).
    • Pruebas: Garantizar que la aplicación funciona según las especificaciones. (pruebas funcionales y estructurales).
    • Explotación: Se instala el software en el entorno real. (Se realiza mantenimiento ante el uso cotidiano, nuevas necesidades e incidencias).
    • Mantenimiento: Se realizan procedimientos correctivos para mejorar los errores. (Documentación de los cambios, revisando cada falla).
    • Retirada: El ciclo termina cuando el software ya no se utiliza. (decisiones si se compra nueva, o se programa una nueva).
  • 5.2 Documentación:
    • Manual de usuario
    • Manual técnico
    • Manual de instalación
  • 5.3 Roles del desarrollo de software:
    • Arquitecto: Define la estructura del proyecto, tecnologías, frameworks.
    • Jefe de proyecto: Dirige el equipo, controla el tiempo y las relaciones con el cliente.
    • Analista: Realiza estudios del problema, el análisis y el diseño del sistema.
    • Analista programador: Analiza el problema, diseña el sistema y programa.
    • Programador: Codifica y prueba los módulos de la aplicación.
  • 5.4 Paradigmas de desarrollo clásicos: Describe el modelo en cascada (fases secuenciales e inflexibles).
  • 5.5 Metodologías ágiles: Describe metodologías más flexibles ante cambios, (manifiesta ágil, y sus valores).

Información complementaria

  • Enlaces a videos y documentos relacionados con el tema.

Créditos de las imágenes y figuras

  • Se detallan fuentes de las imágenes y figuras utilizadas. (iconos y diagramas).

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Untitled Quiz
6 questions

Untitled Quiz

AdoredHealing avatar
AdoredHealing
Untitled Quiz
37 questions

Untitled Quiz

WellReceivedSquirrel7948 avatar
WellReceivedSquirrel7948
Untitled Quiz
18 questions

Untitled Quiz

RighteousIguana avatar
RighteousIguana
Untitled Quiz
48 questions

Untitled Quiz

StraightforwardStatueOfLiberty avatar
StraightforwardStatueOfLiberty
Use Quizgecko on...
Browser
Browser