Это просто. Прослушивание руководств .NET Framework на этот раз действительно помогает (хотя в книге много материала в стиле простых стилей Java, но снова в Redmond Wonderland).
Вам следует избегать подобных имен типов в кросс или внутрипроекте/библиотечное пространство имен, т.е. смешивание между доменами и моделями в общем (даже в C++, который является экстремально строгим и мощным, он также имеет воплощение в компиляторах, разрешениях и ошибках компилятора в стиле enum и проблемах).
Поэтому даже полная квалификация во все времена не является безупречной (а также псевдонимы и «использование» чрезвычайно ограничены и в лучшем случае приводят к мягкому дублированию, а также подтверждают слабость C# в общем программировании и т. Д.).
По моему опыту, типов данных доменов являются основной мишенью для более подходящего имени, и, таким образом, для имени рефакторинга, который:
а) дешево (как процесс в богатых НРХА, но простой ADT-s поддержки как в C#, щелкните правой кнопкой мыши в среде IDE и почувствуйте себя в силе в соответствии с динамическими вентиляторами/сторонними динамиками Ruby типа)
[также может быть прочитано как: 4.0 динамические свойства овцы будут обвинять всех, но не думать о пространствах имен или функциональных JS, C -с шаблонами (не C-с-классами) или аналогичными]
b) лучше передает семантику, т.е. (например, сантехника + поддержка для создания собственной обработки)
c) обычно примитивный, но типизированный характер или сообщение (набрано не OO, т. е. критика в стиле OO, как в вышеупомянутой книге, которая сама выходит из строя Автоподъемники все «Модели» к справочным земельные участки)
d) и «сглаживание» становится полезным артефактом в использовании междоменном (который на самом деле можно и вполне 2020-подобный .. есть. значение типа программирования)
Там действительно нет правил, но будьте осторожны, что вы увидите смешение пространств имен в процессе разработки, когда они меньше всего ожидаются. Это означает только одно для управляемого мышления dev: путаница. Плюс несколько менее серьезная, более компиляция и ошибки IntelliNonsense, конечно.
Жесткая проблема на всех языках, поэтому это ваша проблема с дизайном/именованием. Даже поставщики инструмента могут испортить машины для анализа. расширенных популярных IDE, основанных на устаревшей информации о просмотре; то опять же, другие хорошо справляются с управляемыми языками.
Не то, чтобы я против дублирующих имен, бывают случаи (они жесткие, но необходимые) при смешивании двойного + interop + представления и т. Д. Другие модели, где одно и то же имя делает его более читаемым; то есть. где дублирование является необходимостью двойного использования. Но это идиомы более низкого уровня, которые C# не дружелюбны или не поощряют (re: в пользу накладных расходов).
Одно замечание (просто чтобы добавить к вашему ответу) не используйте псевдоним для ТОЛЬКО одного. Используйте псевдоним «для обоих и всегда ссылайтесь на них, используя псевдоним. Не позволяйте одному из них упасть до значения по умолчанию, потому что это вызовет путаницу. – DevinB