go

#go #golang 今さら人に聞けないmapについて

Collyの使い方を勉強しているのですが、その中で、

という記述があってこれは何なんだろうと思って調べていたら、どうやらこれはmapと呼ばれているものらしい。

A Tour of Goのmapを見ながら試しに書いてみました。

ちなみに上の例ではkeyがstring型でしたが、int型を設定することもできるみたいです。

ただこれ、mapを使わなくてもstructで用は足りるような気がしたのですが、よくよく考えると、keyが動的に変更される場合は、structだとキツイのかもしれない。

#go #golang 今さら人に聞けないdeferっていります?

HTTPのGETリクエストのプログラムで下のようなdeferを使った記述がありました。

Package http

で、気になったのはどうしてdeferを入れてしまっているのか?ということ。

A Tour of GoのDeferで確認すると呼び出し元の関数の終わりまで処理を遅延させるとあるが、であれば、returnのすぐ上に、deferの内容を記述すればいいと思うのだが。

もしdeferをいれずにreturnの直上に記述した場合、可読性が悪くなるからだろうか?

#go #golang 今さら人に聞けない:=について

前回、HTTPのGETリクエストを送るにあたって下のプログラムを書きました。

でその時に「:=」という記述があって気にはなっていたのですが、調査する時間がなかったので、今回、少し深堀してみました。

A Tour of GoのShort variable declarationsで確認すると、どうやらそもそも変数宣言時はvarを使うのが鉄則らしく、関数の中でvarの代わりに:=が使えるみたいです。

従って関数の外側で変数宣言をする際は、:=が使うことができません。

#go #golang 今さら人に聞けないvisual studio codeでGo環境を整える

前回、windows7でGo環境を整える方法について書きましたが、さすがに、Sublime Textでコードを組んで、dosプロンプトでビルドでして実行してというプロセスだと開発効率があがらないので、もっとスマートな方法を探していたところ、visual studio codeでプログラミングする方法が結構あったので、その方法について調査しました。

  1. visual studio codeをダウンロード

    まずは、visual studio codeをダウンロードします。

    「Visual Code Studio ダウンロード」というリンクがあるのでそこをクリックする(下図参照)。

    画面が遷移します(下図参照)。

    windows7用のexeファイルをダウンロードします(下図参照)。

    クリック後、ページが遷移した瞬間に、ダウンロードのポップアップが表示されるので保存を行います(下図参照)。

  2. visual studio codeをインストール

    ダウンロードしたexeファイルをダブルクリックします(下図参照)。

    「実行」ボタンをクリックします(下図参照)。

    「次へ」ボタンをクリックします(下図参照)。

    利用規約に「同意する」にチェックを入れて、「次へ」ボタンをクリックします(下図参照)。

    インストール先のフォルダの確認をして、「次へ」ボタンをクリックします(下図参照)。

    プログラムアイコンの作成する場所の確認をして、「次へ」ボタンをクリックします(下図参照)。

    追加タスクの設定を行います。ここではそのまま何もせず「次へ」ボタンをクリックしました(下図参照)。

    「インストール」ボタンをクリックします(下図参照)。

    インストールが完了するまで気長に待ちます(下図参照)。

    インストールが完了したら、「完了」ボタンを押します(下図参照)。

  3. Goの拡張機能をインストール

    Visual Studio CodeでGo言語をプログラムしやすくするために、Goの拡張機能をインストールします。

    拡張機能を選択して「Go」と検索します(下図参照)。

    「インストール」ボタンを押して拡張機能をインストールします(下図参照)。

  4. Goファイルを開くと追加でパッケージのインストールが求められるので全てインストールします。

    ここでの注意点としてインストールするにはgitが必要なのであらかじめインストールしておく必要があります。

以上のような流れでVisual Studio Codeのインストールを行い開発を少しずつ始めたわけですが、Sublime Textでコードを組むよりも時間がかからないので開発効率があがりそうです。

#go #golang 今さら人に聞けない初めてのgolang

ちょっと案件で必要になりそうだったので、windows 7環境下でgolangをインストールしてhello worldを表示する方法について調査しました。

  1. golangをダウンロード

    goのインストールページにアクセスしてmsiファイルをダウンロードします。

    「Download Go」というリンクをクリック(下図参照)。

    ページ遷移後、Microsoft Windows用のリンクがあるのでそこをクリックします(下図とその次の図を参照)。


    クリックした後、ページ遷移するので、その時に、msiファイルのダウンロードウィンドウが表示されるのでそのままダウンロードします(下図参照)。

  2. golangをインストール

    ダウンロードしたmsiファイルをダブルクリックしてインストールを行います(下図参照)。

    「実行」ボタンをクリックします(下図参照)。

    「Next」ボタンをクリックします(下図参照)。

    利用規約に同意するためにチェックボックスにチェックを入れて「Next」ボタンをクリックします(下図参照)。

    インストール先を決めて「Next」ボタンをクリックします(下図参照)。デフォルトでは「C\Go」にインストールされます。

    「Install」ボタンをクリックします(下図参照)。

    粛々とインストールが完了されるのを待ちます(下図参照)。

    インストールが完了したら「Finish」ボタンを押して終了です(下図参照)。

  3. 環境変数の設定

    任意のフォルダにあるgoファイルをビルドしたり実行したりできるように環境変数を設定します。

    window7の場合、「スタート」ボタンをクリックします。

    コンピューターのところを右クリックをして「プロパティ」をクリックします。

    「システムの詳細設定」をクリックします。

    「詳細設定」タブの「環境変数」ボタンをクリックします。

    「ユーザー環境変数」パネルで「新規」ボタンをクリックします。

    「変数名」に「GOPATH」と入力します。

    「変数値」に実行先のパスを入力します。今回は仮に「C:\go_workspace」と入力しました。

  4. Goファイルの新規作成

    Goファイルを新規作成する前に、まず任意のフォルダを作成する必要があるのですが、ここでは先ほど環境変数で設定した「go_workspace」フォルダをCドライブ直下に作成します。

    作成後、さらに「go_workspace」フォルダの中にさらに「test」というフォルダを作ります。

    testフォルダの下に「bin」フォルダ、「src」フォルダ、「pkg」フォルダを作成します。

    それぞれのフォルダを作成後、「src」フォルダの中にさらに「hello」フォルダの作ります。

    「hello」フォルダ作成完了後、「hello.go」ファイルを新規作成します。

    「hello.go」ファイル新規作成後、下のようにプログラムの入力をします。

  5. コマンドプロンプトでGoファイルを実行。

    コマンドプロンプトを立ち上げます。

    cd C:\go_workspace\test\src\hello を打ち込みます。

    次に、go build を打ち込みます。

    exeファイルが同じフォルダにできるので、最後に hello と打ち込めば、コマンドプロンプトで「hello, world」と表示されます。

ここまでの流れでgoファイルの実行ができたのですが、意外と時間をかけずに実行することができました。

ただ、buildして実行してと、実行までのプロセスが若干、冗長と感じられたのでもっと素早くデバッグしてビルド、実行とできないのかなと思いました。