Я думаю о том, чтобы поместить каждый класс в отдельный файл и выполнить статическую инициализацию вне определения класса.
Проблема с этим заключается в том, что инициализация произойдет до того, как указанный класс действительно понадобится (это произойдет, когда файл, содержащий класс, будет включен впервые). Это проблема, потому что может случиться так, что класс вообще не будет использоваться, поэтому инициализация не нужна. И я думаю, что практика включения использованных файлов не в начало вашего кода - просто грязная техника.
Если у кого-нибудь есть жизнеспособное решение этой проблемы, я был бы очень признателен.