Go言語とは?
Googleが開発したオープンソースのプログラミング言語
別名:golang
開発された2009年当時、コンピューターの処理速度や技術進歩に伴って以下が問題視されているようですが、そんな中でも簡単かつ効率的な開発実現を目指して作られたのが言語のようです。
- コードの複雑化
- 生産効率の低下
最初は「既存言語で事足りる」ということもあってあまり普及はしなかったそうですが、バージョンアップの後にAndriodアプリの開発に使えるようになったのがきっかけで技術スタックとして採用する企業が大幅に増えたとのこと...
Goの公式サイトでも「シンプルで信頼性の高い効率的なソフトウェアを構築できる言語」として紹介されており、未経験者にとってとても学びやすいプログラミング言語となっています。
Go言語のメリット
- ループ処理はfor文のみ、while文やdo/while文はない
- 変数の型宣言を省略できる
- コードに統一感があるため可読性が高い、コーディングミスを減らせる
- JavaやC言語に構文が似ていて初心者にも理解しやすい
- 高速な処理が可能
- 少ないコードで実装できる
- エラーが発生しにくい
- メモリの安全性が高い
機能削減を行うことでシンプルなコード記述を実現し、可読性が高い点がメリットであり、特徴となっています。
Go言語のデメリット
- 新しい言語のため、他言語と比較して情報量が少ない
- 継承ができない
- 三項演算子が使えない
- Genericsが実装されたばかりで情報がすくない
- 例外処理がない
上記はGo言語が安全性やコードの可読性を考慮・設計用に削ぎ落とされた機能の一部と言えそうです。
Go言語の用途
- Webサーバ・Webサービスの構築
- Androidアプリ開発
- IoT開発
- CLI(OS/バージョン/プラットフォーム問わず開発可)
Go言語での開発事例
- AWA(AWA)
AWA(アワ)は1億曲もの音楽が聴き放題になる、音楽配信サービス
https://awa.fm/ - クックパッド
料理レシピの投稿・検索サービス
https://cookpad.com/ - Gunosy
ネット上にある国外の情報を収集して、各ユーザーが求めているものを届けてくれる情報キュレーションサービス
https://gunosy.co.jp/ - YouTube
- ぐるなび
- メルカリ etc..