My External Storage

Oct 18, 2019 - 6 minute read - Comments - Go OSS

[Go] レイヤードアーキテクチャの階層構造を守らないimportを警告するlinterを作った

Goでクリーンアーキテクチャ等のレイヤードアーキテクチャを実装するための静的解析ツールを作った。
webhandlerパッケージからusecaseパッケージを使わずに直接domainパッケージを使わないで!」というような、やってほしくないimportをエラーにできる。

Oct 6, 2019 - 5 minute read - Comments - Go

[Go]imported and not usedエラー・declared and not usedエラーとの向き合いかた

先日の登壇資料ブコメでコメントいただいていたので私の考えを述べたいと思う。
結論から書くと、やはり「単純さや簡潔性を保つため」が動機になるのだと思う。
なお、このブログでは敬体は使わない方針なので、常体なのはご容赦願いたい。

そういや “imported and not used” “declared and not used” でコンパイル通らなくなるのはどういう哲学なんだろうこれ。

Sep 20, 2019 - 3 minute read - Comments - go

go mod tidyするとmodule ... found, but does not contain package ...エラーで失敗する

go mod tidyが次のようなのエラーで失敗するとき、エラーを解決するメモ。

$ go mod tidy
github.com/budougumi0617/til/go/tui/promptui imports
        github.com/manifoldco/promptui imports
        github.com/alecthomas/gometalinter imports
        gopkg.in/alecthomas/kingpin.v3-unstable imports
        github.com/nicksnyder/go-i18n/i18n: module github.com/nicksnyder/go-i18n@latest (v2.0.2+incompatible) found, but does not contain package github.com/nicksnyder/go-i18n/i18n