ログイン

Go言語はいいぞ

 2021.5.18 ゴリラーブログ ブログ 寿司ゴリラー木村

みなさん。プログラミングしてますか。

寿司ゴリラーの木村です。

 

みなさんはどのようなプログラミング言語を使っていますか?

一つの言語を使っている人もいれば、

様々な言語を使っている方もいらっしゃるでしょう。

 

私もBASIC→C→PHP→Javaと学習していき、

JavascriptやRubyも一通り書けますが、

今私が一番推しているGo言語の特徴について、

ココが良い!という部分を書いていきます。

 

1.明確な型宣言を行う言語である。+書略して書ける

変数宣言時に型を宣言しその型以外が代入されるとエラーになります。

これだけだとC言語と変わりませんが、

Go言語では型宣言を「:=」で省略することが可能です。

(静的型付け・動的型付けについては過去のブログを参照してください)

 

数行ですが短くなっています。

このように値から型が明確に読み取れる場合、

型宣言を省略することが可能です。

小さいことかもしれませんが、

型宣言は変数の数だけ必要なことなので少しでも省略できれば積み重なって大きな改善になります。

 

2.あらゆる型が入るinterface型がある。

ここで決まった型しか入らないものじゃないのか?と思うかもしれませんが、

Go言語ではinterfaceを用いて型に応じて動作を変化されることが可能です。

(サンプルコード:https://play.golang.org/p/uADtW_oNUYL)

あらゆる型が入るinterface型を使用する際は、

switch文や型変換を行うことで型の安全性を守りつつ、

様々な型を想定した処理を行うことが可能です。

 

interfaceは型の埋め込みやメソッドの定義など型の変更以外にも色々な使用方法がありますが、

今回は割愛します。

 

3.実行速度が速い

Go言語は静的型付け言語のため、

コンパイルを行った後は実行形式ファイル形式でプログラムが作成されます。

そのため、実行時は低水準言語であり実行速度も比較的速い言語です。

 

4.クロスコンパイルが可能(かつ配布が簡単)

コンパイラでのビルド時にオプション指定で、

例えばWindowsPC上でLinucxで動く形式にコンパイルすることが可能です。

これは実行環境に応じてコードを変更する必要が減りかなり便利です。

プログラム本体は、1個の実行ファイルのためソースコードや

その他のライブラリを配置する必要がありません。

そのためコードの配布やコンテナ上での実行が容易になります。

 

【まとめ】

個人的にGo言語はC言語を現代風の思想・用途を取り入れた発展形だと考えています。

複数の型宣言や並列処理などC言語では届かなかった部分をカバーしており

今後間違いなく使われる言語だと信じているので、今後も技術を磨いていきます。

 

次回は、Goの一番の特徴と呼べるGoルーチンについて書こうと思います。

それではみなさんも良いGoライフを!

© 2021 Mountain Gorilla Co., Ltd. 

プライバシーポリシー

%d人のブロガーが「いいね」をつけました。