読者です 読者をやめる 読者になる 読者になる

備忘録

イケイケエンジニアになるために自己嫌悪と戦う大学院生のメモ兼モチベーション維持。

Goやりたい

Go

最近Go言語をやりたい欲が強くなってきた。

なぜ

リアルタイム通信系のサーバサイド技術勉強したい

→ Node.jsかGo言語やりたい

→ リサーチ

→ Go言語の魅力に惹かれている

魅力に思うところ

自分はC -> Java -> C# -> C++ -> php -> Pythonという流れで勉強してきた。 スクリプト言語は書くのが非常に楽だけど他人のコードを見るのが辛く感じる。 しかし今更静的言語に戻るとコーディング作業が面倒に感じる部分が多い。 (C++イテレータとか嫌い) Go言語は静的言語とスクリプト言語のいいとこ取り(静的言語なのにさらっとかける)らしいので気になる。

-コーディング規約が厳しい

Pythonを触り始めてから厳しいコーディング規約に魅力を感じるようになった。

  • 規約が宗教的にあっている
if{
}else{
}

派で

if(statement) hoge();

は絶対使わない派などなどGoで制限されるお作法が自分のスタイルとバッチリ噛み合っていた。

  • GCがある

  • 並行処理/同期処理が書きやすいらしい

並行処理を勉強したいが、記述や実装面での学習にコストを取られずに並行処理実装時のコアとなる部分 (どう設計すべきか、など)を学ぶことができるのでは??

C++から逃げたいという気持ちが大きいのかもしれない。

どうやって勉強するか

今作っているものが一段落したら、適当なボードゲームをブラウザ上で遊べるようにしたものを作ろうと思う。 後悔したら著作権的によろしくなさそうだし、身内で遊ぶ程度のクオリティを目指す。 上手く共通処理部分を切り出せるように設計して、モジュール単位でGithubにあげるとかはアリか。