UI Element Naming - PullRequest
       9

UI Element Naming

0 голосов
/ 27 марта 2009

Какие соглашения об именах вы используете для элементов пользовательского интерфейса (включая диалоговые окна)?

Элементы управления: я использую [Описательное имя] [Тип элемента управления] (например, OKButton, MainTableLayout)
Windows: я использую окно [Описательное имя] (например, SearchWindow, CustomerListWindow)

Иногда я сокращаю имя типа элемента управления, если оно все еще разборчиво («Сетка» вместо «DataGridView»)

Каковы ваши соглашения и почему вы их используете?

Ответы [ 3 ]

1 голос
/ 27 марта 2009

Я делаю то же самое, что и вы, за исключением того, что я использую 3-4 буквенные сокращения, такие как Btn и Lbl для элементов управления.

Я использую их просто для удобства и удобства обслуживания, чтобы при появлении Intellisense я мог сразу выбрать вариант, который имел в виду, например, FirstNameTbx вместо свойства FirstName. Это не экономит много времени в долгосрочной перспективе, но все же помогает, и большинство людей, с которыми я работаю, ожидают, что так оно и будет.

1 голос
/ 27 марта 2009

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

0 голосов
/ 27 марта 2009

Я использовал как венгерскую нотацию (btnOK, grdCustomers и т. Д.), Так и немного другую версию, где все просто ui (uiOK, uiCustomers).

Мне нравится иметь тип впереди, потому что при использовании IDE вы можете быстро ввести что-то вроде "btn" из "ui", и оно будет фильтровать ваши элементы пользовательского интерфейса.

С одной стороны, я предпочитаю подход "ui", а не венгерский, потому что мой код не должен заботиться о типе моего элемента. Плюс, если я изменю grdCustomers на список (lstCustomers), мне придется изменить много кода.

С другой стороны, недостатком префикса «ui» ко всему является то, что вы получаете много дубликатов (у вас есть текстовое поле для имени клиента и метка для этого текстового поля, бот будет похож на uiCustomer).

...