ログイン

Go言語のちょっとした機能と使い方

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

 

前回のあらすじ:5キロ太ったやばい!(※タイトルに関係はありません)

 

リングフィットで4kg痩せた寿司ゴリラー木村です。

リモートワークは楽だけど、動かなくなるから太るので気を付けないとダメですね。

 

現在、弊社カカナイの開発の一部にGo言語を使用しています。

実務レベルで使用している細かい仕様などを紹介しようと思います。

他の言語でも使える機能もありますが、誰か役に立てば幸いです。

 

 

1. 可変長引数

 Goの関数では、引数を任意個数のスライスで渡すことが可能です。

 下記のように任意個数の引数を用意できます。

 

 

 インターフェースと組み合わせて、自由な引数を設定することも可能です。

  ※引数が不定だと組み分け処理が大変なので推奨はしませんが、できるという例です。

 

 

2. 構造体のメソッド 

 よくあるのが、構造体の一部IDだけを配列として取得したい場合や、

 セッター・ゲッターを用意しておけば構造体の使いまわす時にあれば便利です。

 

 

 

3. 埋め込み 

 オブジェクトプログラミングにおける、継承に似た概念で、

 別パッケージの構造体やメソッドを埋め込むことができます。

 こうすることで、外部パッケージの構造体やメソッドを使いまわしたり

 異なる構造体でも他のコードをそのまま使用することができるので

 再利用性が高まります。

 

 どうしても異なる構造体同士で同じ値を保持する際は、

 埋め込みを使わないと大変だったりもします。

 

 

今後新しい機能として、ジェネリクス(generics)がリリース予定ですが、

そうなると上記3.の埋め込みがだいぶ楽になりそうですね。

 

まだβ機能を触ってみたぐらいですが、

正式リリースされた際には組み込んでいきたい機能です。

 

それでは、引き続き良いGoライフを!

 

 

© 2022 Mountain Gorilla Co., Ltd. 

プライバシーポリシー

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