Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.20;
Скачать: CL | DM;

Вниз

Система наименования компонентов   Найти похожие ветки 

 
_Начинающий_   (2004-06-04 18:07) [0]

Здравствуйте, Мастера. Прочитал книгу Тейксейра и Пачеко "Delphi. Руководство разработчика". Они пишут про наименование компонентов:


1. Удалите из имени компонента префикс T. Например, TButton превращается в Button.

2. Из полученного значение удалите все гласные буквы, за исключением первых букв слова. Например, Button превращается в bttn, а Edit превращается в edt.

3. Удалите сдвоенные согласные буквы. Например, bttn превращается в btn.


Все бы хорошо, но для компонентов типа TApplicationEvents получаются совершенно неудобоваримые имена. Как в таком случае поступаете вы? Может быть кто-то использует более совершенную схему? Если можно - приведите примеры. Или я не прав и такие длинные префиксы как aplctnevnts вполне нормальное явление?


 
panov ©   (2004-06-04 18:16) [1]

Я именую по-другому:

TButton            - bn<Назначение>
TBitBtn            - bb<Назначение>
TApplicationEvents - ae<Назначение>
TPaintBox          - pb<Назначение>
TSpeedButton       - sbn<Назначение>
TSpeedBar          - sb<Назначение>
TScrollBar         - sbr<Назначение>

и т.п.


 
VMcL ©   (2004-06-04 18:17) [2]

>>_Начинающий_  (04.06.04 18:07)

Лично я компоненты, которые обычно "существуют на форме" в едином экземпляре, называю просто: TMainMenu -> MainMenu, TApplicationEvents -> ApplicationEvents или AppEvents и т. п.

Префиксы, если ставлю, то по первым буквам слов, хотя и делаю исключения (eg.: bStart: TButton; bbStop: TBitBtn; miExit: TMenuItem; smiFile: TMenuItem; lvDir: TListView; eText: TEdit; lText: TLabel; stText: TStaticText и т. п.). Мне так понятней.

P.S. А вообще это дело вкуса и личного или коллективного удобства.


 
Anatoly Podgoretsky ©   (2004-06-04 18:35) [3]

А я не муча.сь, а отражаю суть - FindButton, SaveButton etc


 
_Начинающий_   (2004-06-04 19:01) [4]

2 panov ©   (04.06.04 18:16) [1]

А как будет Вашим способом именоваться TMenuItem с одинаковым Caption в TMainMenu и TPopupMenu? Просто хочется проследить некую зависимость...

2 VMcL ©   (04.06.04 18:17) [2]

> P.S. А вообще это дело вкуса и личного или коллективного
> удобства.

Как не странно, хочется чтобы было по "инструкции". Т.е набор определенных правил с помощью которых возможно дать уникальное и в то же время классифицированное имя компоненту.


 
vuk ©   (2004-06-04 19:03) [5]

1. Явно имена присваиваются только тем компонентам, к которым будет обращение из текста программы.
2. Для компонентов, отвечающих за работу с хранимыми процедурами префиксы не используются. Их имена в точности соответствуют тому, как процедуры называются в БД, а там своя система префиксов.

Для всего остального префиксы используются, но никогда не делаются длиннее 4 символов. Примерно так:

Кнопка (любая) - btn
TActionList - al
TAction - ac
TDataSet - ds
TPanel - pnl
TLabel - lbl


 
AlexG ©   (2004-06-04 20:12) [6]

TButton - btn<Описание>
TMainMenu - MainMenu, если одно; <Описание>Menu
TForm - frm<Описание>

Подход такой:
- Если елемент один - именуется полным своим типом;
- Если более 1 - префикс минимизируется до понятного и уникально идентифицирующего тип компонента и добавляется Смысл компонента. Если компонент служит декорацией, то с имененм не заморачиваемся...


 
Vlad ©   (2004-06-04 20:19) [7]

А вот вопрос: компонентам TLabel кто нибудь специально дает имена?
Ну к примеру, есть форма с кучей TEdit"ов, к каждому из них соотв. подпись в виде TLabel, она статична и не меняется программой.
Я обычно забиваю на это дело, и оставляю дефолтные имена :-)

Интересно, а как другие поступают ?


 
AlexG ©   (2004-06-04 20:23) [8]


> Vlad

Говорю:

> Если компонент служит декорацией, то с имененм не заморачиваемся...


 
panov ©   (2004-06-04 20:28) [9]

>_Начинающий_   (04.06.04 19:01) [4]

А как будет Вашим способом именоваться TMenuItem с одинаковым Caption в TMainMenu и TPopupMenu? Просто хочется проследить некую зависимость...

Объект TMainMenu будет именоваться mm, а с TpopupMenu - pm, к тому же Popup относятся к определенным компонентам, TItem"s будут начинаться с разных префиксов:

TMainMenu: mmFileOpen, mmFileSave etc..
TPopupMenu: pmfMainFileOpen, pmpbFileOpen,pbFileSave etc..


 
panov ©   (2004-06-04 20:31) [10]

>Vlad ©   (04.06.04 20:19) [7]
А вот вопрос: компонентам TLabel кто нибудь специально дает имена?

Да, если Tlabel несет смысловую нагрузку и меняется по ходу работы программы.

Например laCounter,laTime


 
Vlad ©   (2004-06-04 20:37) [11]

Вопрос возник потому, что слышал - в некоторых IT-конторах принудительно заставляют давать смысловые имена абсолютно всем компонентам (идеология такая).
Имеет ли это хоть какой-то смысл ?


 
DVM ©   (2004-06-04 20:43) [12]


> Имеет ли это хоть какой-то смысл ?

"Красивше" смотрится проект. Я лично стараюсь давать имена всему.


 
AlexG ©   (2004-06-04 21:02) [13]


> "Красивше" смотрится проект. Я лично стараюсь давать имена
> всему.

UnusedLabel1 etc.


 
Vlad ©   (2004-06-04 21:03) [14]


> AlexG ©   (04.06.04 21:02) [13]


> UnusedLabel1 etc.

Почему же Unused ? :-)
Она Used, только не Changed :-)


 
Anatoly Podgoretsky ©   (2004-06-04 21:07) [15]

Vlad ©   (04.06.04 20:37) [11]
Имеет, сопровождение дешевле


 
AlexG ©   (2004-06-04 21:10) [16]


> Anatoly Podgoretsky ©   (04.06.04 21:07) [15]
> Vlad ©   (04.06.04 20:37) [11]
> Имеет, сопровождение дешевле

Точно!, а я не сразу изюм заметил :)


 
Игорь Шевченко ©   (2004-06-04 22:51) [17]

У меня смесь из
Anatoly Podgoretsky ©   (04.06.04 18:35) [3]
и (частично)
vuk ©   (04.06.04 19:03) [5]

Если компонент на форме в единственном экземпляре, то убирается 1 из его автоматически генерируемого имени, например ActionList, MainMenu и т.д.



Страницы: 1 вся ветка

Текущий архив: 2004.06.20;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.048 c
1-1086518903
GanibalLector
2004-06-06 14:48
2004.06.20
Интерфейс как в Delphi?


1-1086627168
Chlavik
2004-06-07 20:52
2004.06.20
Таймер не хочет работать...


3-1085740525
Salik
2004-05-28 14:35
2004.06.20
Синтаксис


1-1086760977
James Bond
2004-06-09 10:02
2004.06.20
Как в TMaskEdit вставить картинку


14-1086256569
SergP
2004-06-03 13:56
2004.06.20
Нужен небольшой совет по CheckListBox