Местоположение файлов DCU
Что касается DCU, являющихся выходом процесса компиляции, вы должны указать выходной каталог DCU в каждом файле проекта.Значение по умолчанию для этого в последней версии Delphi будет хорошо: .\$(Platform)\$(Config)
.Это приводит к появлению подпапок в каталоге проекта, например: Win32\DEBUG
или Win64\RELEASE
.
Если вы настраиваете файлы проекта, используя наборы параметров, вы сможете управлять этим параметром (и всемидругие) из небольшого числа файлов опций.
Местоположение стороннего кода
В качестве кода всегда следует использовать стороннюю библиотеку.Если продавец платит больше за получение библиотеки в виде кода, заплатите.После этого вы просто включаете исходный код в свою систему контроля версий (VCS) и относитесь к нему в основном так же, как и к своему собственному коду.Я говорю в основном потому, что вам следует избегать его изменения.
Как только вы получите весь свой код в VCS, вы можете поместить весь исходный код на новую машину с помощью одной операции проверки.
Организация ваших проектов
У меня лично есть сильное отвращение к использованию путей поиска компилятора.Я не использую их и включаю все единицы, которые требуются в проекте, в файл .dpr.
Если вы используете пути поиска, вы лишаете возможности работать с вариантами проектов. Так, например, предположим,у вас есть клиент, который обнаружил ошибку в версии программного обеспечения, выпущенной 2 года назад.Вы хотели бы устранить эту ошибку, выпустив обновление до двухлетней версии программного обеспечения.Вполне вероятно, что просить их обновить до последней версии не имеет смысла.Возможно, они не заплатили за обновления.Возможно, полное обновление имеет серьезные изменения, которые они не хотят предпринимать прямо сейчас.Прекрасным примером были бы все разработчики Delphi, все еще использующие Delphi 7.
Теперь, мотивировав сценарий, как бы вы создали среду сборки для двухлетнего проекта?Если вы используете пути поиска, то они будут ссылаться на сегодняшние библиотеки.Вы будете вынуждены изменить свой путь поиска или скопировать старые библиотеки поверх современных библиотек.
Вся эта головная боль тривиальна, если не использовать пути поиска и включить весь свой источник в VCS..
То, к чему вы должны стремиться, - это иметь возможность извлекать любую историческую версию вашей программы и немедленно создавать ее.Вы должны быть в состоянии сделать это с полной уверенностью в том, что вы создаете программное обеспечение, идентичное тому, которое было создано на момент выпуска этой версии.Это также требует от вас автоматизации сборки, но я не могу представить, что вам не хватает этого для проекта такого размера.