# Начните отладку процесса установки как можно раньше

(В оригинале - Deploy Early and Often)

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

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

Если вы начнете проект с реализации процесса установки, это даст вам время на его естественную эволюцию вместе с развитием самого продукта. А также поменять код продукта с целью упростить процесс инсталляции, если потребуется. Тестирование процедуры установки в различных средах также подтвердит (или не подтвердит) то, что вы не сделали неправильных предположений о среде разработки или установки.

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

Если «готовность к установке» не кажется чем-то суперсложным, пока приложение запускается на компьютере разработчика, то на самом деле вам потребуется значительное количество времени и усилий, чтобы обеспечить бесперебойную работу приложения на любом другом компьютере «с нуля». Если вы не беретесь за создание инсталляции по причине «это просто и быстро, всегда успеется», то все равно сделайте это вначале, поскольку это быстро и просто. Если же этот процесс слишком сложен или слишком неопределен, то действуйте так же, как вы действуете с основным приложением: экспериментируйте, меняйте и переделывайте процесс установки по мере надобности.

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

Автор оригинала - [Steve Berczuk](http://programmer.97things.oreilly.com/wiki/index.php/Steve_Berczuk)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://97-things-every-x-should-know.gitbook.io/97-things-every-programmer-should-know/ru/thing_34.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
