Я обычно живу по правилу, что глобальные переменные/функции злы и что каждый кусок кода должен жить в классе, к которому он относится.
Это очень простое правило следовать, и я считаю, что до сих пор я никогда не сталкивался с проблемой с этим правилом.
Сегодня, однако, мне нужно добавить функцию к моей сборке, а не к определенному классу. То есть, почти все мои классы могут использовать эту конкретную функцию.
Где я должен помещать эту функцию (+1 перегрузка)?
Если я помещу его в класс "Утилиты", я чувствую себя грязным. Если я привяжу его к полусвязанному классу и позволю другим классам называть его напрямую, я чувствую себя хуже.
Этот фрагмент кода в основном отбрасывает IList<PointF>
в нормализованный список. Я чувствую прямо сейчас, что добавление его как метода расширения на IList<PointF>
может быть лучшим выбором...