Форум: "Прочее";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
ВнизПрошу заценить новую статью Найти похожие ветки
← →
Marser © (2006-07-18 23:23) [40]> [39] jack128 © (18.07.06 23:12)
> tesseract © (18.07.06 14:44) [19]
> не я uShared, uMain,uAbout.
> есть модуль uSettings - в нем реализован класс настроек.
> Как назвать модуль с формой, с помощью которой эти настройки
> редактируются?
У меня первое - как раз модуль формы. Независимый модуль - просто Settings. По-другому делать не вижу смысля, точечная аннотация, ИМХО, от лукавого, очень длинно получается...
← →
Rouse_ © (2006-07-18 23:28) [41]
> К слову, местный Гаврила приучил меня пользоваться точечной
> натацией в названии модулей. Например, из текущего проэкта
> PropertyForm.Organization (форма, отображающая свойства
> организации), PropertyForm.Dongle (свойства электронного
> ключа)
Женя, что с твоей грамматикой? :)
ЗЫ: не точечной, а пространством имен aka NameSpace (если я правильно тебя понял), которое нормально стало поддерживаться только с 2005-ой Delphi.
← →
DiamondShark © (2006-07-18 23:35) [42]
> Контроль выполняется в обработчике события OnExit. Такой
> обработчик может выглядеть следующим образом:
>
> procedure TTestChildForm.Edit1Exit(Sender: TObject);
> begin
> if (Edit1.Text = "") and (not btbtnCancel.Focused) then
> Hints.ShowErrorHintEx(Edit1, "Вы должны ввести свои
> ФИО");
> end;
А если фокус никогда не попадёт в Едит1, то юзер так и не узнает, что он должен ввести?
Хм..
← →
Игорь Шевченко © (2006-07-18 23:38) [43]
> > Как назвать модуль с формой, с помощью которой эти настройки
>
> > редактируются?
SettingForm ?
← →
Джо © (2006-07-18 23:41) [44]Раз пошла такая пьянка, то обнародую и свои стандарты именования форм и их модулей. Имена форм образца [b]XXXForm[/b], модули — [b]uXXXForm[/b]. Раньше в названии формы использовал префикс Frm, теперь считаю более удобной упомянутую схему.
← →
Джо © (2006-07-18 23:41) [45]> [44] Джо © (18.07.06 23:41)
Sorry за неуместный BBCode :(
← →
grisme © (2006-07-18 23:53) [46]я обзываю с постфиксом: MainFrm, ApplyBtn, NameText..)
юниты: mainunit,CheckFunit..
А статья показалась просто "сведением общего", но иногда полезно почитать, сравнить себя..Пасыыба за статью..)
← →
Юрий Зотов © (2006-07-19 00:09) [47]Все чаще вспоминаю Чехова...
← →
jack128 © (2006-07-19 00:12) [48]Rouse_ © (18.07.06 23:28) [41]
Женя, что с твоей грамматикой? :)
Она у меня хромает. Нет, она здоровая. Но хромает (с)
Rouse_ © (18.07.06 23:28) [41]
не точечной, а пространством имен aka NameSpace (если я правильно тебя понял), которое нормально стало поддерживаться только с 2005-ой Delphi.
Гм. На пальцах, что такое Namespace ?? AFAIK, в Delphi for Win32 нету такого понятия. IDE c модули с точками в названии и седьмой версии нормально понимает. Правда Ctrl + Space не работает...
Игорь Шевченко © (18.07.06 23:38) [43]
SettingForm ?
Это противоречит стандарту tesseract"а и Marser"a
Marser © (18.07.06 23:23) [40]
очень длинно получается...
нормально. Для модулей это уж точно - не критично.
← →
Loginov Dmitry © (2006-07-19 00:25) [49]>[42] А если фокус никогда не попадёт в Едит1, то юзер так и не
> узнает, что он должен ввести?
> Хм..
Узнает. Обработчик щелчка на кнопку "Принять" направит его на путь истинный ;)
← →
Джо © (2006-07-19 00:27) [50]> [44] Джо © (18.07.06 23:41)
Сегодня у меня день из серии "пишу, но думаю о чем-то другом" :( В общем: имена форм XXXForm, их модули — XXXFormUnit.
← →
antonn © (2006-07-19 06:20) [51]для форм обычно пишу *Form либо Form*, главная форма всегда MainForm.
для лабелов L* или L_* (по аналогии и для других компонентов - чекбокс и комбобокс cb, панель p, радиобатон rb, батон B, табшиты TS, едиты E, имаджлисты IL). Для "самодостаточных" модулей, содержащих только процедуры и функции(рекорды и тп) название начинается на "_" (_scanline, _type). Кнопки "Ок" и "Отмена" всегда BOK и BNO.
почти никогда не пользовался битбаттоном, т.к. в D7 он неверно отрисовывается в теме ОС :)
но эти правила использую для относительно "серьезных" проектов, для тестирования и проверки какой то функции на тестовом проекте обхожусь встроенным "автоназыватором" :)
← →
Игорь Шевченко © (2006-07-19 10:45) [52]jack128 © (19.07.06 00:12) [48]
> Это противоречит стандарту tesseract"а и Marser"a
"Запасы у нас совсем истощились, консервы надоели, и нужно было подумать... об определении на жаркое наших петушков.
Но тут новая неприятность: встал вопрос о том, с которого начинать. Уж очень, знаете, дружные были петушки. Черного зажарить - белый скучать будет, белого зажарить - черный заскучает...
Я размышлял над решением этой проблемы, серьезно размышлял, но так и не пришел к должным выводам...
...Пришлось расширить комиссию. Кооптировали Лома. Назначили заседание. Я изложил сущность дела, познакомил собрание с историей вопроса, поднял, так сказать, материал. И не зря. Лом неожиданную такую трезвость взглядов и находчивость проявил в этом деле, что сразу всё, как говорится, встало на свои места.
Он и минуты не думал. Так, знаете, не колеблясь, прямо и говорит:
-Режьте черного.
- Позвольте, - говорим мы, - ведь белый скучать будет!
- А черт с ним, пусть скучает! - возражает Лом. - Нам-то какое дело?
И, знаете, пришлось согласиться. Так и сделали. ...Петушок оказался прекрасный, жирный, мягкий, - мы просто пальчики облизывали, пока его ели. Впрочем, и второй был не хуже"
(с) А. Некрасов
← →
tesseract © (2006-07-19 10:48) [53]
> Юрий Зотов © (19.07.06 00:09) [47]
Я тоже .
← →
Игорь Шевченко © (2006-07-19 10:51) [54]По именованию:
Имена классов форм начинаются с буквы f (например, TfMain, TfConnect), файлы с ними, соответственно, MainForm, ConnectForm, имена классов датамодулей начинаются с dm (TdmFoo, TdmBar), файлы с ними, соответственно, заканчиваются на Data (FooData, BarData), большинство файлов, содержащих только классы или описания интерфейсов, не имеют ни префикса, ни суффикса (Foo, Bar, Connect).
Почему так делается - искать удобно.
← →
Loginov Dmitry © (2006-07-20 07:55) [55]> antonn © (19.07.06 06:20) [51]
Кстати, вариант! Можно объекты, класс которых состоит из нескольких слов, называть прописными буквами с прочерком, например: TListBox - LB_List, TStatusBar - SB_Status и т.д. Удобно!
← →
antonn © (2006-07-20 11:37) [56]Loginov Dmitry © (20.07.06 7:55) [55]
да, в общем, так и получается CBleft - TCheckBox, CB_Left - TComboBox, само выходит:)
← →
Игорь Шевченко © (2006-07-20 11:38) [57]Loginov Dmitry © (20.07.06 07:55) [55]
В программах на Delphi не принято использовать символ подчеркивания таким образом.
← →
Prohodil Mimo © (2006-07-20 12:09) [58]Игорь Шевченко © (06.07.20 11:38) [57]
В программах на Delphi не принято использовать символ подчеркивания таким образом
кем и почему?
в своих программах использую типа такого: Main_Form (главная форма), Klas_Form (форма классификатора), Klas_AForm (форма добавления записи в классификатор) и т.п.
В именах переменных, процедур и функций подчёркивание никогда не использую.
← →
Nic © (2006-07-20 12:21) [59]А чем плохо обозначение CheckBox[ВписатьНужное]
Если открыть чужой проект и увидеть там CB_[ВписатьНужное], то не очень ясно CB - это ComboBox, CheckBox, CoolBar, или вообще что-то другое.
Я делаю так: главная форма - всегда MainForm в модуле Main.
Все остальные frm[ИмяФормы] в модуле Form[ИмяФормы]. Имена всех меню оставляю по умолчанию (раньше переименовывал, но после понял, что это ни к чему, т.к. N1, N2... Nk смотрится весьма компактно). Button1 переименовывается в Button[ОсмысленноеНазвание], все остальные компоненты также. Edit1 => Edit[ОсмысленноеНазвание]. Контекстные меню именуются произвольно, но тоже осмысленно.
← →
Nic © (2006-07-20 12:23) [60]Prohodil Mimo © (20.07.06 12:09) [58]
Если выделить регистром MainForm, то подчёркивание не очень нужно, т.к. читается и так хорошо. А вот в случае mainform такой разделитель очень кстати. Впрочем, дело вкуса.
← →
Игорь Шевченко © (2006-07-20 12:23) [61]Prohodil Mimo © (20.07.06 12:09) [58]
> кем и почему?
Кем - сообществом программистов, выработавшим Coding Style.
Почему - наверное по историческим причинам.
← →
Nic © (2006-07-20 12:24) [62]Прочие модули (без форм) называю произвольно.
← →
Nic © (2006-07-20 12:27) [63]Хотя, если модулей очкень много, неплохо продумать систему префиксов, чтобы в проекте было легче ориентироваться.
Иногда вижу проекты, где все модули Unit1, Unit2, Unit...; и формы тоже Form1, Form2, Form3.... Удивительно. А если в проекте будет больше сотни форм? :)
← →
Lamer@fools.ua © (2006-07-20 12:27) [64]>>Джо © (19.07.06 00:27) [50]
>В общем: имена форм XXXForm, их модули — XXXFormUnit.
Забавно. Я тоже так именую :-)
Правда, только формы. Элементы управления — префиксами.
>>Prohodil Mimo © (20.07.06 12:09) [58]
>кем...
Программистами :-)
>... и почему?
Ибо Pascal case.
← →
Eraser © (2006-07-20 12:55) [65]> [57] Игорь Шевченко © (20.07.06 11:38)
> В программах на Delphi не принято использовать символ подчеркивания
> таким образом.
Кстати насчет подчеркивания, вот недавно почитал про формат кода RSDN, так у них принято начинать с "_" имена private методов. Правда разработка ведется на C#. Кто-нибудь применяет это правило в Delphi?
← →
Jeer © (2006-07-20 13:02) [66]исторически сложилось - имена своих функций и процедур вне ООП завершаются "_".
← →
Джо © (2006-07-20 13:11) [67]> [64] Lamer@fools.ua © (20.07.06 12:27)
> >>Джо © (19.07.06 00:27) [50]
> Забавно. Я тоже так именую :-)
> Правда, только формы. Элементы управления — префиксами.
Забавно, но я тоже для названия эл. управления использую префиксы :o)
Т.е, lbCaption, edUserName, btnOK и т.п.
← →
antonn © (2006-07-20 14:04) [68]Nic © (20.07.06 12:21) [59]
А чем плохо обозначение CheckBox[ВписатьНужное]
оно не плохое, если привык так писать, то можно и так. "CB" быстрее пишется.
← →
Игорь Шевченко © (2006-07-20 14:13) [69]Eraser © (20.07.06 12:55) [65]
> Кстати насчет подчеркивания, вот недавно почитал про формат
> кода RSDN, так у них принято начинать с "_" имена private
> методов. Правда разработка ведется на C#. Кто-нибудь применяет
> это правило в Delphi?
В Delphi приняты другие стандарты. Зачем забивать голову лишним ?
← →
Jeer © (2006-07-20 14:25) [70]Джо © (20.07.06 13:11) [67]
> Забавно,
Это нормально
Как мне кажется, многие профессионально пишущие программисты, пользуются префиксной системой.
lbx - ListBox
cbx - CheckBox
ed - Edit
fm - Forma
frm - Frame
и тд.
← →
Eraser © (2006-07-20 14:35) [71]> [69] Игорь Шевченко © (20.07.06 14:13)
> В Delphi приняты другие стандарты. Зачем забивать голову
> лишним ?
на сколько я понял из http://rsdn.ru/article/mag/200401/codestyle.XML - знак подчеркивания это не столько стандарт C#, сколько стандарт RSDN, вот и стало интересно в целесообразности использования этого символа подчеркивания.
По-мне так это только затрудняет разработку, т.к. создает дополнительные сложности при переносе метода из закрытой секции в открытую и наоборот.
← →
Loginov Dmitry © (2006-07-20 16:38) [72]> В программах на Delphi не принято использовать символ подчеркивания
> таким образом.
Принято-непринято...
Зато уногда бывает удобно. Например приставка VLE_ довольно наглядно указывает, что это ValueListEditor. А если по рекомендации тех авторов (в статье), то получится vlstdtr - не наглядно.
Всетаки проще забить на такие рекомендации, и делать так, так нравится, ибо [48] :)
← →
Loginov Dmitry © (2006-07-20 16:48) [73]> ибо [48]
Чет-то меня глюкнуло.
Хотел набрать [52]
← →
tesseract © (2006-07-20 22:01) [74]> [52] Игорь Шевченко © (19.07.06 10:45)
"Приключения капитана Врунгеля" aka Буриданов осёл для незнакомых с философией
> Например приставка VLE_ довольно наглядно указывает, что
> это ValueListEditor.
а vleColor например ничуть не хуже, но как-то ближе к delphi.
← →
Anatoly Podgoretsky © (2006-07-20 22:28) [75]Сколько сионистов собралось в одной ветке
← →
Marser © (2006-07-21 00:00) [76]> [74] tesseract © (20.07.06 22:01)
> > [52] Игорь Шевченко © (19.07.06 10:45)
>
>
> "Приключения капитана Врунгеля" aka Буриданов осёл для незнакомых
> с философией
Я, кстати, об этом понятии узнал не из философии, а из "Воскресенья" Толстого и примечаний к нему.
← →
Slym © (2006-07-21 05:26) [77]Nic © (20.07.06 12:27) [63]
А если в проекте будет больше сотни форм?
В топку такой проект... Дробить на отдельные проекты и делать группу проектов... Меня немного корёжит когда вижу thebat.exe размером в 11.5Мб
← →
vidiv © (2006-07-21 09:47) [78]
> Это нормально
> Как мне кажется, многие профессионально пишущие программисты,
> пользуются префиксной системой.
>
> lbx - ListBox
> cbx - CheckBox
> ed - Edit
> fm - Forma
> frm - Frame
> и тд.
мне подуше делать приставки в зависимости от назначения:
ed.. - для едитов, мемов, комбов, чекбоксов и пр.
lb.. - для некоторых лабелов, значение которох меняется в runtime
bt - для кнопок
-
u - для юнитов
frm - для форм и фреймов (вторые использую очень редко)
остальне панель, лабелы оставляю как есть, или вообще name стираю
← →
Lamer@fools.ua © (2006-07-21 09:51) [79]>>Slym © (21.07.06 05:26) [77]
>Меня немного корёжит когда вижу thebat.exe размером в 11.5Мб
От winword.exe размером ~10 MB не корёжит?
← →
Игорь Шевченко © (2006-07-21 10:36) [80]Slym © (21.07.06 05:26) [77]
> В топку такой проект... Дробить на отдельные проекты и делать
> группу проектов...
Ты это заказчику расскажи - как ему будет кульно и рульно работать с отдельными проектами. Он тебя поймет, может, и денег заплатит.
В одном из моих проектов из 500 с лишним юнитов, где-то чуть больше трети - формы. И куды бедному крестьянину податься ?
> Меня немного корёжит когда вижу thebat.exe размером в 11.
> 5Мб
То есть, какой нибудь IBExpert в 13 мегабайт у тебя вызовет еще больше эмоций ?
Страницы: 1 2 3 вся ветка
Форум: "Прочее";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
Память: 0.63 MB
Время: 0.043 c