Parte 2 - Tema 6 Flashcards

Entornos de desarrollo integrados

1
Q

¿Qué es un IDE?

A

n IDE es una aplicación de software que proporciona un entorno completo para desarrollar software. Combina un editor de código, herramientas de construcción, depurador y otras utilidades en una sola interfaz.

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

¿Cuáles son las principales características de un IDE?

A
  • Editor de código con resaltado de sintaxis, autocompletado y refactorización.
  • Compilador o intérprete integrado.
  • Depurador para encontrar y corregir errores.
  • Herramientas de control de versiones (Git, SVN).
  • Integración con sistemas de construcción (Make, Ant).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Ventajas de Utilizar un IDE

A
  • Aumento de la productividad: Automatiza tareas repetitivas y proporciona herramientas para escribir código más rápido y con menos errores.
  • Facilidad de uso: Ofrece una interfaz unificada para todas las herramientas de desarrollo.
  • Mejora de la calidad del código: Ayuda a escribir código más limpio y consistente gracias a las funciones de refactorización y análisis de código.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Componentes Clave de un IDE

A
  • Editor de código: Permite escribir, editar y navegar por el código fuente.
  • Depurador: Ayuda a identificar y corregir errores en el código.
  • Compilador o intérprete: Convierte el código fuente en código máquina o bytecode.
  • Explorador de proyectos: Organiza los archivos y carpetas del proyecto.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué es un Sistema de Gestión de Código Fuente (SGCS)?

A

Un SGCS es una herramienta que permite a los desarrolladores rastrear y controlar los cambios en el código fuente a lo largo del tiempo. Facilita la colaboración en equipos y ayuda a gestionar múltiples versiones de un proyecto.

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

¿Cuáles son los componentes principales de un SGCS?

A
  • Repositorio: Un almacén central donde se guarda todo el código fuente.
  • Versiones: Diferentes estados del código a lo largo del tiempo.
  • Ramas: Copias independientes de una base de código que permiten trabajar en diferentes funcionalidades sin afectar el código principal.
  • Commits: Cambios individuales realizados al código.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Ventajas de Utilizar un SGCS

A
  • Colaboración: Permite a múltiples desarrolladores trabajar en el mismo proyecto de forma simultánea.
  • Historial de cambios: Guarda un registro completo de todos los cambios realizados, facilitando la auditoría y la recuperación de versiones anteriores.
  • Control de versiones: Permite gestionar diferentes versiones del código y combinar cambios de forma segura.
  • Resolución de conflictos: Ayuda a resolver conflictos cuando múltiples desarrolladores modifican el mismo archivo.
  • Backup: Actúa como una copia de seguridad del código fuente.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Cuáles son los SGCS más utilizados?

A
  • Git: El SGCS más popular, distribuido y utilizado en la mayoría de los proyectos de código abierto.
  • Subversion (SVN): Un SGCS centralizado, más antiguo pero aún ampliamente utilizado.
  • Mercurial: Otro SGCS distribuido, similar a Git.
  • Perforce: Un SGCS escalable diseñado para grandes equipos y proyectos.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Cuáles son algunos comandos básicos de Git?

A
  • git init: Inicializa un nuevo repositorio.
  • git clone: Clona un repositorio existente.
  • git add: Agrega cambios al área de preparación.
  • git commit: Guarda los cambios en el repositorio local.
  • git push: Envía los cambios al repositorio remoto.
  • git pull: Obtiene los cambios más recientes del repositorio remoto.
  • git branch: Crea, lista o elimina ramas.
  • git merge: Combina ramas.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué es la Integración Continua (CI)?

A

La CI es una práctica de desarrollo de software donde los desarrolladores integran su código con frecuencia en un repositorio compartido. Cada integración se verifica a través de una compilación automática para detectar errores lo antes posible.

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

¿Cuáles son los beneficios de la CI?

A

Detección temprana de errores, mejora de la calidad del código, reducción del tiempo de salida al mercado, mayor colaboración entre el equipo y menor riesgo de problemas en la integración.

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

¿Cuáles son las etapas típicas de un proceso de CI?

A
  • Desarrollador realiza cambios en el código.
  • Los cambios se envían al repositorio de código fuente.
  • Se activa un proceso de construcción automatizado.
  • Se ejecutan pruebas unitarias, de integración y otras pruebas automatizadas.
  • Si todas las pruebas pasan, se genera un artefacto (por ejemplo, un paquete o una imagen de contenedor).
  • El artefacto se despliega en un entorno de pruebas o producción.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Cuáles son algunas herramientas populares de CI?

A
  • Jenkins: Una herramienta de CI de código abierto altamente configurable y personalizable.
  • GitLab CI/CD: Integrado con GitLab, ofrece una solución completa para CI/CD.
  • CircleCI: Una plataforma de CI en la nube con una interfaz fácil de usar.
  • Travis CI: Una plataforma de CI en la nube enfocada en proyectos de código abierto.
  • Bamboo: Una solución de CI/CD empresarial ofrecida por Atlassian.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Qué componentes suelen incluirse en un pipeline de CI?

A
  • Etapa de construcción: Compilación del código fuente.
  • Etapa de pruebas: Ejecución de pruebas unitarias, de integración y otras pruebas automatizadas.
  • Etapa de empaquetado: Creación de artefactos para su despliegue.
  • Etapa de despliegue: Despliegue del artefacto en diferentes entornos (desarrollo, pruebas, producción).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Cuáles son algunas prácticas recomendadas para implementar CI?

A
  • Automatizar todo lo posible.
  • Mantener pruebas unitarias exhaustivas.
  • Integrar la CI con otros procesos como el control de versiones y la gestión de la configuración.
  • Monitorear continuamente el pipeline de CI.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly