Go не имеет ни подкаталогов, ни подпакетов. Пакеты отделены друг от друга. Путь импорта "foo/utils"
- это просто путь импорта (метод , как найти пакет ) - строка "foo/utils"
не имеет никакого значения, кроме расположения пакета на локальном диске или в Интернете.
foo
не может получить доступ к закрытым членам foo/utils
.
В Go1 каждый каталог в дереве исходных текстов соответствует одному пакету. Подробнее об этом можно узнать здесь: команда go .