私はちょっと遅れてプログラミングを行っていましたが、Effective Goスタイルのガイドラインに従おうとしていましたが、パッケージやインターフェイス、構造体に名前を付けるときに吃音を避けるのが難しいことがあります。goパッケージとstruct名に吃音を避ける方法はありますか?
例として、
は私がコンソールインタフェースにコンソール構造体や新機能を含むConsole.goファイルとコンソールパッケージを持っているかもしれません。
//console/Console.go
package console
type Console interface {
Print(s String)
}
type console struct {
....
}
func (c *console) Print(s String){
....
}
func New() Console{
return &console{}
}
今、私はこのどこかを使用するとき、私はどこにでもconsole.Console
タイプを使用して終了。私はパッケージに2つの以上の構造体を持っている場合
は、私は大きなほとんどフラットパッケージ構造を持つ気にしない con := console.NewConsole()
のようなものを終わるが、私は可能な限り整理自分のコードを維持したいです。私はIO.ReaderとIO.Writerのアイデアは大丈夫ですが、パッケージが同じものだがまだ分離する必要がある場合は何をするべきか。 は(はい、私は与えられた例はConsole.Writerことができることを認識していますが、完全に異なるその何かをふります)
だから私の質問は以下のとおりです。 このスタッター効果は私も心配すべきものですか? (すなわち、それは悪い形ですか?) 誰もそれを避けるためのヒントはありますか?
['sort.Interface'](https://golang.org/pkg/sort/#Interface)のように' Interface'という名前を付けて考えることができます。しかし、私は@Adrianに同意します。そして、コンストラクタが 'New'であり、' NewConsole'でないなら、あなたは大丈夫です –