Представление сокращений в названиях классов в верблюжьей клетке - PullRequest
2 голосов
/ 16 апреля 2009

Я создаю библиотеку C # и собираюсь использовать префикс большинства открытых классов с протоколом, который они используют (TCP, UDP и т. Д.), И я столкнулся с небольшой дилеммой: должно ли это быть TCPXxxx или TcpXxxx * * 1003

Кажется, что в .NET Framework нет стандарта (IPAddress против TcpClient).

Что бы вы предпочли при работе с библиотекой: TCPXxxx или TcpXxxx?

Ответы [ 6 ]

9 голосов
/ 16 апреля 2009

Это должно быть TcpXxxx, в соответствии с рекомендациями по проектированию.

В руководствах по проектированию 2-буквенные акронимы пишутся с большой буквы, все остальные - в паскалях.

Из Руководства по проектированию рамок Квалины и Абрамса:

  • Используйте заглавные буквы в двухбуквенных аббревиатурах, за исключением первой работы идентификатора в верблюжьей клетке.

    System.IO
    public void StartIO(Stream ioStream)
    
  • Прописывать только первый символ аббревиатур с тремя или более символами, кроме первого слова идентификатора в верблюжьей оболочке.

MSDN имеет сокращенную, сокращенную версию этого.

2 голосов
/ 16 апреля 2009

Мне всегда нравится представлять теоретический процесс, который преобразует WordsLikeThis в слова, подобные этим, и представляю, как преобразуется указанное имя. Некоторые примеры:

TCPSocket -> t-c-p-socket
TcpSocket -> tcp-socket

Очевидно, что последний имеет больше смысла.

1 голос
/ 16 апреля 2009

Как правило, когда это префикс из 2 символов, оставьте его в верхнем регистре (IPAddress), а когда он будет состоять из 3 или более символов, префикс Pascal (TcpXxxx).

Есть несколько исключений из этого правила (например, если префикс - это собственное имя в верхнем регистре).

0 голосов
/ 17 апреля 2009

Я знаю, что в Eclipse я могу быстро указать тип, используя только заглавные буквы имени типа, поэтому я предпочитаю использовать заглавные буквы, а не заглавные ... Я не знаю, может ли VS сделать то же самое, но фанатик .

0 голосов
/ 16 апреля 2009

Вы можете рассмотреть возможность помещения этих классов в пространство имен, называемое «TCP». Если вы сделаете это, то имена ваших функций / классов в этом пространстве имен станут короче и понятнее, и вам вообще не придется беспокоиться об этой проблеме.

0 голосов
/ 16 апреля 2009

Я знаю, что это стиль кодирования C #, но я предпочитаю Python PEP 8 Style

Примечание. При использовании сокращений в CapWords используйте заглавные буквы. аббревиатуры. Таким образом HTTPServerError лучше, чем HttpServerError.

Но когда в Риме ... последовательный код лучше, поэтому руководства по стилю языка - хорошая идея.

...