Абсолютный путь относителен
Вы не знаете, на какой операционной системе будет работать ваше приложение. И в какую папку сложат ваш проект. Вы можете работать на макос, ваш коллега пишет на винде, а в продакшн запустят на убунте.
Необходимо надежно получать путь к файлу для чтения / записи, независимо от платформы и места хранения.
Нельзя указать просто захардкоженный абсолютный путь к файлу, просто потому что на всех ОС будет разный корень, не говоря уже о разных именах пользователя. Вам нужно знать путь к файлу и путь к корню, откуда вы работаете.
Вы не сможете использовать абсолютный путь к файлу в хранилище, так как не знаете корень хранилища заранее. К примеру, у вас может быть отдельно бакет S3 и отдельно путь к файлу. И только при обращении вы будете склеивать полный путь.
Абсолютный путь тоже строится относительно. Вы можете быть уверены, что файлы вашего проекта будут расположены именно в таком виде на любой ОС. Поэтому вы выбираете файл внутри вашего проекта, относительно которого вы будете строить абсолютный путь. Например, это файл, где вы читаете конфигурацию. Берете путь к файлу, через него получаете путь к корню вашего проекта, и уже относительно этого значения строите абсолютные пути.
И да, вот эти абсолютные пути, построенные относительно корня проекта, удобнее и надежнее, чем обычные относительные пути.
0 комментариев