Организация CodeMaid против Stylecop
Я использую StyleCop довольно долго (и я привык к нему). Мой друг порекомендовал мне также попробовать CodeMaid. Первое, что я заметил, - это различие в организации использования.
Stylecop заказывает заказы в алфавитном порядке, где системные сообщения перечислены первыми, а несистемные операции перечислены ниже.
CodeMaid заказывает заказы также в алфавитном порядке, но сначала не заказывает Системные операции. Он заказывает только буквы в алфавитном порядке
Еще одна вещь, с которой я столкнулся, заключается в том, что CodeMaid позволяет вам использовать приложения вне пространства имен (и насколько я знаю, лучше разместить все приложения в пространстве имен)
Я хотел спросить, каков правильный порядок использования и, в конце концов, почему?
Ответы
Ответ 1
Отказ от ответственности: я написал CodeMaid.
- Для первых приложений с использованием системы Microsoft изменила свои предпочтения по умолчанию в Visual Studio 2012, когда они начали вводить "Windows". сборок. Подробнее здесь: Использование директив, отсортированных в неправильном порядке
Вы можете легко изменить это значение до значения по умолчанию VS2010 в Tools-> Параметры-> Текст Editor-> С# → Advanced-> "Расположить" Системные "директивы при сортировке сообщений". CodeMaid уважает предпочтение Visual Studio, которое по умолчанию не ставит системные директивы.
- Для использования операторов, находящихся внутри пространства имен, в нашем отставании содержится поддержка https://trello.com/c/CLRxsIyc. StyleCop может утверждать его как стандарт, но если вы посмотрите на примеры MSDN, шаблоны Visual Studio и т.д., Вы обнаружите, что использование операторов за пределами пространства имен является гораздо более условным. В этом вопросе много дискуссий, и наша цель - поддерживать оба подхода.
Надеюсь, поможет. :)
Ответ 2
Нет "правильного" заказа, просто условностей. StyleCop SA1210 правило явно указывает, что System
имен размещены первые:
Нарушение этого правила происходит, когда директивы use не сортируются в алфавитном порядке по пространству имен. Сортировка директив по использованию в алфавитном порядке делает код более чистым и более легким для чтения и может помочь упростить идентификацию пространств имен, используемых кодом. Пространства имен System являются исключением из этого правила и всегда будут предшествовать всем другим пространствам имен. См. SA1208 для более подробной информации.
В правиле SA1208 указано, что пространства имен System
должны находиться перед другими пространствами имен, а аргументация:
Размещение всех директив с использованием директив в верхней части директив использования может сделать код более понятным и понятным, а также поможет упростить идентификацию пространств имен, используемых кодом.
Правила Stylecop - это условные обозначения, а Codemaid выбрал несколько другое соглашение. Выберите тот, который вам нравится, и перейдите к более важным решениям.
См. Этот вопрос относительно using
операторов за пределами пространства имен.