Agent Skills by ALSEL
OpenCodeソフトウェア開発⭐ リポ 0品質スコア 55/100

go-functional-options

GoのコンストラクタとパブリックAPIに対する関数型オプションパターンです。3つ以上のパラメータを持つオプション設定を含むAPI設計時に活用できます。

description の原文を見る

The functional options pattern for Go constructors and public APIs. Use when designing APIs with optional configuration, especially with 3+ parameters.

SKILL.md 本文

注意: このスキルのライセンスは ライセンス未確認 です。本サイトでは本文プレビューのみを表示しています。利用前に GitHub の原本でライセンス条件をご確認ください。

関数型オプションパターン

出典: Uber Go Style Guide

関数型オプションは、非公開の Option 型を宣言し、その情報を内部構造体に記録するパターンです。コンストラクタはこれらのオプションの可変長個数を受け入れ、結果を設定するために適用します。

使用する場合

以下の場合に関数型オプションを使用します:

  • コンストラクタまたは公開 API に 3 つ以上のオプション引数がある場合
  • 時間経過とともに新しいオプションが追加される可能性のある拡張可能な API
  • 呼び出し元の利便性が重要である場合 (デフォルト値を渡す必要がない)

パターン

コアコンポーネント

  1. 非公開の options 構造体 - すべての設定を保持
  2. 公開の Option インターフェース - 非公開の apply メソッド付き
  3. オプション型 - インターフェースを実装
  4. With* コンストラクタ - オプションを生成

オプションインターフェース

type Option interface {
    apply(*options)
}

非公開の apply メソッドにより、このパッケージからのオプションのみ

...

詳細情報

作者
HadiCherkaoui
リポジトリ
HadiCherkaoui/opencode-config
ライセンス
不明
最終更新
2026/4/16

Source: https://github.com/HadiCherkaoui/opencode-config / ライセンス: 未指定

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: HadiCherkaoui · HadiCherkaoui/opencode-config · ライセンス: ライセンス未確認