• https://go.dev/ • 最新v1.22.0(2024/2現在) • Googleで開発されたプログラミング⾔語 • 2007年に開発が始まり、2009年にオープン ソースとして公開 • 静的型付け⾔語 • オブジェクト指向⾔語とは⾔われていない • interfaceなど類似機能は持っている • 効率的でシンプルなコードの記述を重視 • メモリ管理や並⾏処理の制御は⾔語仕様、ランタイ ムやモジュールに組み込み済み • ガベージコレクション(GC)あり “The Go gopher” https://go.dev/blog/gopher モチーフはホリネズミ…!! The Go gopher was designed by Renée French.
• ちなみにPythonが1位、Javaが2位、TypeScriptが8位、Rustが13位 • Stack Overflow Developer Survey 2023では、これまでの1年間利⽤してきた、もしくは今後1年間で利 ⽤していきたい⾔語ランキング2で13位にランクイン • ちなみにPythonが3位、Javaが7位、JavaScriptが1位、Rustが14位 • Stack Overflow Developer Survey 2023では、現在の年間報酬総額はいくらか3という⾦額のランキングで10位 にランクイン • ちなみにPythonが25位、Javaが40位、TypeScriptが29位、Rustが14位 • TIOBE Index for December 20234では、13位にランクイン • ちなみにPythonが1位、Javaが4位、JavaScriptが6位、Rustが18位 1 Googleでその⾔語のチュートリアルがどれだけ検索されたかというデータを基にプログラミング⾔語の⼈気度をランク付けした指標 2 “Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?”という質問に対する回答 3 “What is your current total annual compensation (salary, bonuses, and perks, before taxes and deductions)?”という質問に対する回答 4 オランダに拠点を置く TIOBE Software BV によって作成および維持されているプログラミング⾔語の⼈気の尺度 Goの普及度
2. S i. モジュールを公開する場合の例(GitHubの場合) ii. モジュールを公開しない場合の例 Goのモジュール(プロジェクト)を作成 $ go mod init <モジュール名> $ go mod init github.com/<アカウント名>/moduleA $ go mod init moduleA
• var 変数名 型 • 複数の変数を並べることもできる • Ex) var i, j int = 1, 2 • ちなみに定数は”const” 2. 代⼊⽂での宣⾔ • :=という記号で宣⾔ • constでは利⽤不可 • 関数外では利⽤不可 • 型は暗黙的に定義 A Tour of Goをベースにポイントで解説…(1) 変数宣⾔
• type struct名 struct • 型として利⽤可能 • structのフィールドは.(ドット)でアクセス可 • structのフィールドはポインタでのアクセスもOK • ポインタ記法 • フィールドの⼀部のみを列挙することも可能 A Tour of Goをベースにポイントで解説…(6) struct(構造体)