Go学習日誌
Python初学者。それ以外の言語経験無し。Goに挑む。
自分が思ったことを書いていくので間違ったこともたくさん書いているかもしれない。新しい日付が上に来ます。
2022/6/18
前日のgo mod tidy後のgo get ~ は多分間違い。どちらかでいいっぽいということがわかった。
2022/6/17
tkmに見てもらって教えてもらったこと
go mod init github.com/gorilla/muxとしているのでサイクルエラーになっている。go mod は任意の被らない名前にすること
モジュールのインストールはgo install ではなくgo getで行うこと。
この2点を踏まえ、まず元々あったgo.modを削除、go mod init api、go mod tidy
次にgo get github.com/gorilla/mux これでうまく動いた。エンドポイントはGETのみだが。。。
2022/6/16
構成を見てたらGOPATHというのが出てきた。見てるとGOPATHというパス配下にプロジェクトを置かないと行けないと書いていたがこれは間違いだった。今はgo moduleがある。それを使えば気にしなくていい。
Pythonに比べとにかく情報が少ない。あと初学者向けの優しい説明がかなり少ない。
go.mod / go.sum
2022/6/15
Packageという考え方をなんとなく理解。
Pythonはファイルごとで独立しているイメージだが、Goはつながっている。複数のファイルで一つという感じ。
Packageは必ずmainから始めなければならない。びっくりした。
Pythonでは書式指定子というものを全く気にしなくてよかったので、fmt.Printlnですら「???」という感じ。
しかし書き味はシンプルでとてもスッキリしているように見える。特に関数の定義やfor文などはとてもわかりやすい。
変数の初期化というのもPythonにはなかった。Goは何でも初期化したがるみたいだ。
クラスが無いのがとてもうれしい。
2022/6/14
Goを学び始めたので日誌をつけることにした。
PCにGoをインストール。version 1.18
godocやgo run、go build、go testなどを覚える。このテストの概念すごいなー。
そもそもコンパイル、ビルドというのもPythonにはないことだった?のでおどろいた。