2014年8月31日日曜日

Golang Cafe #44

8/24(日)に開催された「Golang Cafe #44」に参加してきました。

参加者は主催の +Takashi Yokoyama さん、+Takanobu Hagino さん、私の3名でした。

今回は8/9(土)に東京で開催された「Go lang勉強会」の資料の中から「インタフェースの実装パターン」を読み進めました。

当日はスライドを読み進めたのですが、後半に進むと理解できない部分が多く出てきたので、後日、Qiitaの「インタフェースの実装パターン #golang」と合わせて読み直しました。

構造体やインターフェースについては、一通り理解していたつもりでしたが、本資料を読み進めた結果、それは基礎の部分だったことを再確認できました。

今回、新たに得ることのできた知識は、以下の通りです。

  • 関数にメソッドを実装できる。
    →関数にインターフェースを実装できる。
    →インターフェース型の引数に関数を引き渡せる。
  • インターフェースを実装した構造体を埋め込んだ構造体は、埋め込み元のインターフェースを実装したことになる。
  • 複数のメソッドを持つインターフェースがあり、そのメソッドを全て実装し切れていない構造体があった場合、埋め込み先の構造体で残りのメソッドを実装すれば、そのインターフェースを実装したことになる。
  • 型名が大文字で始まる型は、小文字で始まる型名で再定義することで、外部からアクセスを防ぐことができる。

仕組みは理解できるのですが、使いどころがわからないのが、正直なとろこです...q@w@p

次回は萩野さんのGoソースをみんなでレビューする予定です。

0 件のコメント: