Форум: "Прочее";
Текущий архив: 2010.10.17;
Скачать: [xml.tar.bz2];
Вниз
Какой идиот придумал писать букву u перед pas модулями? Найти похожие ветки
← →
имя (2010-07-14 23:01) [40]Удалено модератором
← →
Leonid Troyanovsky © (2010-07-14 23:05) [41]Удалено модератором
← →
Кто б сомневался © (2010-07-15 00:03) [42]
> У нас это сделано, чтобы отделить движок от интерфейса.
>
> По папкам разбивать смысла не видно, префиксы самое то.
Как раз это наихудший вариант. Когда все свалено в одну папку - и модули движка, и остальные модули. Тем более в игростроении, где кол. модулей может зашкаливать.
← →
Омлет © (2010-07-15 00:33) [43]Пройдет еще много-много лет до того, как в Дельфи добавят поддержку пространств имен ))
← →
RWolf © (2010-07-15 00:40) [44]
> Кто б сомневался © (14.07.10 17:15) [0]
> Часто попадаются исходники, с буквой u перед именем pas
> модуля.Главное зачем?
Очевидно же — названия юнитов находятся в том же пространстве имён, что и остальные глобальные идентификаторы, и, если не изобрести спецправило для их именования, будем то и дело натыкаться на коллизии имён переменных и модулей.
← →
Омлет © (2010-07-15 00:45) [45]> Anatoly Podgoretsky © (14.07.10 20:11) [18]
Волюнтаризм попрошу не обижать.
← →
silver © (2010-07-15 01:03) [46]
> с префиксом *Form.pas
суффикс таки, ога
← →
antonn © (2010-07-15 01:14) [47]
> Тем более в игростроении, где кол. модулей может зашкаливать.
не могу сказать что я суперигродел, но в несложной игрушке у меня 143 юнита с одним префиксом (не считая форм и "внедвижковых" юнитов) и в одной папке. И это удобнее чем они бы были в разных папках
← →
Palladin © (2010-07-15 08:33) [48]Идентификатор. Как много в этом слове. Как много их в программе. Сотни, тысячи. Спасает область видимости. Сокращает количество, доступных в конкретном месте, идентификаторов. Но область видимости не говорит о расположении и принадлежности идентификатора, а префикс прекрасно выполняет эту задачу. Встретив в 1452 строке 6734 строчного файла код:
m_fCurrentPrice := lcGetItemCostByID(p_nIDItem) * p_nCount * UCommon.gl_fCoeff;
мне сразу понятно, что:
1. Я в методе класса (ибо есть идентификатор с префиксом m_)
2. Вещественному полю класса m_fCurrentPrice присваивается стоимость, получаемая private методом lcGetItemCostByID (lc от слова local) этого же класса по, переданному в параметрах, ID итема p_nIDItem, умноженная на количество итемов, которое тоже передается в параметрах в переменной p_nCount, и умноженная на некий коэффициент, находящийся в глобальной переменной gl_fCoeff, которая в свою очередь находится в модуле UCommon.
А встретив строчкуFCurrentPrice := GetItemCostByID(IDItem) * Count * Common.Coeff;
я бы нихера бы не понял, и долго лазил по коду изучая откуда это все вообще берется. И что это за Common.
Ку?
И не надо мне тут про Ctrl-Click, это, хоть и удобно, но ущербно - ибо дисциплина кодирования портится.
← →
Демо © (2010-07-15 09:25) [49]Удалено модератором
← →
antonn © (2010-07-15 09:25) [50]тут не про префиксы названия юнитов, случаем, говорят, а не про названия методов и переменных?
← →
RWolf © (2010-07-15 09:32) [51]
> Вещественному полю класса m_fCurrentPrice
не умаляя значимости сказанного, замечу только, что борландовский стиль кодирования предполагает обозначать поля классов первой буквой F, а параметры — буквой A.
← →
Игорь Шевченко © (2010-07-15 10:19) [52]Смотрите на Demos - источник знаний
← →
Anatoly Podgoretsky © (2010-07-15 10:20) [53]> Leonid Troyanovsky (14.07.2010 22:55:39) [39]
Это другое дело, это же не префикс, особенно u
Вообще венгров не люблю, они делают хороший гуляш и из программ тоже
← →
Anatoly Podgoretsky © (2010-07-15 10:22) [54]> Омлет (15.07.2010 00:45:45) [45]
Ну вот один говорит не упоминать (в нашем доме), другой вообще не обижать,
куда деться бедному татарину.
← →
Anatoly Podgoretsky © (2010-07-15 10:22) [55]> antonn (15.07.2010 01:14:47) [47]
Папки это логическое, а не физиологическое деление.
← →
Anatoly Podgoretsky © (2010-07-15 10:23) [56]> Palladin (15.07.2010 08:33:48) [48]
Тьфу на вас
← →
Anatoly Podgoretsky © (2010-07-15 10:24) [57]> Демо (15.07.2010 09:25:49) [49]
> Что меняется от того, что есть одинакого названные функции в разных
> модулях?
Появляются конфликты, иногда простые, а иногда очень сложные, когда голову
сломаешь прежде чем найдешь причину.
← →
Anatoly Podgoretsky © (2010-07-15 10:25) [58]> antonn (15.07.2010 09:25:50) [50]
Модули тоже подвластны конфликтам, тот же RX
← →
Anatoly Podgoretsky © (2010-07-15 10:26) [59]> RWolf (15.07.2010 09:32:51) [51]
А знаешь почему, и это совсем другая цель, в отличии от пропагадируемой
сейчас религии.
← →
Юрий Зотов © (2010-07-15 10:30) [60]Действительно - и какой идиот придумал венгерскую нотацию? Это же неважно, что в свое время практически весь мир признал ее удобной.
Подумаешь - весь мир, ерунда какая. Если весь мир признал - значит, и весь мир тоже идиоты. Кто б сомневался.
==================
Всегда интересовал вопрос - почему при таком огромном количестве гениальных программистов до сих пор мы используем буржуйский софт, а не наоборот?
← →
Anatoly Podgoretsky © (2010-07-15 10:39) [61]> Юрий Зотов (15.07.2010 10:30:00) [60]
Что тоже венгры виноваты?
← →
Юрий Зотов © (2010-07-15 11:05) [62]Делаем форму, как-то осмысленно ее называем. Логично было бы сохранить ее модуль под тем же именем - но не получится, IDE не разрешает. Тогда именуем модуль "uИмяФормы" - и все становится прекрасно.
Но придумал это, конечно же, идиот. Кто б сомневался?
← →
KilkennyCat © (2010-07-15 11:19) [63]у меня чаще всего всегда на У начинается. Унит1, Унит2 и т.д.
← →
sniknik © (2010-07-15 11:23) [64]> у меня чаще всего всегда на У начинается. Унит1, Унит2 и т.д.
пиши уж без сокращений - Унитаз1, Унитаз2 и т.д. ;)
только как тут быть с осмысленностью? если например форма/модуль хочется назвать "ванна"?
← →
Плохиш © (2010-07-15 12:13) [65]
> при таком огромном количестве гениальных программистов
Хм, а можно цифры озвучить?
← →
KilkennyCat © (2010-07-15 12:16) [66]
> sniknik © (15.07.10 11:23) [64]
гм... однако, ты прям телепат... я тут подумывал о варианте уйти работать сантехником.
← →
Юрий Зотов © (2010-07-15 12:20) [67]> Плохиш © (15.07.10 12:13) [65]
> Хм, а можно цифры озвучить?
Можно. Это каждый второй посетитель "мастаков" со стажем программирования от 2 до 3 лет.
:o)
← →
Leonid Troyanovsky © (2010-07-15 12:20) [68]
> Anatoly Podgoretsky © (15.07.10 10:39) [61]
> Что тоже венгры виноваты?
- Плохо, брат, ты мадьяров знаешь, сколько раз я тебе говорил!
С ними мы должны ухо держать востро.
--
Regards, LVT.
← →
Плохиш © (2010-07-15 12:30) [69]
> Юрий Зотов © (15.07.10 12:20) [67]
A, понятно :-)
← →
RWolf © (2010-07-15 13:38) [70]> Anatoly Podgoretsky © (15.07.10 10:26) [59]
> А знаешь почему, и это совсем другая цель, в отличии от пропагадируемой
сейчас религии.
Почему?
← →
Empleado © (2010-07-15 14:01) [71]Эх, в отпуск бы вас всех отправить, ну ей богу...
← →
Anatoly Podgoretsky © (2010-07-15 14:29) [72]> RWolf (15.07.2010 13:38:10) [70]
Потому что другая
← →
MonoLife © (2010-07-15 15:23) [73]обычно, обзываю файлы unit_u если модуль без формы и unit_f - если с формой..
А в именах форм ставлю всегда первой f..
Привык так и отвыкать не охота)
← →
имя (2010-07-15 18:35) [74]Удалено модератором
← →
Jeer © (2010-07-15 19:46) [75]Удалено модератором
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2010.10.17;
Скачать: [xml.tar.bz2];
Память: 0.59 MB
Время: 0.005 c