go 入門まとめ

go言語とは

他の言語にないところ

  • 非同期処理
    • goはgoroutineという非同期処理が可能だが、非同期処理の仕方が独特で、チャネルというものを使用する。非同期処理の仕組みとしては分かりやすい。
  • ループ構文
    • goにはループ処理はfor文しかない。for文をwhileやforeach的に使用することができる。一般的なforeachの記述とは、大分かけ離れているため覚える必要がある。
  • スライス
    • スクリプト言語ライクに書けるとはいえ、コンパイル言語であることには変わりがないため、メモリは事前に確保する必要がある。また、構造体や、可変の配列へのアクセスはポインタで実現している。ここらへんをスクリプト言語ライクに書けるように、スライスという、メモリの確保とポインタの管理を簡単にできる仕組みが導入されている。このスライスは多言語にはない特徴になっている。