じゅんぺいメモホームEngineerGadget運営者情報お問い合わせ現役エンジニアのメモ書き。プログラミング系多め。無名関数とは無名関数(またはラムダ関数とも呼ばれる)は、名前を持たない関数のことを指します。定義と同時に実行できるため、主に一度しか使用されない短い関数を書く際に役立ちます。Goでは、無名関数は関数リテラルとして定義されます。無名関数を使用する場面があるクロージャーについては以下記事で紹介しています。クロージャーは、関数内部で生成される関数のことを指します。この内部で生成された関数は、生成元となる関数のローカル変数にアクセスすることができます。以下は、無名関数を使用した実装例です。一般的にイベントドリブンなプログラミングやコールバックを実装する際に、特定のイベントが発生したときだけ実行される関数が必要な場合があります。このような場面で無名関数は役立ちます。Goのsort.Slice関数は、スライスのソートにカスタムの比較関数を提供できます。この比較関数は、通常は無名関数として定義されます。整数のスライスを降順にソートするための無名関数を提供することができます。Singleton(シングルトン)は、デザインパターンの1つで、そのインスタンスが1つしか生成されないことを保証するパターンです。Method(ファクトリメソッド)は、オブジェクト指向デザインパターンの一つで、オブジェクトの生成のためのインターフェースを定義するものです。ビット演算子は、データをその最も基本的な形態、つまりビット(0と1)のレベルで操作するために使用される演算子です。これらは主に性能の最適化や低レベルのプログラミングで使用されます。クロージャーは、関数内部で生成される関数のことを指します。この内部で生成された関数は、生成元となる関数のローカル変数にアクセスすることができます。Patternの実装解説。関数にデフォルト引数を設定できる。me現役エンジニアのメモ書き。プログラミング系多め。