Какие имена вы регулярно посещаете или добавляете в классы?
Какие существительные вы оказываете себе регулярно в конце своих занятий?
Например, у меня есть привычка прикреплять Info
к классам, которые передают информацию, но не делают много:
Или для координирующих классов:
-
UserManager
-
SecurityManager
В конечном итоге я использую Builder
довольно часто для связанных с строкой классов, даже если он почти ничего не делает:
-
TemplateBuilder
-
HtmlBuilder
И, конечно же, вневременный класс Helper/Utility:
-
PhraseHelper
-
NumberUtility
-
FileHelper
У вас есть что-то хорошее, под которым я подразумеваю краткие и описательные существительные или слова, которые вы регулярно используете для обозначения основной роли класса?
Этот вопрос направлен на мир .NET, но может распространяться на Java, С++, Python и т.д.
Ответы
Ответ 1
Вы можете взглянуть на source-code-wordle.de, я проанализировал там наиболее часто используемые суффиксы имен классов платформы .NET и некоторых других библиотек.
Топ-20:
- атрибут
- типа
- помощник
- коллекция
- Преобразователь
- обработчиком
- Информация
- поставщик
- исключение
- услуги
- Элемент
- менеджер
- node
- опции
- factory
- Контекст
- элемент
- дизайнер
- база
- редактор
Ответ 2
Я использую провайдера и помощника.
Ответ 3
Я добавляю имя шаблона в конце, если я следую за ним (т.е. FooRepository).
Попытка избежать -Helper, -Manager, -Utils.
Ответ 4
Util
- EnumUtil
- ParseUtil
- StringUtil
- и т.д.
Ответ 5
База, Reader, Writer, Manager, File.. некоторые другие.
Ответ 6
Если мой класс специально выполняет вычисления, я предваряю Calc
Примеры:
Ответ 7
Я иногда добавляю имя родительского класса, которого я пишу, я хочу наследовать. Иногда это звучит странно, особенно с примером Animal (DogAnimal, FishAnimal,...), но облегчает поиск подтипов в списке классов.
Ответ 8
Factory
также:
Provider
Ответ 9
- Factory
- Помощник
- Utils
- Работа
- Entity
Ответ 10
Tests
для unit test классов
Ответ 11
Иногда я пользуюсь
Target
Как и в
- UploadTarget
- ProcessingTarget
Я не думаю, что у меня было до Silverlight/WPF, но теперь я также использую
Преобразователь
Как в:
- CurrentTimeDisplayConverter
- TimeDeltaConverter
Ответ 12
Я часто использую:
- Протокол (конкретный протокол
реализация)
- Менеджер (класс, управляющий процессом)
- Эмулятор (Эмуляция чего-то...)
Ответ 13
почему, конечно...
Base
работает с обеих сторон.
; -)
Ответ 14
Controller
и View
.