Введение

Преобразование файлов исходного кода в автономные программные артефакты
В разработке программного обеспечения сборка — это процесс преобразования файлов исходного кода в автономные программные артефакты, которые можно выполнить на компьютере, или результат этого процесса.

Функции

Создание программного обеспечения — это сквозной процесс, включающий множество различных функций. Некоторые из них описаны ниже.

Контроль версий

Функция контроля версий выполняет такие действия, как создание и обновление рабочей области, фиксация версий и отчетность. Она создает среду для выполнения процесса сборки и собирает метаданные о входных и выходных данных процесса сборки, чтобы обеспечить воспроизводимость и надежность. Инструменты, такие как Git, AccuRev или StarTeam, помогают в решении этих задач, предоставляя средства для маркировки определенных моментов истории как значимых и многое другое.

Качество кода

Также известная как статический анализ программы или статический анализ кода, эта функция отвечает за проверку соблюдения разработчиками семи аспектов качества кода: комментарии, модульные тесты, дублирование, сложность, правила кодирования, потенциальные ошибки и архитектура и проектирование. Обеспечение высокого качества кода в проекте приводит к уменьшению количества ошибок и влияет на нефункциональные требования, такие как поддерживаемость, расширяемость и читаемость, что напрямую сказывается на рентабельности инвестиций для бизнеса.

Сборник

Это лишь малая часть управления процессом сборки. Функция компиляции преобразует исходные файлы в непосредственно исполняемые или промежуточные объекты. Не всем проектам потребуется эта функция. Если для простых программ процесс состоит из компиляции одного файла, то для сложного программного обеспечения исходный код может состоять из множества файлов и комбинироваться различными способами для создания различных версий.

Создать инструменты

Процесс создания компьютерной программы обычно управляется инструментом сборки, программой, которая координирует и контролирует другие программы. Примерами таких программ являются make, Gradle, Ant, Maven, Rake, SCons и Phing. Утилита сборки обычно должна компилировать различные файлы в правильном порядке. Если исходный код в конкретном файле не изменился, то его, возможно, не потребуется перекомпилировать ("возможно, не потребуется", а не "не нужно", поскольку он сам может зависеть от других изменившихся файлов). Продвинутые утилиты сборки и компоновщики стремятся избегать перекомпиляции кода, который в этом не нуждается, чтобы сократить время, необходимое для завершения сборки. Более сложный процесс может включать в себя другие программы, генерирующие код или данные как часть процесса сборки и программного обеспечения.