
Einige Abhängigkeiten sind möglicherweise offensichtlich und für die Grundfunktion eines Pakets notwendig. Aber was ist mit sekundären Funktionen, für die das Laden zusätzlicher externer Pakete erforderlich wäre? Zur Klarstellung: Ich verstehe, dass „das Hinzufügen zu vieler Funktionen“ ein häufiger Anfängerfehler ist. Ich bin keineswegs ein erfahrener Entwickler, aber ich denke auch nicht an völlig beliebige Funktionen.
Hier einige Beispiele:
Eine neue Umgebung enthält ein (optionales) Feld für ein Datum. Dieses kann auf „heute“ eingestellt, auf ein benutzerdefiniertes Datum festgelegt oder ganz weggelassen werden. Dazu wäre das datetime-Paket erforderlich.
Ebenso ein Feld für eine Liste von Abkürzungen. Dies würde das Glossarpaket erfordern, das ein ziemlich großes Paket zu sein scheint, wenn der Benutzer es nicht benötigt.
Ich möchte mit diesem Paket einen bestimmten Seitenstil bereitstellen, es aber dem Benutzer überlassen, ob er diesen verwenden möchte. Dazu wäre das Paket fancyhdr erforderlich.
und einige mehr.
Meine Fragen sind dann:
Mache ich mir zu viele Gedanken über die Optimierung und sollte einfach mit den Abhängigkeiten für „Nice-to-have“-Funktionen fortfahren?
Kann ich diese Pakete bedingt laden, z. B. indem ich „RequirePackage“ nur innerhalb der abhängigen Makros platziere? Oder über eine Paketoption?
Kann ich Unterstützung für diese Pakete hinzufügen, falls der Benutzer beschließt, sie selbst zu laden? Wie informiere ich ihn am besten darüber?
Sollte ich diese netten Funktionen einfach ganz entfernen?