Мы используем m_, а затем слегка измененную нотацию Simonyi, как сказал Роб в предыдущем ответе. Таким образом, префикс кажется полезным, и m_ не слишком навязчив и его легко найти.
Почему нотация вообще? И почему бы просто не следовать (для .NET) рекомендациям Microsoft по обозначениям, которые основаны на регистре имен?
Сначала вопрос: как уже отмечалось, VB.NET безразличен к регистру. Так же как базы данных и (особенно) администраторы баз данных. Когда мне нужно сохранять прямые customerID и CustomerID (скажем, в C #), это причиняет боль моему мозгу. Таким образом, оболочка является формой обозначения, но не очень эффективной.
Префиксная нотация имеет значение несколькими способами:
- Увеличивает понимание человеком кода без использования IDE. Как и в обзоре кода - который я до сих пор считаю самым простым на бумаге.
- Когда-нибудь записывали T-SQL или другие хранимые в СУБД проки? Использование префиксной нотации в именах столбцов базы данных ДЕЙСТВИТЕЛЬНО полезно, особенно для тех из нас, кто любит использовать текстовые редакторы для такого рода вещей.
Короче говоря, префикс как форма записи полезен, поскольку все еще существуют среды разработки, в которых интеллектуальные IDE недоступны. Представьте, что IDE (программный инструмент) позволяет нам использовать некоторые ярлыки (например, типизацию intellisense), но не включает всю среду разработки.
IDE - это интегрированная среда разработки, точно так же, как автомобиль - это транспортная сеть: только одна часть более крупной системы. Я не хочу следовать соглашению о «машинах», например, оставаться на размеченных дорогах, когда иногда быстрее идти по пустыре. Полагаться на IDE для отслеживания ввода переменных - все равно, что использовать GPS автомобиля, чтобы пройти по свободному участку. Лучше иметь знания (хотя и неудобно иметь m_intCustomerID) в переносной форме, чем возвращаться к машине для каждого небольшого изменения курса.
Тем не менее, условное обозначение m_ или условное обозначение this доступны для чтения. Нам нравится m_, потому что он легко ищется и все еще позволяет типизированной переменной следовать за ним. Согласился, что обычное подчеркивание используется слишком многими другими действиями кода структуры.