見出し画像

Goで行こう!

世間ではGo Toキャンペーンで旅行に行っている人がいっぱいいるけど、まだまだ怖いなぁ・・・
ということで、Go Go言いながら、Go言語でも勉強してみるか(笑)

Goってどうなの?

イケてるプログラマはGo言語を始めてるって聞いたけど、Go言語の特徴って何?
ということで、とりあえずググってみる。

Goを書き始める前に調べたあれこれまとめ
2019年大注目のGo言語(Golang)!入門者も知っておきたい特徴や強みはコレ!
go言語(golang)の特徴って?メリットとデメリットをまとめてみた
動的言語だけやってた僕が、38日間Go言語を書いて学んだこと
他言語プログラマがgolangの基本を押さえる為のまとめ
「例外」がないからGo言語はイケてないとかって言ってるヤツが本当にイケてない件
イケてないのに人気がある golang vs イケてるのに人気がない Nim

イケてるプログラムと思ってググってみたけど、イケてないって言ってる人もいて、結局どっちやねん!ということで、とりあえず書いてみるか(笑)

Goって何?

とりあえず、調べたことから抜粋。
・2009年にGoogleによって開発されたプログラミング言語
・主要な開発者は「C言語開発者:ケン・トンプソン氏」、「言語Limbo開発者:ロブ・パイク氏」
・静的型付プログラミング言語
・Goのマスコットキャラクターは「Gopher(ゴーファー)」

Googleによって開発されたので、流行るんちゃう!ってことですね。
言語開発者が2人いるので、それぞれの良いところを寄せ集めて、シンプルに分かりやすくなっていると。
2009年開発ってことは良い感じで熟成されてるのかな。

Goの特徴

・シンプルな言語
 繰り返し処理で foreach、while はなくて、for 文のみとか
・コンパイルがすごい
 直接ネイティブコード(機械語)に変換することにより高速でコンパイル
・セキュアなメモリ管理
 ポインタ計算機能を排した
・並列処理に強い
 goroutineやチャネルなどの機能
・誰が書いたコードでも読みやすい
 ソースコードを自動的に整形してくれる go fmt
・ジェネリックがない
 セキュアなメモリ管理を達成するために切り捨てられた機能
・継承がない
 同じ役割を果たす埋め込み(Embed)という機能はある模様
・例外がない
 throw、catchはないけど、panic、defer、recoverという機能はある

開発準備

とりあえずIDEの準備するかということで、またもやググる。

快適なGo言語の開発環境を模索しよう
2018年5月現在のGo言語用開発環境(IDE/エディタ)を考える

下記の選択肢があるようです。

・Visual Studio Code + Go言語プラグイン
・ATOM + Go言語プラグイン(go-plus)
・JetBrains GoLand
・Vim/Neovim + Go言語プラグイン(vim-go)

「vscodeを使ってたけど、ある程度の規模の開発で使っていると補完速度がどんどん遅くなっていきます」との書き込みあり。
GoLandは有料・・・とのことなので、使ったことないけど、ATOMを試してみよう!

次はGoのダウンロードとインストール!なんだけど、今日は終了(笑)


この記事が気に入ったらサポートをしてみませんか?