Как я могу разделить множество несвязанных методов между различными классами, не создавая "пространство имен бога / статический класс"?

"Пространство имен Бога" - это (необычный) термин для (анти?) Паттерна, аналогичного "Объекту Бога", когда вы набираете метрическую тонну вещей (в основном методов / функций), которые не связаны или не тесно связаны с каждым из них. другой в одно огромное пространство имен /static class только для того, чтобы его можно было использовать в нескольких разделах вашего проекта.

Следуя этому (анти?) Шаблону, вы часто заканчиваете, как пример C#, чем-то вроде static class Assets с множеством методов, в основном не связанных друг с другом, но используемых в нескольких местах в вашем проекте (ах).

Я обычно подхожу к этой проблеме, позволяя следующему Assets вырасти столько, сколько я могу вынести, а затем отчаянно пытаюсь отсортировать его содержимое на несколько меньших по критериям, которые кажутся наиболее законными, например, MathAssets, или же BitmapAssets, или же RNGAssets, а потом в конечном итоге забыть, что я положил куда... и сделать новый Assets для нескольких новых методов, которые не вписываются ни в один из SomethingAssets уже загромождают проект.

Есть ли другие способы прояснить "пространство имен Бога"? Или мне просто придется жить со старым добрым static class Assets?

0 ответов

Другие вопросы по тегам