🚀 はじめに
Go言語の誕生
Go言語(Golang)の誕生には、有名な逸話があります。
GoはGoogle社内で生まれたプログラミング言語であり、その開発目的は、ソフトウェアのビルド時間を短縮し、開発者の生産性を向上させることでした。
また、Goは学びやすく、デバッグしやすい言語として設計されており、現代のハードウェア環境において高いスケーラビリティを持つソフトウェアを開発できるようになっています。
Go言語の特徴
コンパイル言語
Goはコンパイル型プログラミング言語です。
ソースコードは実行前に機械語へコンパイルされるため、高い実行性能を実現できます。また、コンパイル済みの実行ファイルは単体で動作するため、実行環境への依存が少ないことも特徴です。
さらに、GoはWindows・Linux・macOSなど複数のプラットフォームをサポートしており、クロスコンパイルも容易に行えます。
シンプルで学びやすい構文
Goの構文は非常にシンプルかつ明確に設計されています。
そのため、プログラミング初心者でも理解しやすく、コードの可読性も高く保たれます。
また、余計な機能を極力排除しているため、コードが複雑になりにくく、保守性にも優れています。
静的型付け(Statically Typed)
Goは静的型付け言語です。
変数やデータ型はコンパイル時に決定され、実行中に型が変更されることはありません。
そのため、多くの型に関するエラーをコンパイル時に検出でき、プログラムの安全性と信頼性を高めることができます。
PHP、Python、JavaScriptのような動的型付け言語で発生しやすい型関連の問題を未然に防ぐことができる点も、大きなメリットの一つです。
並行処理(Concurrency)への優れた対応
Goは並行処理を得意とする言語として設計されています。
特に、
- Goroutine
- Channel
という2つの仕組みにより、安全かつ効率的に並行処理を実装できます。
これらを活用することで、マルチスレッドプログラムをシンプルに記述でき、デッドロックや競合状態(Race Condition)などの問題も管理しやすくなります。
ガベージコレクタ(Garbage Collector)
Goには標準で**ガベージコレクタ(GC)**が搭載されています。
不要になったメモリは自動的に解放されるため、開発者が手動でメモリ管理を行う必要はありません。
これにより、
メモリリークの防止
アプリケーションの安定性向上
開発効率の向上
といったメリットが得られます。
インストール
Goコンパイラのインストール
Goはコンパイル型言語であるため、最初にGoコンパイラをインストールする必要があります。
Goは以下の主要OSをサポートしています。
- Windows
- Linux
- macOS
公式サイトへアクセスし、ご利用のOSに対応したインストーラをダウンロードしてください。
基本的には最新バージョン(Latest Version)の利用をおすすめします。最新バージョンには新機能やパフォーマンス改善、不具合修正などが含まれています。
今回はLinux(Ubuntu)でのインストール手順を紹介します。
1. ホームディレクトリへ移動
cd ~
2. Goをダウンロード
ここではGo 1.26.5を例にします。
curl -LO https://go.dev/dl/go1.26.5.linux-amd64.tar.gz
3. Goを展開
sudo tar -C /usr/local -xzf go1.26.5.linux-amd64.tar.gz
4. PATHを設定
以下のコマンドで設定ファイルを開きます。
sudo nano ~/.profile
ファイルの最後に以下を追加します。
export PATH=$PATH:/usr/local/go/bin
保存するには、
- Ctrl + X
- Y
- Enter
の順に押します。
5. 設定を反映
source ~/.profile
6. 動作確認
Goが正しくインストールされたか確認します。
go version
Goのバージョンが表示されれば、インストールは成功です。
go version go1.26.5 linux/amd64
おめでとうございます!
IDEのインストール
Goを開発できるIDEは数多く存在します。
代表的なものとして、
- GoLand
- Visual Studio Code
- Vim
- Sublime Text
などがあります。
自分のPCスペックや用途に合わせて選択するとよいでしょう。
私自身はGoLandを愛用しています。
Go向けの機能やプラグインが最初から充実しているため、非常に快適に開発できます。
ただし、有料であり、比較的動作が重いというデメリットもあります。
一方、Visual Studio Codeは無料でありながら非常に高機能です。
実際、私の職場でも多くのエンジニアがVS Codeを利用してGo開発を行っています。
そのため、初めてGoを学ぶ方にはVS Codeも非常におすすめです。
Hello World
Goの概要を理解し、開発環境の準備ができたら、まずは定番の「Hello World」を作成してみましょう。
まず、hello_world.goというファイルを作成します。
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
次に、以下のコマンドを実行します。
go run hello_world.go
実行結果
Hello, World!
これで、最初のGoプログラムが完成しました。
まとめ
今回は、Googleが開発したプログラミング言語「Go」の基本的な概要を紹介しました。
Goは、
- シンプルで分かりやすい文法
- 高い実行性能
- 優れた並行処理機能
- 自動メモリ管理
といった特徴を備えており、近年ではWebサービスやクラウドシステム、マイクロサービスなど幅広い分野で利用されています。
この記事が、皆さんのGo学習の第一歩となれば幸いです。
それでは、**「Golang Essentials:基礎から学ぶGo言語」**シリーズの次回の記事でお会いしましょう。
それでは、また!
✨参考資料
https://www.digitalocean.com/community/tutorials/how-to-install-go-on-ubuntu-20-04
https://www.practical-go-lessons.com/