Нейтральная сборка

редактировать

В разработке программного обеспечения нейтральная сборка - это сборка программного обеспечения, который отражает текущее состояние исходного кода, проверенного разработчиками в системе управления версиями исходного кода и выполненного в нейтральной среде (среда, не используемая для разработки).

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

Напротив, среды непрерывной интеграции автоматически перестраивают проект всякий раз, когда вносятся изменения - часто несколько раз в день - и обеспечивают более немедленную обратную связь; однако они не обязательно включают ночные сборки. В результате обновления компилятора и инструментов могут нарушить способность легко компилировать старые проекты без предупреждения. Тем не менее, методы CI считаются более современным подходом. Задания CI часто выполняются на изолированных виртуальных машинах и обычно включают автоматическое тестирование.

Когда кто-то говорит, что разработчик «сломал сборку», они фактически говорят, что разработчик проверил код, который вполне мог быть скомпилирован (и, надеюсь, также правильно) в их учетной записи, но не компилируется (и следовательно, не может быть запущен) в чужой учетной записи. Обычно это происходит из-за дополнительных специфических для разработчика изменений, которые либо не были зарегистрированы, либо (в случае переменных среды и т. Д.) Были модификациями систем, не находящихся под контролем версий. Один из наиболее распространенных случаев - это не забыть вернуть все измененные файлы, но забыть добавить вновь созданные файлы в репозиторий. Если другие разработчики проверяют новый код, не зная о проблеме, их работа может остановиться, пока они ждут, пока проблема не будет исправлена ​​(или попытаются исправить ее самостоятельно, что может быть еще более проблематичным, если несколько разработчиков попытаться исправить проблему одновременно). Это, естественно, может привести к значительной потере производительности.

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

Содержание
  • 1 Опасности
  • 2 Примеры с открытым исходным кодом
  • 3 См. Также
  • 4 Ссылки
Опасности

Некоторые препятствия для надежного нейтрального процесса сборки:

  • Получение согласованной системы автоматизации сборки и набора файлов управления проектом.
  • Наличие той же операционной системы и инструментов, что и на машинах для разработки.
  • Настройте процедуру оформления заказа, обеспечивающую актуальность всех файлов. Это может означать дополнительную задачу интеграции системы управления версиями с процессом.
  • Отделение процесса сборки от конкретных IDE.
  • Настройка адекватной обратной связи от системы сборки, чтобы эти неудачные сборки могут быть диагностированы.
  • Убедительное управление преимуществом автоматизированных сборок.
Примеры с открытым исходным кодом

В следующем списке приведены некоторые примеры программного обеспечения, которое общедоступно в ночное время и / или или нейтральные сборки.

  • CyanogenMod, пользовательское ПЗУ с открытым исходным кодом для устройств на базе Android.
  • Firefox, веб-браузер с открытым исходным кодом.
  • Media Player Classic - Домашний кинотеатр, медиаплеер с открытым исходным кодом.
  • Simutrans, транспортный симулятор с открытым исходным кодом.
  • медиаплеер VLC, медиаплеер с открытым исходным кодом.
  • WebKit, средство визуализации веб-браузера, используемое Apple Safari.
  • Arduino, Arduino представляет собой семейство одноплатных микроконтроллеров, предназначенных для упрощения создания интерактивных объектов или сред.
  • RetroArch, RetroArch - эмулятор для различных консолей, таких как PlayStation, NES, Game Boy и т. Д.
  • MuseScore, музыкальная нотация WYSIWYG, генерирует ночные сборки Linux в формате дистрибутива AppImage.
См. Также
Ссылки
Последняя правка сделана 2021-05-31 05:14:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте