**Проблема: ** в коде сайта "захардкожен" его адрес. Например, в коде crm на странице со ссылками на различные отчеты:
Подробный отчет о клиентах
Отчет оценки
Просроченные задачи
Что приводит к трудностям при развертывании этого кода на тестовом стенде с другим адресом. И даже хуже: можно ходить по тестовой crm и случайно попасть на продакшен и даже не заметить этого!
**Как нужно:**
Подробный отчет о клиентах
Отчет оценки
Просроченные задачи
То же будет касаться к остальному хардкоду: адреса REST-сервисов, баз данных, логины/пароли и.т.п. Такое лучше сохранять в файлах конфигурации.
Будьте осторожны! Не переусердствуйте с файлами конфигурации!
Следуя этому правилу, можно начать выносить в кофиги все: адреса внешних ресурсов, адрес локального интерфейса, порты на котором работает web-интерфейс, название продукта и.т.д. Это приведет к разрастанию файла конфигурации опциями, которые никогда не будут изменяться (или будут изменяться раз в несколько лет - а это дешевле будет сделать sed'ом) и повышением сложности и ухудшением читаемости кода! Соблюдайте баланс!
Упрощенное правило: лучше не создавать хардкод, если можно этого не делать (как в примере с html ссылками). Но если без конфига не обойтись - делайте опцию в конфиге только если ее придется часто изменять и это потребуется в ближайшую неделю (если это потребуется "когда-то позже" - возможно, это не потребуется никогда).
~~OWNERAPPROVE~~
/*Не удаляйте эту строку и ниже!*/
{(rater>id=1|name=Прочитал_правила_разработки:как_не_надо_делать:2018-11-19_вредный_хардкод|type=vote|trace=user|tracedetails=1)}