Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Конвенция именования Лесзински (или LNC) — это вариант венгерской нотации, популяризированный консультантом Стэном Лесзински специально для разработки в Microsoft Access. Хотя в настоящее время эта конвенция часто используется в сообществе Microsoft Access и является стандартом в программировании Visual Basic, она не получила широкого распространения в других областях. Данные правила выведены из более раннего набора правил, конвенций Лесзински/Реддика, первоначально разработанных Грегом Реддиком в 1992 году. В конечном итоге у Лесзински и Реддика возникли разногласия относительно развития этих правил, что привело к разделению на два отдельных набора конвенций, другим из которых является конвенция RVBA. Как и во всех системах венгерской нотации, она использует префиксы (называемые тегами) для обозначения типа объектов и полей разработки баз данных. Общая структура венгерской нотации (названной в честь родной страны Чарльза Симоньи) предполагает разбиение имен объектов на следующие элементы:
[префикс(ы)][тег]ИмяОбъекта[Суффикс/Определитель]
Теги пишутся строчными буквами, а имя объекта — в стиле camelCase. Пробелы и символы подчеркивания не используются.
The Leszynski naming convention (or LNC) is a variant of Hungarian notation popularized by consultant Stan Leszynski specifically for use with Microsoft Access development. Although the naming convention is nowadays often used within the Microsoft Access community, and is the standard in Visual Basic programming, it is not widely used elsewhere. The conventions are derived from an earlier set of conventions, the Leszynski/Reddick naming conventions, originally developed in 1992 by Greg Reddick. Eventually, Leszynski and Reddick had different ideas about how the conventions should be developed, and split into two separate sets of conventions, the other being the RVBA Conventions. As in all Hungarian notations, it uses prefixes (called tags) to indicate the type of objects and database development fields. The general structure of Hungarian notation (named after Charles Simonyi's native country) is to break down object names into the following elements:
[prefix(es)][tag]BaseName[Suffix/Qualifier]
The tags are lower case and the object name is camel case. Spaces and underscores are not used.
Преимущества
Поскольку соглашение об именовании Leszynski является особой формой венгерской нотации, к соглашению Leszynski применимы те же общие преимущества. Использование отличительных префиксов делает вашу базу данных самодокументирующейся: увидев frmSales в коде VBA, вы поймете, что это ссылка на форму, а увидев curSales – что это переменная типа Currency. При выборе запроса из выпадающего списка вы будете знать, что запрос, начинающийся с qmak, является запросом для создания таблицы, а запрос, начинающийся с quni – запросом объединения. Эта информация поможет вам избежать ошибок, таких как применение метода SetFocus (метод элемента управления) к полю или попытка открыть таблицу.
Since the Leszynski naming convention is a special form of Hungarian notation the same general advantages also apply to the Leszynski convention. The use of distinctive prefixes makes your database self documenting; when you see frmSales in VBA code, you will know that it references a form, and when you see curSales you will know that it is a Currency variable. When selecting a query from a drop down list, you will know that a query starting with qmak is a make table query, while one starting with quni is a union query. This information will allow you to avoid errors such as using the SetFocus method (a control method) with a field, or trying to open a table.
Недостатки
Поскольку соглашение об именовании Leszynski является частным случаем венгерской нотации, к соглашению Leszynski применимы те же общие недостатки. Изменения в структуре базы данных могут потребовать массового переименования объектов. Например, замена таблицы запросом потребует либо сохранения префикса "tbl" для запроса, либо последовательной замены префикса "tbl" на имя запроса во всей базе данных. При переносе базы данных в другую СУБД могут возникнуть проблемы, если целевая СУБД не поддерживает имена в стиле CamelCase. Поскольку все объекты одного типа начинаются с одной и той же буквы, невозможно осуществлять навигацию по объектам в раскрывающемся списке, вводя начальную букву.
Since the Leszynski naming convention is a special form of Hungarian notation the same general disadvantages also apply to the Leszynski convention. Changes in database design may require wholesale renaming. For example, replacing a table with a query would involve either retaining the tbl name for the query, or going through the entire database replacing the tbl name with a query name. When transferring the database to a different DBMS, problems will arise if the target DBMS does not support CamelCase names. As every object of the same type starts with the same letter, it is not possible to navigate through the objects in a List box by typing the beginning letter.
Элементы
Элементы соглашения об именовании описаны в следующей таблице. КомпонентОписаниеПримерПрефикс(ы)Строчная буква, добавляющая дополнительную информацию к тегу, например, 'p' для публичной переменной.ТегПоследовательность из трех букв, указывающая тип объекта, например, 'tbl' для таблицы.Базовое имяСлово или два, описывающие объект. Если используется несколько слов, каждое начинается с заглавной буквы и слова пишутся слитно, без пробелов.OutlookКонтакты – контакты, импортированные из OutlookСуффикс (RVBA), Квалификатор (LNC)Слово, дающее более конкретную информацию об объекте.ByDate – данные отсортированы по дате.
The elements of the naming convention are described in the following table. ComponentDescriptionExamplePrefix(es)A lowercase letter that adds extra information to the tagp for Public variableTagA three letter sequence indicating the object typetbl for tableBaseNameA word or two describing the object. If several words are used, each starts with a capital letter, and there are no spaces between themOutlookContacts – contacts imported from OutlookSuffix (RVBA), Qualifier (LNC)A word giving more specific information about an objectByDate – the data is sorted by date
Основные префиксы объектов LNC
Неполные объекты ObjectTagIncomplete, резервные объекты или объекты, находящиеся в разработке, или – (В некоторых версиях Access, дефисы сортируются в начале списка объектов базы данных.) Скрытые системные объектыzhОтображаемые системные объектыzsПрограммно созданные временные объектыztРезервные копии объектов для последующего копирования или повторного использованияzz
ObjectTagIncomplete objects, backup objects, or objects that are under development or – (In some versions of Access, dashes sort to the beginning of the database object list. )Hidden system objectszhDisplayed system objectszsProgrammatically created temporary objectsztBackup copies of objects, for later copying or reusezz