前提条件

  • いくつかのプログラミング経験。 ここにあるコードは非常にシンプルですが、関数について何かを知っていると役立ちます。
  • コードを編集するためのツール。 お持ちのテキストエディタはどれでも問題ありません。ほとんどのテキストエディタはGoを良好にサポートしています。最も人気のあるものはVSCode(無料)、GoLand(有料)、Vim(無料)です。
  • コマンドターミナル。 GoはLinuxやMacの任意のターミナル、またはWindowsのPowerShellやcmdでうまく動作します。

Goのインストール

ただダウンロードとインストールの手順を使用してください。

コードを書く

Hello, Worldから始めましょう。

  • 1. コマンドプロンプトを開き、ホームディレクトリにcdします。
    LinuxまたはMacの場合:
    1. cd
    Windowsの場合:
    1. cd %HOMEPATH%
  • 2. 最初のGoソースコード用にhelloディレクトリを作成します。
    例えば、次のコマンドを使用します:
    1. mkdir hello
    2. cd hello
  • 3. コードの依存関係追跡を有効にします。
    コードが他のモジュールに含まれるパッケージをインポートするとき、これらの依存関係はコードのモジュールを通じて管理されます。そのモジュールは、これらのパッケージを提供するモジュールを追跡するgo.modファイルによって定義されます。そのgo.modファイルは、ソースコードリポジトリを含むコードと共に保持されます。
    コードの依存関係追跡を有効にするためにgo.modファイルを作成するには、go mod initコマンドを実行し、コードが含まれるモジュールの名前を指定します。この名前はモジュールのモジュールパスです。
    実際の開発では、モジュールパスは通常、ソースコードが保持されるリポジトリの場所になります。例えば、モジュールパスはgithub.com/mymoduleかもしれません。他の人が使用できるようにモジュールを公開する予定がある場合、モジュールパスはGoツールがモジュールをダウンロードできる場所でなければなりません。モジュールパスでのモジュールの命名についての詳細は、依存関係の管理を参照してください。
    このチュートリアルの目的のために、example/helloを使用してください。
    1. $ go mod init example/hello
    2. go: creating new go.mod: module example/hello
  • 4. テキストエディタでhello.goというファイルを作成し、コードを書きます。
  • 5. 次のコードをhello.goファイルに貼り付けて、ファイルを保存します。

    1. package main
    2. import "fmt"
    3. func main() {
    4. fmt.Println("Hello, World!")
    5. }

    これがあなたのGoコードです。このコードでは、あなたは:

    • mainパッケージを宣言します(パッケージは関数をグループ化する方法であり、同じディレクトリ内のすべてのファイルで構成されています)。
    • 人気のあるfmtパッケージをインポートします。このパッケージには、テキストのフォーマット、コンソールへの出力を含む関数が含まれています。このパッケージは、Goをインストールしたときに取得した標準ライブラリのパッケージの1つです。
    • コンソールにメッセージを出力するためのmain関数を実装します。main関数は、mainパッケージを実行するとデフォルトで実行されます。
  • 6. コードを実行して挨拶を確認します。

    1. $ go run .
    2. Hello, World!

    go runコマンドは、Goで作業を行うために使用する多くのgoコマンドの1つです。他のコマンドのリストを取得するには、次のコマンドを使用してください:

    1. $ go help

外部パッケージのコードを呼び出す

他の誰かによって実装されたかもしれない何かをコードにさせる必要がある場合、コードで使用できる関数を持つパッケージを探すことができます。

  • 1. 外部モジュールの関数を使って、印刷メッセージを少し面白くします。
    • 1.1. pkg.go.devを訪れて、「引用」パッケージを検索します。
    • 1.2. 検索結果でrsc.io/quoteパッケージを見つけてクリックします(rsc.io/quote/v3が表示された場合は、今は無視してください)。
    • 1.3. ドキュメントセクションのインデックスの下に、コードから呼び出すことができる関数のリストに注意してください。Go関数を使用します。
    • 1.4. このページの上部で、quoteパッケージがrsc.io/quoteモジュールに含まれていることに注意してください。
      pkg.go.devサイトを使用して、他の人が使用できる関数を持つ公開モジュールを見つけることができます。パッケージはrsc.io/quoteのようなモジュールに公開され、他の人が使用できるようになります。モジュールは時間とともに新しいバージョンで改善され、改善されたバージョンを使用するためにコードをアップグレードできます。
  • 2. Goコードにrsc.io/quoteパッケージをインポートし、そのGo関数を呼び出す行を追加します。
    ハイライトされた行を追加した後、コードは次のようになります:

    1. package main
    2. import "fmt"
    3. import "rsc.io/quote"
    4. func main() {
    5. fmt.Println(quote.Go())
    6. }
  • 3. 新しいモジュールの要件と合計を追加します。
    Goはquoteモジュールを要件として追加し、モジュールの認証に使用するgo.sumファイルも追加します。詳細については、Goモジュールリファレンスのモジュールの認証を参照してください。
    1. $ go mod tidy
    2. go: finding module for package rsc.io/quote
    3. go: found rsc.io/quote in rsc.io/quote v1.5.2
  • 4. コードを実行して、呼び出している関数によって生成されたメッセージを確認します。
    1. $ go run .
    2. Don't communicate by sharing memory, share memory by communicating.
    あなたのコードがGo関数を呼び出し、コミュニケーションに関する巧妙なメッセージを印刷していることに注意してください。
    go mod tidyを実行したとき、インポートしたパッケージを含むrsc.io/quoteモジュールが見つかり、ダウンロードされました。デフォルトでは、最新バージョン(v1.5.2)がダウンロードされました。

さらにコードを書く

この簡単な紹介で、Goをインストールし、いくつかの基本を学びました。別のチュートリアルでさらにコードを書くには、Goモジュールを作成するを見てください。