Соглашение об именах Лежинского (или LNC ) — это вариант венгерской нотации, популяризированный консультантом Стэном Лежински специально для использования при разработке Microsoft Access . [1] Хотя соглашение об именах в настоящее время часто используется в сообществе Microsoft Access и является стандартом в программировании на Visual Basic , оно широко не используется где-либо еще.
Эти соглашения являются производными от более раннего набора соглашений, соглашений об именах Лежински/Реддика, первоначально разработанных в 1992 году Грегом Реддиком . В конце концов, у Лежински и Реддика возникли разные идеи о том, как следует разрабатывать соглашения, и они были разделены на два отдельных набора соглашений, второй из которых - Соглашения RVBA .
Как и во всех венгерских нотациях, здесь используются префиксы (называемые тегами ) для обозначения типа объектов и полей разработки базы данных . Общая структура венгерской нотации (названной в честь родной страны Чарльза Симони ) состоит в том, чтобы разбить имена объектов на следующие элементы:[префикс(ы)][тег]Базовое имя[Суффикс/Квалификатор]Теги написаны строчными буквами , а имя объекта — верблюжьим . Пробелы и символы подчеркивания не используются.
Поскольку соглашение об именах Лешинского является особой формой венгерской записи, те же общие преимущества применимы и к соглашению Лешинского.
Использование отличительных префиксов делает вашу базу данных самодокументируемой; когда вы увидите frmSales в коде VBA, вы будете знать, что он ссылается на форму, а когда вы увидите curSales , вы будете знать, что это переменная Currency. Выбирая запрос из раскрывающегося списка, вы будете знать, что запрос, начинающийся с qmak, является запросом на создание таблицы, а запрос, начинающийся с quni, — запросом объединения. Эта информация позволит вам избежать таких ошибок, как использование метода SetFocus (метода управления) с полем или попытка открыть таблицу.
- Поскольку соглашение об именах Лешинского является особой формой венгерской записи, те же общие недостатки применимы и к соглашению Лешинского.
- Изменения в дизайне базы данных могут потребовать полного переименования. Например, замена таблицы запросом потребует либо сохранения имени таблицы для запроса, либо прохождения всей базы данных с заменой имени таблицы именем запроса.
- При переносе базы данных в другую СУБД возникнут проблемы, если целевая СУБД не поддерживает имена CamelCase .
- Поскольку каждый объект одного типа начинается с одной и той же буквы, невозможно перемещаться по объектам в поле списка , вводя начальную букву.
Элементы соглашения об именах описаны в следующей таблице.
Компонент | Описание | Пример |
---|
Префикс(ы) | Строчная буква, добавляющая к тегу дополнительную информацию. | p для публичной переменной |
Ярлык | Трехбуквенная последовательность, обозначающая тип объекта. | столик для стола |
Базовое имя | Пару слов, описывающих объект. Если используется несколько слов, каждое начинается с заглавной буквы и между ними нет пробелов. | OutlookContacts – контакты, импортированные из Outlook. |
Суффикс (RVBA), Квалификатор (LNC) | Слово, дающее более конкретную информацию о предмете | По дате – данные сортируются по дате. |
Объект | Ярлык |
---|
Неполные объекты, резервные объекты или объекты, находящиеся в разработке. | _ или – (В некоторых версиях Access тире сортируется по началу списка объектов базы данных.) |
Скрытые системные объекты | zh |
Отображаемые системные объекты | зз |
Программно созданные временные объекты | зт |
Резервные копии объектов для последующего копирования или повторного использования. | zz |
Тип переменной | Ярлык |
---|
Локальная переменная | [без префикса] |
Локальная статическая переменная | с |
Переменная уровня модуля | м |
Открытая переменная в форме или модуле отчета | п |
Открытая переменная, объявленная в разделе «Объявления» стандартного модуля. | г |
Объект | Ярлык |
---|
Модуль класса | клс |
Форма | откуда |
Форма (диалог) | фдлг |
Форма (меню) | фмну |
Форма (сообщение) | фмсг |
Форма (подформа) | fsub |
Макрос | мкр |
Модуль | вниз |
Модуль | против |
Запрос (любой тип) | qry |
Запрос (добавить) | qapp |
Запрос (кросс-таблица) | qxtb |
Запрос (определение данных) | qddl |
Запрос (удалить) | Кдел |
Запрос (фильтр формы) | qflt |
Запрос (поиск) | qlkp |
Запрос (создать-таблицу) | qmark |
Запрос (выбрать) | qry (или qsel) |
Запрос (сквозной SQL) | qspt |
Запрос (объединение) | собака |
Запрос (обновление) | что |
Отчет | рпт |
Отчет (подотчет) | руб. |
Стол | стол |
Средний стол | trel |
Таблица (прилагается dBASE) | tdbf |
Таблица (прилагается Excel) | txls |
Таблица (прикреплена FoxPro) | tfox |
Стол (прилагается Lotus) | чувак |
Таблица (прилагается ODBC) | Тодб |
Таблица (прилагается Парадокс) | tpdx |
Таблица (прикрепленный SQL Server) | tsql |
Таблица (прикрепленный текст) | ttxt |
Таблица (поиск) | тлкп |
Страницы | страница |
Объект | Ярлык |
---|
Автономер (случайный непоследовательный) | идентификатор |
Автономер (идентификатор репликации) | ИДР |
Автономер (последовательный) | идентификаторы |
Двоичный | мусорное ведро |
Байт | byt |
Валюта | помещать |
Дата/Время | ДТМ |
Двойной | двухместный номер |
Гиперссылка | здравствуйте |
Целое число | интервал |
Длинный | СПГ |
Памятка | мем |
БЫТЬ | не будь |
Одинокий | петь |
Текст (символ) | чр |
Да/Нет (логическое значение) | и т. д. |
Объект | Ярлык |
---|
логическое значение | млрд |
Командная панель | ЦБР |
Элемент управления (общий; полезен при циклическом переключении элементов управления в форме или отчете) | КТЛ |
Валюта | помещать |
База данных | базы данных |
Двойной | двухместный номер |
Форма | откуда |
Целое число | интервал |
Длинный | СПГ |
QueryDef | qdf |
Отчет | рпт |
Одинокий | петь |
Снимок | snp |
Нить | ул. |
Стол | стол |
Тип (определяется пользователем) | тип |
Вариант | наш |
(также может использоваться в элементах управления ссылкой на код) Объект | Ярлык |
---|
Вложение | к |
Рамка связанного объекта | фрб |
Диаграмма (график) | чт |
Флажок | проверить |
Поле со списком | CBO |
Командная кнопка | cmd |
Пользовательский контроль | окх |
Рамка | от |
Гиперссылка | здравствуйте |
Изображение | изображение |
Этикетка | фунт |
Линия | Лин |
Список | первый |
Кнопка выбора (переключатель) | выбрать |
Группа опций | группа |
Страница (в элементе управления Tab) | страница |
Разрыв страницы | брк |
Прямоугольник (форма) | шп |
Подформа/отчет | суб |
Управление вкладками | вкладка |
Текстовое поле | текст |
Кнопка переключения | дата |
Кнопка | кнопка |
Несвязанный объектный фрейм | жена |
Некоторые типичные имена LNC для объектов базы данных, элементов управления и переменных
[ редактировать ] Имя объекта/переменной | Элементы именования LNC | Описание |
---|
tblСотрудники | тег + базовое имя | Таблица данных о сотрудниках |
qupdПродажи | тег + базовое имя | Запрос, обновляющий данные о продажах |
fsubDayMax | тег + базовое имя + квалификатор | Подформа, показывающая максимальный день |
intLines | тег + базовое имя | Целочисленная переменная для хранения значения, представляющего количество строк в таблице Word. |
CurSales | тег + базовое имя | Валютная переменная, содержащая значение продаж. |
pstrForm | префикс + тег + базовое имя | Публичная строковая переменная, содержащая имя формы. |
zztblКонтакты | префикс + тег + базовое имя | Резервная таблица «Контакты» для копирования и заполнения импортированными данными. |
Часть этой статьи основана на книге Хелен Феддема «Эксперт по индивидуальной разработке приложений Microsoft Access» , Wiley, ISBN 0-7645-5904-4 .