Это будет зависеть от того, что именно вы подразумеваете под объектом настроек.
Все 200 классов нуждаются во всех настройках;если нет, то почему они имеют доступ к неиспользуемым настройкам?Откуда поступают настройки и есть ли веская причина, по которой каждый класс не может загружать свои настройки как и когда это необходимо?
Самое главное, не вносите изменения в рабочий код только потому, что код используетшаблон, который осуждается.Я использовал только один шаблон, но я бы использовал его снова.
РЕДАКТИРОВАТЬ: Я не знаю ваши ограничения, но я не буду беспокоиться о множественном доступе из файла, пока не будет показано, что это проблема.Я бы разбил конфигурацию на разные файлы для разных классов / групп классов или, предпочтительно, использовал бы БД вместо файлов с разными таблицами, предоставляющими данные для каждого класса.
Кроме того, я заметил, что, как только вы помещаете данные в базу данных, люди, похоже, перестают беспокоиться о доступе к ним несколько раз, даже если вы все же собираетесь в конце концов обратиться к файловой системе.
PS: Если другие варианты не подходят, я бы использовал синглтон ... вы хотите, чтобы данные были глобально доступны, вы не желаете использовать внедрение зависимостей, вы хотите, чтобы файл читался только один раз;Вы ограничили свои возможности, и синглтон не так уж и плох.