суббота, 2 марта 2019 г.

Go Code Review Comments: пустой импорт, импорт точки

Пустой импорт

Пакеты, которые импортируются только для их побочных эффектов (с использованием синтаксиса import _ "pkg"), следует импортировать только в основной пакет программы или в тесты, которые в них нуждаются.

Импорт точки

import . форма может быть полезна в тестах, которые из-за циклических зависимостей не могут быть частью тестируемого пакета:

package foo_test

import (
    "bar/testutil" // также испортирует "foo"
    . "foo"
)

В этом случае тестовый файл не может быть в пакете foo, поскольку он использует bar/testutil, который импортирует foo. Поэтому мы используем import . форму, позволяющую файлу претендовать на то, чтобы быть частью пакета foo, хотя это не так. За исключением этого случая, не используйте import . в ваших программах. Это делает программы намного труднее для чтения, потому что неясно, является ли имя, такое как Quux, идентификатором верхнего уровня в текущем пакете или в импортированном пакете.


Читайте также:


Комментариев нет:

Отправить комментарий