Идентификаторы Delphi по-венгерски

Ох, я в Венгрии по рынку похожу, На венгерских на румынок погляжу...

В Высоцкий. Инструкция перед поездкой за рубеж

Плохие идентификаторы, как и плохие имена, затрудняют жизнь людей и программ. Чтобы облегчить выбор сотрудник фирмы Майкрософт Чарльз Силош предложил весьма сложную систему составления имён объектов программы. Как известно, венгерский язык очень сложный, но «венгер­ской» эту систему прозвали не поэтому, просто Чарльз Силош по проис­хождению венгр.

 

Существует немало разновидностей этой системы, но мы остановимся на самой простой и внятной из них. Итак, «по-венгерски» любой идентифи­катор составляют из двух частей:

  • префикса, записанного строчными буквами, который указывает на тип объекта, и
  • спецификатора, начинающегося с прописной буквы.

Например, префикс iобозначает целый тип. Тогда координаты точки на экране можно хранить в двух переменных:

Var

iX, iY: integer; или

iXCoord, iYCoord: integer; или iCoordX, iCoordY: integer;

 

Если имеется в виду не точка, а мяч, то идентификатор легко приспосо­бить и к этому случаю:


Var
iXBalliYBallinteger;

 

Префикс может также отражать назначение объекта:

c(counter) - счётчик; f(flag) - переменная логического типа;

p(pointer) - указатель;

nnum(number) - число, количество чего-либо; cur(current) - текущее значение; tmp(temporal) - временное значение.

 

Вы можете выработать свою систему наименования, но некоторые распро­странённые префиксы желательно при этом учитывать.

b, flg

переменная логического типа bootean

b

переменная целого типа byte

i

переменная целого типа integer

g_

глобальная переменная

r

переменная вещественного типа single, double

a, arr

массив (array)

h

описатель (handle)

x,y,z

координаты точки

dx, dy

приращение координат

T

названия типов

F

названия полей

С

названия классов (стиль языка C++)

id, idx

индекс, идентификатор

frm

форма

cbo

комбинированный список

lst

список

txt

текстовое поле

cmd

командная кнопка типа TButton

sbt

командная кнопка типа TSpeedButton

sb

полоса прокрутки типа TScrollBar

ico, pic, img, bmp

рисунок

iml

список рисунков типа TImageList

mnu

меню

tmr

таймер типа TTimer

opt

переключатель

Этот список вы можете продолжить сами - место в таблице предусмотри­тельно оставлено!

Глобальные константы обычно записывают прописными буквами, разде­ляя отдельные слова знаком подчёркивания:


Const
MAX_WIDTH= 20;
MAX_HEIGHT= 24;

Ну, вот, теперь вы можете «обзывать» объекты строго по-научному!

������� ������ ��� dle ������� ��������� ������

Помоги проекту! Расскажи друзьям об этом сайте: