Получают ли какие-либо практические преимущества методы расширения от того, что они являются частью статического класса по сравнению с [теоретически] частью пространства имен?

Когда дело доходит до методов расширения, имена классов, похоже, ничего не делают, но обеспечивают группировку, что и делают пространства имен -. Как только я включаю пространство имен, я получаю все методы расширения в пространстве имен. Итак, мой вопрос сводится к следующему :Есть ли какая-то ценность, которую я могу получить от методов расширения, находящихся в статическом классе?

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

В основном я просто пытаюсь получить некоторую интуицию, подтверждение или понимание. -Я подозреваю, что может быть проще всего реализовать методы расширения таким образом, и не стоило тратить время на то, чтобы позволить методам расширения существовать на свои собственные в именах -пространствах.

6
задан Joshua Enfield 26 April 2012 в 20:55
поделиться