Creación de software

Conversión de archivos de código fuente en artefactos de software independientes

En el desarrollo de software , una compilación es el proceso de convertir archivos de código fuente en artefactos de software independientes que se pueden ejecutar en una computadora, o el resultado de hacerlo. [1]

Funciones

La creación de software es un proceso integral que implica muchas funciones diferentes. Algunas de estas funciones se describen a continuación.

Control de versiones

La función de control de versiones lleva a cabo actividades como la creación y actualización de espacios de trabajo, la creación de líneas de base y la generación de informes. Crea un entorno en el que se ejecuta el proceso de compilación y captura metadatos sobre las entradas y salidas del proceso de compilación para garantizar la repetibilidad y la confiabilidad.

Herramientas como Git , AccuRev o StarTeam ayudan con estas tareas al ofrecer herramientas para etiquetar puntos específicos del historial como importantes, y más.

Calidad del código

También conocida como análisis de programa estático/análisis de código estático, esta función es responsable de verificar que los desarrolladores hayan respetado los siete ejes de calidad del código: comentarios, pruebas unitarias, duplicación, complejidad, reglas de codificación, errores potenciales y arquitectura y diseño. [2]

Asegurarse de que un proyecto tenga un código de alta calidad da como resultado menos errores e influye en requisitos no funcionales como la capacidad de mantenimiento, la extensibilidad y la legibilidad; que tienen un impacto directo en el ROI de una empresa. [3]

Compilación

Esta es solo una pequeña característica de la gestión del proceso de compilación. La función de compilación convierte los archivos fuente en objetos intermedios o directamente ejecutables. No todos los proyectos requerirán esta función.

Mientras que para programas simples el proceso consiste en compilar un solo archivo , para software complejo el código fuente puede constar de muchos archivos y combinarse de diferentes maneras para producir muchas versiones diferentes.

Enlace

Una ilustración del proceso de vinculación. Los archivos de objetos y las bibliotecas estáticas se ensamblan en una nueva biblioteca o ejecutable.

En informática , un enlazador o editor de enlaces es un programa de sistema informático que toma uno o más archivos de objeto (generados por un compilador o un ensamblador ) y los combina en un único archivo ejecutable , archivo de biblioteca u otro archivo "objeto".

Una versión más simple que escribe su salida directamente en la memoria se llama cargador , aunque la carga generalmente se considera un proceso separado. [4] [5]

Herramientas de construcción

El proceso de creación de un programa informático suele estar gestionado por una herramienta de creación , un programa que coordina y controla otros programas. Algunos ejemplos de este tipo de programas son make , Gradle , Ant , Maven , Rake , SCons y Phing. La utilidad de creación normalmente necesita compilar los distintos archivos en el orden correcto. Si el código fuente de un archivo concreto no ha cambiado, puede que no sea necesario volver a compilarlo ("puede que no" en lugar de "no es necesario" porque puede que dependa de otros archivos que hayan cambiado). Las utilidades de creación y los enlazadores sofisticados intentan abstenerse de volver a compilar el código que no lo necesita, para acortar el tiempo necesario para completar la creación. Un proceso más complejo puede implicar que otros programas produzcan código o datos como parte del proceso de creación y del software.

Véase también

Referencias

  1. ^ "¿Qué es Build?". Techopedia . Consultado el 4 de abril de 2020 .
  2. ^ "Software SonarQube™" . Consultado el 4 de enero de 2014 .
  3. ^ Muschko, Benjamin. Gradle en acción . Manning Pubns Co. ISBN 9781617291302.
  4. ^ Editor y cargador de enlaces de IBM OS (PDF) . IBM Corporation . 1972. Archivado (PDF) desde el original el 6 de marzo de 2020 . Consultado el 7 de marzo de 2020 .
  5. ^ Barron, David William (1978) [1971, 1969]. "5.7. Editores y consolidadores de enlaces". Escrito en la Universidad de Southampton , Southampton, Reino Unido. En Floretin, J. John (ed.). Ensambladores y cargadores . Monografías informáticas (3.ª ed.). Nueva York, EE. UU.: Elsevier North-Holland Inc., págs. 65-66. ISBN 0-444-19462-2.LCCN 78-19961  .(xii+100 páginas)
Obtenido de "https://es.wikipedia.org/w/index.php?title=Compilación_de_software&oldid=1219291236"