У меня есть фундаментальные константы библиотеки для TypeScript/JavaScript. Как следует из названия библиотеки, она специализируется на константах. Но важно то, как организован исходный код. По сути, на каждую константу приходится один файл (пример), но даже если в каждом файле было несколько констант, как показано ниже, технологии оптимизации, такие как встряхивание дерева Webpack, все равно работают. Благодаря таким технологиям неиспользуемые константы не будут включаться в выходной код JavaScript.
Код: Выделить всё
export const MINIMAL_CHARACTERS_COUNT_OF_EMAIL_ADDRESS: number = 3;
export const MAXIMAL_CHARACTERS_COUNT_OF_EMAIL_ADDRESS: number = 320;
Теперь о C#. Как оптимально организовать исходный код подобной библиотеки для C#? В идеале неиспользуемые константы не должны включаться в выходной код. Если это невозможно, неиспользуемые константы не должны быть загружены в ОЗУ.
AFAIK, в C# я не могу создавать константы вне классов/структур/записей. Группировка переменных, как показано ниже, является наилучшей?
Код: Выделить всё
namespace Constants;
public record Email {
public const sbyte MINIMAL_CHARACTERS_COUNT_OF_EMAIL_ADDRESS = 3;
public const sbyte MAXIMAL_CHARACTERS_COUNT_OF_EMAIL_ADDRESS = 320;
}
Будет ли загружена константа MAXIMAL_CHARACTERS_COUNT_OF_EMAIL_ADDRESS, если будет использоваться только MINIMAL_CHARACTERS_COUNT_OF_EMAIL_ADDRESS?
Подробнее здесь:
https://stackoverflow.com/questions/798 ... -constants