パッケージの作成: 依存関係に関するベストプラクティス

パッケージの作成: 依存関係に関するベストプラクティス

一部の依存関係は明らかで、パッケージの基本機能に必要なものかもしれません。しかし、追加の外部パッケージの読み込みを必要とする二次的な機能についてはどうでしょうか? 明確に言うと、「機能を追加しすぎる」ことは初心者によくある間違いだと理解しています。私は決して経験豊富な開発者ではありませんが、完全に恣意的な機能を検討しているわけではありません。

いくつか例を挙げます。

  • 新しい環境には、日付用の (オプションの) フィールドが含まれます。これは、「今日」に設定することも、ユーザー定義の日付に固定することも、完全に省略することもできます。これには datetime パッケージが必要です。

  • 同様に、略語のリスト用のフィールド。これには、用語集パッケージが必要ですが、ユーザーが必要としない場合は、読み込むにはかなり大きなパッケージになると思われます。

  • このパッケージで特定のページ スタイルを提供したいのですが、それを使用するかどうかはユーザーに任せたいと思います。これには fancyhdr パッケージが必要です。

  • そしてさらにいくつか。

私の質問は次のとおりです。

  • 最適化について心配しすぎていて、あれば便利な機能の依存関係だけを進めるべきでしょうか?

  • これらのパッケージを条件付きでロードすることはできますか? たとえば、依存マクロ内にのみ「RequirePackage」を配置するなどです。 または、パッケージ オプション経由では?

  • ユーザーが自分でロードすることにした場合に備えて、これらのパッケージのサポートを追加できますか? このことをユーザーに通知するにはどうすればよいでしょうか?

  • これらの便利な機能をすべて削除したほうがよいでしょうか?

関連情報