インターフェイスです。Goのオブジェクト指向はクラスでなくこのインターフェイスによるものです。インターフェイスは抽象クラスみたいな機能です。インターフェイスを使ったプログラム例です。main内で構造体のメンバを呼び出しています。するかで結果が変化するのがわかると思います。interfaceを使ってから構造体が持つメソッドのリストを作ることができる。この辺はモダンな印象を受けます。よってインスタンス化します。データを追加してみましょう。これはUNIXのパイプラインと同様です。詳しくはこちらを参考に。(一時メモリ保持)は節約のため小さく取り、必要に応じてヒープ領域を割り当てています。Goにおける並行処理は以下の2つの特徴があります。メモリ共有Goではチャネルを利用することでメモリ共有による同時書き込みの危険性を減らしています。このチャネルはキュー構造をしており、makeを使って割り当てることができます。ポインタ参照を禁止(非推奨)することでデータ共有をさけています。この方法をメッセージパッシングと呼びます。自動でコンテキストを切り替えを行うことで、マルチコアで実行が可能です。ここでいうコンテキストとは、制御フローの切り替えであり手動の場合、これをプログラムに記述する必要があります。使った簡単な例を示します。経由することでデータのやり取りができます。データを送信しています。ch_1はchannelで受け取ったデータを返します。入れて表示した結果が以下です。関数の引数に関数を指定することもできます。使ったプログラムの実行時間を計測してみます。gorouthineを使わない場合です。