Go言語の全体像

プログラミング学習帳 プログラミング

Go言語で学ぶべき項目を整理します。

基本編

  1. Goの実行環境の構築
  2. 最も基本的な構成。package、import、func main()
  3. varやconstで変数を宣言する
  4. 文字や数字を出力する。%T %v。
  5. 配列を作成する。可変長配列のスライスで作る
  6. map関数を作成する。キーと値を対応させる。
  7. 関数funcを作成する。引数と返り値。可変長引数。
  8. if文を作成する。
  9. for文を作成する。for-range. map-for-range.
  10. switch文を作成する。
  11. defer分を作成する。logをfileに書き込む。Log Fileの原型。
  12. panic, recover, error hundling。errorが起きた時に強制終了する。
  13. ポインタ型。&はアドレスを指し*でアドレスのメモリーが見れる。newとmake。
  14. 構造体typeを宣言する。構造体を継承した構造体embedded。.で呼び出すメソッド。
  15. type-interface。何の型でも引数に取れるswitch-type文。
  16. custom error。stringerを使い出力候補を複数にして、エラー内容を変える。
  17. goroutine。並列処理。channel。func main()とgoroutine間でデータを交換する
  18. goroutineの制御。producer&consumer。select。複数のgoroutineをブロッキングしないように。sync.Mutex。一つのgoroutine書き込み中にもう一つのgoroutineは書き込めない。

基本編2

  1. ローカルパッケージの読み込み。modモジュール名/サブパッケージ名。
  2. third partyのpackage。godocで調べてgo installで入れる。
  3. timeの表記(RFC3339)。regex。正規表現。URL次第で処理を変える時。/view/testなど。sort:型でソートできる。iota。constの連番を振る。
  4. context:goroutineの処理に時間がかかった時に途中でキャンセルする。ioutil:ネットワークから来たデータを保存して読み込む。
  5. httpにアクセスする方法。url.Parse:URLの正否を見る。ヘッドやクエリのURLに何かを付け加える。
  6. json.Unmarshalとjson.Marshal。jsonのデータを受信してstructに入れて、json形式に変換してjsonに送信する。
  7. APIでサーバーにアクセスする際の二者間認証。sha256のアルゴリズムにKeyを入れてmacを作り、そのmacに送りたいメッセージとnilを入れてhmacを作る。
  8. third partyで有用なpackage。semaphore:同時に走るgoroutineの数を制限する。ini:goでないファイル(config.ini)をgoで読み込む。
  9. sqliteをGoで操作する方法

コメント

タイトルとURLをコピーしました