[Golang1.8] Genericsを活用してClean Architectureなリポジトリを作る
もしクリーンアーキテクチャって何?と思った方は、これを読む前にググったり、以下の記事を読んでほしい。
導入長く続いたGenericsがない時代、GolangでCAは無理もしくは向いていないという意見があった。というのも抽象的なインターフェースを定義するにはinterface{}型を使い、型チェックするようなコードを書くしかなかった。Golangは明示的な処理を書くのには向いていたが、抽象的な処理を書くには苦労が多かったように思う。とはいえ、Golangにはクラスベースオブジ