Goでコレクションパッケージを作成しようとしていますが、インポートパスに問題があります。インポートパッケージのパスの問題
私はJava Collectionsインターフェイスをモデリングしています。ここに私のファイル構造は
+/$GOPATH
/bin
/pkg
/src
/github.com
/user
/collections
collections.go
main.go
/collections
/bstAvl
bstAvl.go
である私のcollections.goファイルは次のようになります。
私は必要なのインポートするにはどうすればよいCollections.go
でCollection
インタフェースを使用しようとしていますbstAvl.go
で
package collections
type Collection interface {
Add(interface{}) (bool, error)
AddAll(Collection) (bool, error)
Clear()
Contains(interface{}) (bool, error)
Remove(interface{}) (bool, error)
Size() uint
}
Collectionインターフェイスにアクセスするには?
私は道に迷ってしまったと思うかもしれませんが、おそらくそれはもっと複雑になりました。もっとシンプルな構造をお勧めしますか?
理想的には、すべてのコレクションをcollections
パッケージの下に置いてライブラリとしてエクスポートし、必要に応じて他のアプリケーションで使用できるようにすることが理想的です。
P.S私はStructuring applications in Go by Ben Johnsonを読みました。しかし、私はまだ混乱しています。どんな助けでも大歓迎です。
EDIT: 私はパッケージ構造をオーバーしたと思います。 Iこれに固執することを決めた:完全なパスを使用し、bstAvl.go内collections
をインポートするには
+/$GOPATH
/bin
/pkg
/src
/github.com
/user
/collections
collections.go
main.go
bstAvl.go