Избегание противоречивого пространства имен и имени класса

Скажем, я разрабатываю приложение калькулятора. Он имеет один класс: Calculator. Поэтому моя структура пространства имен будет выглядеть так:

MyCompany.Calculator.Core.Calculator

К сожалению, это неправильно, потому что одно и то же имя не должно использоваться для пространства имен и типа в нем. Это подробно описано в этом другом вопросе SO . Один из ответов на этот вопрос предлагает решить двусмысленность с помощью Util для пространства имен, которое будет выглядеть следующим образом:

MyCompany.CalculatorUtil.Core.Calculator

Это позволяет устранить неоднозначность именования на языке программирования. Однако этот вид именования противоречит хорошим методам наименования DDD: потому что Util кажется « ласковым словом "в соответствии с этой статьей об именах в вездесущем языке , и этого следует избегать.

Каков наилучший способ избежать конфликта здесь в случае калькулятора?

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

3 голоса | спросил w0051977 1 FriEurope/Moscow2017-12-01T14:14:05+03:00Europe/Moscow12bEurope/MoscowFri, 01 Dec 2017 14:14:05 +0300 2017, 14:14:05

1 ответ


2

Является ли имя вашего приложения «Калькулятор»? если это так, вы можете обнаружить, что это имя уже используется.

Я также советовал бы вам НЕ использовать myCompany как часть пространства имен. Я знаю его стандартный способ, но названия компаний меняются.

Просто:

MyApplicationsRealName.App
MyApplicationsRealName.LibraryName.ClassName
ответил Ewan 1 FriEurope/Moscow2017-12-01T14:56:39+03:00Europe/Moscow12bEurope/MoscowFri, 01 Dec 2017 14:56:39 +0300 2017, 14:56:39

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132