Skip to content

obutora/go_learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Tips 100

2.5.3 インターフェース汚染

インターフェースは作成するものでなく、発見されるべきもの 複雑性を上げるため、インターフェースは必要なときに作製されるべきである。

2.6 生産者側のインターフェース

インターフェースはどこにあるべきか?

  • 生産者側: 具体的な実装と同じパッケージにインターフェースが定義
  • 消費者側: 使われる外部のパッケージにインターフェースを定義

Goのベストプラクティスは、インターフェースを消費者側に定義することである。

コードの抽象化は発見されるべきであり、作成されるべきではない。 クライアントごとに異なるインターフェースを作成する可能性がある。 SOLIDのI(インターフェース分離の原則)「クライアントは自分が使わないメソッドに依存することを強いられるべきではない。」に従うことができる。

2.7 インターフェースを返すことはできる限り避けるべき

2.12 プロジェクトの構造

project layoutと呼ばれる構造がある。 批判的な意見もあり、これがすべてではないが、デフォルトとして知っておくのは良いものだと感じる

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published