Compilação de software - Software build

No desenvolvimento de software , uma construção é o processo de conversão de arquivos de código-fonte em artefatos de software autônomos que podem ser executados em um computador ou o resultado disso.

Funções

A construção de software é um processo de ponta a ponta que envolve muitas funções distintas. Algumas dessas funções são descritas a seguir.

Controle de versão

A função de controle de versão realiza atividades como criação e atualização do espaço de trabalho, definição de linha de base e relatórios. Ele cria um ambiente para o processo de construção ser executado e captura metadados sobre as entradas e saídas do processo de construção para garantir repetibilidade e confiabilidade.

Ferramentas como Git , AccuRev ou StarTeam ajudam nessas tarefas, oferecendo ferramentas para marcar pontos específicos na história como sendo importantes e muito mais.

Qualidade do código

Também conhecida como análise estática de programa / análise estática de código, essa função é responsável por verificar se os desenvolvedores aderiram aos sete eixos da qualidade do código: comentários, testes de unidade, duplicação, complexidade, regras de codificação, possíveis bugs e arquitetura e design.

Garantir que um projeto tenha código de alta qualidade resulta em menos bugs e influencia os requisitos não funcionais, como capacidade de manutenção, extensibilidade e legibilidade, que têm um impacto direto no ROI de um negócio.

Compilação

Este é apenas um pequeno recurso de gerenciamento do processo de construção. A função de compilação transforma os arquivos de origem em objetos diretamente executáveis ​​ou intermediários. Nem todo projeto exigirá essa função.

Enquanto para programas simples, o processo consiste em um único arquivo sendo compilado , para software complexo o código-fonte pode consistir em muitos arquivos e pode ser combinado de diferentes maneiras para produzir muitas versões diferentes.


Ferramentas de construção

O processo de construção de um programa de computador geralmente é gerenciado por uma ferramenta de construção , um programa que coordena e controla outros programas. Exemplos de tal programa são make , Gradle , Meister da OpenMake Software , Ant , Maven , Rake , SCons e Phing . O utilitário de construção geralmente precisa compilar os vários arquivos, na ordem correta. Se o código-fonte de um arquivo específico não foi alterado, ele pode não precisar ser recompilado ("não pode" em vez de "não precisa" porque ele próprio pode depender de outros arquivos que foram alterados). Os utilitários de compilação sofisticados e os vinculadores tentam evitar recompilar o código que não precisa dele, para reduzir o tempo necessário para concluir a compilação. Um processo mais complexo pode envolver outros programas que produzem código ou dados como parte do processo de construção e do software.

Veja também

Referências