Соглашения об именовании элементов управления / переменных в ASP.NET - PullRequest
2 голосов
/ 23 февраля 2011

Я думаю, что основное различие в именовании - между логическими и объектами, связанными с видом . В коде файла страницы может быть переменная с именем « UserName », а также текстовый блок .NET, в который пользователь должен ввести свое имя пользователя (разумный идентификатор также будет « UserName »). Как мы можем провести различие (по идентификатору) между логикой « UserName » и представлением « UserName ». У меня вопрос: какое разумное различие следует иметь, придумывая эти имена?

По моему мнению, имя переменной / идентификатор элемента управления никогда не должны описывать, что это такое, только то, что оно делает. « tbUserName » описывает, что это TextBox, « strUserName » определяет, что это строка.

Одной из идей будет префикс всех связанных объектов вида с « vwUserName » и сохранение логической части как « UserName ». Имеет ли это смысл? Как насчет ситуации, когда у вас есть валидаторы? Вы бы назвали их « vwUserNameRequiredValidator » или « vwEmailAddressFormatValidator »? В этой ситуации вам нужно описать, что это на самом деле? Вы бы дали объекту .NET RequiredFieldValidator идентификатор « rfvUserName »?

Я действительно хочу получить представление о том, что другие люди думают об этом, потому что я хочу придумать разумную и последовательную систему соглашений об именах в будущем. Мне интересно услышать аргументы для систем любого типа.

Ответы [ 3 ]

2 голосов
/ 23 февраля 2011

Я склонен использовать _userName в качестве переменной и UserName в качестве свойства кода и в качестве идентификатора для текстового поля UserNameField . Мне легче работать с intellisense таким образом, вместо префикса, как мы делали в дни VB с txtUserName.

Редактировать: не называя его UserNameTextBox, но с UserNameField также легче работать, если вы хотите обменять поле (то есть TextBox) на другой элемент управления (хотя это может не применяться к этому примеру имени пользователя.

2 голосов
/ 23 февраля 2011

Венгерская нотация такова 1990-е годы ...; -)

Я бы использовал UserName для логики и userName для id.

1 голос
/ 23 февраля 2011

Для элементов управления я всегда добавляю такой префикс, как:

Textbox - txtName - я не использую tb, потому что это может сбить с толку, так как я использую tbl для HtmlTable

Флажок - cbIsNameRequired

RequiredFieldValidator - rfvName

Для переменных:

Имя

IsNameRequired

и т.д .. * * 1023

Все дело в том, чтобы привыкнуть к шаблону, но всегда иметь шаблон ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...