カテゴリ: Go言語 更新日: 2026/04/28

Go言語のgoimportsでインポート文を自動整理!初心者でも簡単に理解できる使い方

Go言語のgoimportsでインポート文を自動整理する例
Go言語のgoimportsでインポート文を自動整理する例

先生と生徒の会話形式で理解しよう

生徒

「Go言語でプログラムを書くと、インポート文がどんどん増えて整理が大変なんですけど、簡単に整理する方法はありますか?」

先生

「はい、Go言語にはgoimportsという便利なツールがあります。これは、使っていないインポートを自動で削除したり、必要なパッケージを追加してくれるツールです。」

生徒

「自動で追加までしてくれるんですか?便利そうですね。どうやって使うんですか?」

先生

「それでは、基本的な使い方を見ていきましょう!」

1. goimportsとは何か?

1. goimportsとは何か?
1. goimportsとは何か?

Go言語のgoimportsは、プログラムを書いているときに発生するインポート文の管理を自動化するツールです。プログラムで使っていないパッケージを削除したり、必要なパッケージを自動で追加します。これにより、コードがすっきりし、エラーも減らすことができます。

2. goimportsのインストール方法

2. goimportsのインストール方法
2. goimportsのインストール方法

まずはgoimportsをインストールしましょう。Go言語の環境が整っている場合は、以下のコマンドをターミナルで実行します。


go install golang.org/x/tools/cmd/goimports@latest

このコマンドを実行すると、GOPATH/bingoimportsがインストールされます。パスを通しておくとどこでも使えるようになります。

3. 基本的なgoimportsの使い方

3. 基本的なgoimportsの使い方
3. 基本的なgoimportsの使い方

使い方はとても簡単です。例えば、main.goというファイルがある場合、以下のコマンドでインポート文を整理できます。


goimports -w main.go

-wオプションはファイルを書き換えるオプションです。これを付けることで、保存と同時に不要なインポートを削除し、必要なものを追加してくれます。

4. 簡単なサンプルプログラムで試してみよう

4. 簡単なサンプルプログラムで試してみよう
4. 簡単なサンプルプログラムで試してみよう

まず、整理前のプログラムは以下の通りです。


package main

import (
    "fmt"
    "math"
    "strings"
)

func main() {
    fmt.Println("Hello Go!")
}

このプログラムではmathstringsは使っていません。goimportsで整理すると、使わないパッケージが削除されます。


goimports -w main.go

整理後のmain.goは次のようになります。


package main

import "fmt"

func main() {
    fmt.Println("Hello Go!")
}

5. goimportsで不足パッケージを自動追加

5. goimportsで不足パッケージを自動追加
5. goimportsで不足パッケージを自動追加

次に、プログラムでstringsを使ってみます。


package main

func main() {
    s := "hello go"
    upper := strings.ToUpper(s)
    fmt.Println(upper)
}

この状態ではstringsfmtのインポート文が書かれていません。goimportsを使うと自動で追加されます。


goimports -w main.go

整理後のファイルは以下の通りです。


package main

import (
    "fmt"
    "strings"
)

func main() {
    s := "hello go"
    upper := strings.ToUpper(s)
    fmt.Println(upper)
}

6. 複数ファイルをまとめて整理する方法

6. 複数ファイルをまとめて整理する方法
6. 複数ファイルをまとめて整理する方法

複数のGoファイルがあるプロジェクトでは、ディレクトリごとにgoimportsを使うと便利です。例えば、カレントディレクトリ配下の全ての.goファイルを整理する場合は次のコマンドです。


goimports -w .

このコマンドを実行すると、全てのGoファイルのインポート文が整理されます。手作業で修正する必要がなくなり、作業効率が大幅に向上します。

7. エディタとの連携でさらに便利に

7. エディタとの連携でさらに便利に
7. エディタとの連携でさらに便利に

Visual Studio CodeやGoLandなどのIDEでは、保存時にgoimportsを自動で実行する設定があります。これにより、プログラムを保存するだけでインポート文が整理されるので、初心者でも手軽に利用できます。


{
    "go.formatTool": "goimports",
    "editor.formatOnSave": true
}

この設定例はVisual Studio Codeで、保存時に自動でgoimportsが動作するようにしています。

8. まとめに向けたポイント

8. まとめに向けたポイント
8. まとめに向けたポイント

goimportsを使うと、インポート文の整理が自動でできるため、コードが見やすくなり、初心者でもエラーを減らせます。基本的には-wオプションを使い、IDEと連携することで、より効率的にGo言語の開発を進められます。

ポイントとしては、使わないパッケージを削除し、必要なパッケージを自動で追加することができる点、複数ファイルにも対応できる点、そしてIDEと連携してさらに作業効率が上がる点です。

Go言語を基礎からスッキリ学びたい人や、 文法だけでなく「実用的な使い方」まで押さえたい人には、 定番の入門書がこちらです。

基礎からわかるGo言語をAmazonで見る

※ Amazon広告リンク

まとめ

まとめ
まとめ

本記事では、Go言語におけるインポート文の整理を自動化する便利ツールであるgoimportsの使い方について詳しく解説しました。プログラムを書いていく中で、インポート文が増えすぎたり、不要なパッケージが残ってしまうことは初心者でも経験する悩みのひとつです。goimportsを活用することで、使っていないインポートの削除や、必要なパッケージの自動追加が可能となり、コードの可読性向上や開発効率の改善が期待できます。
具体的には、go install golang.org/x/tools/cmd/goimports@latestでツールをインストールし、goimports -w main.goのようにファイル単位で実行することにより、不要なインポートの削除と不足パッケージの追加を同時に行えます。また、プロジェクト全体の複数ファイルにも対応可能であり、goimports -w .のコマンドでディレクトリ配下の全てのGoファイルを整理できます。さらに、Visual Studio CodeやGoLandなどのIDEと連携することで、保存時に自動で整理されるため、日常的な開発作業の手間を大幅に削減できます。
本記事のサンプルコードを通じて、初心者の方でもすぐにgoimportsを導入し、Go言語のプログラミングにおけるインポート管理を効率化できることが理解できたはずです。使わないパッケージの削除や必要なパッケージの自動追加、複数ファイル対応、IDE連携のポイントを押さえることで、よりスマートにGo言語の開発が進められます。

先生と生徒の振り返り会話

生徒

「今日学んだgoimportsは、使わないパッケージを削除したり、自動で必要なパッケージを追加してくれるんですね。複数ファイルでも一括で整理できるのが便利です。」

先生

「その通りです。特に複数のGoファイルがあるプロジェクトでは、ディレクトリ単位で整理することで作業効率が格段に上がります。また、IDEと連携して保存時に自動で整理する設定をすると、初心者でも安心して使えます。」

生徒

「具体的にはVisual Studio Codeでは、go.formatToolgoimportsに設定して、editor.formatOnSaveをtrueにすればよいんですね。」

先生

「はい、そうです。この設定により、ファイルを保存するだけで不要なインポートを削除し、必要なパッケージを追加してくれます。コードが整理され、エラーも減るため、開発の効率化に直結します。」

生徒

「なるほど、手作業でインポートを管理する必要がなくなるのはかなり助かります。これなら初心者でも安心してGo言語の開発に集中できますね。」

先生

「その通りです。今回学んだgoimportsの基本的な使い方とポイントを押さえておけば、今後どのプロジェクトでも効率的にインポート文を整理できます。慣れてくると、Go言語の開発スピードも格段に上がります。」

生徒

「理解できました。これからはgoimportsを活用して、すっきりしたコードを書くようにします。」

関連セミナーのご案内

【超入門】ゼロから始めるGo言語プログラミング:最速で「動くアプリ」を作るマンツーマン指導

「プログラミングの仕組み」が根本からわかる。Go言語でバックエンド開発の第一歩を。

本講座を受講することで、単なる文法の暗記ではなく、「プログラムがコンピュータの中でどう動いているか」という本質的な理解につながります。シンプルながら強力なGo言語(Golang)を通じて、現代のバックエンドエンジニアに求められる基礎体力を最短距離で身につけます。

具体的な開発内容と環境

【つくるもの】
ターミナル(黒い画面)上で動作する「対話型計算プログラム」や、データを整理して表示する「ミニ・ツール」をゼロから作成します。自分の書いたコードが形になる感動を体験してください。

【開発環境】
プロの現場でシェアNo.1のVisual Studio Code (VS Code)を使用します。インストールから日本語化、Go言語用の拡張機能設定まで、現場基準の環境を一緒に構築します。

この60分で得られる3つの理解

1. 環境構築の完全な理解

「なぜ動くのか」という設定の仕組みを理解し、今後の独学で詰まらない土台を作ります。

2. Go言語の基本構造(変数・型)

データの種類やメモリの概念など、他言語にも通じるプログラミングの本質を学びます。

3. 読みやすいコードの書き方

ただ動くだけでなく、誰が見ても分かりやすい「綺麗なコード」を書くための考え方を伝授します。

※本講座は、将来的にバックエンドエンジニアクラウドインフラに興味がある未経験者のためのエントリー講座です。マンツーマン形式により、あなたの理解度に合わせて進行します。

セミナー画像

初めてのGo言語を一緒に学びましょう!

カテゴリの一覧へ
新着記事
New1
Kotlin
Kotlinのデリゲーション(byキーワード)の使い方とは?初心者向けにやさしく解説!
New2
Kotlin
Kotlinで定数を定義する方法!変更されない変数の書き方と命名ルール
New3
Kotlin
Kotlinの高階関数とは?関数を引数に渡す基本的な仕組み
New4
Kotlin
Kotlinのthis・superキーワードとは?意味と使い分けを初心者向けにわかりやすく解説
人気記事
No.1
Java&Spring記事人気No1
Kotlin
Android Studioのインストール手順と初期設定を初心者向けに完全解説!
No.2
Java&Spring記事人気No2
Go言語
Go言語の複数モジュールプロジェクト構成を完全解説!初心者でもわかるモジュール管理
No.3
Java&Spring記事人気No3
Swift
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.4
Java&Spring記事人気No4
Kotlin
Gradleファイル(build.gradle.kts)の書き方と役割をやさしく解説!Kotlin初心者向け完全ガイド
No.5
Java&Spring記事人気No5
Kotlin
Kotlin Multiplatformライブラリの活用例と導入方法を初心者向けに解説!Android・iOS・Webを1つのコードで開発
No.6
Java&Spring記事人気No6
Kotlin
Kotlinでテキスト表示・編集!初心者でもわかるTextViewとEditTextの使い方
No.7
Java&Spring記事人気No7
Kotlin
Kotlinの演算子一覧と使い方!算術・比較・論理演算子の基本を解説
No.8
Java&Spring記事人気No8
Kotlin
Kotlinのthis・superキーワードとは?意味と使い分けを初心者向けにわかりやすく解説