-
И вообще не сишниковское дело контейнеры изобретать.
-
> уже проще
Согласен. Не пришло в голову.
> я далеко не сишник,
Да Паладин вообще оформляет код особым образом, помню спорили остался при своем мнении :)
-
> Начинать имена private-полей с m_ - это сразу выдает латентного сишника
да да. а упражнение: стоя коснутся пальцами рук пальцев ног, выполненного мужчиной сразу выдает в нем латентного гомосексуала. В моем code convention существует четкое разделение идентификаторов на категории: 1 private и protected члены класса m_ 2 параметры процедур/функций/методов p_ 3 локальные для процедур/функций/методов (без префиксов) 4 глобальные g_ Зачем мне это нужно и почему это так: Есть такая вещь в IDE - Code completion, так вот, дабы обратится не суть помня полное название например приватного члена класса мне достаточно набрать m_ и нажать Ctrl-Space. Я вижу все доступные приватные члены класса. В отличии от боландовского F, кода вылезе все что на F. А на кой мне этот поток мусора? Нужен параметр функции - набирать который долго. Та же операция p_ Второй момент: Я четко вижу, в методе передается параметрами два идентификатора, значения которых я должен приравнять к private или protected членам класса вот и пишем m_nVar1:=p_nVar1;
m_strVar2:=p_strVar2; позже возвращаясь к этому коду я сразу моментально для себя делаю вывод, ага, идет назначение приватным членам класса значений переданных параметрами. А не: мля!!!! чего же я тут кому присвоил то!!! и не лезу по Ctrl-Click по всем переменным, где же они объявлены то... все эти категории обеспечивают наиболее лаконичную самодокументацию кода... этот кусочек моего code convetion только для переменные и в сокращенном виде ) он оформления не касается... хотите доводов по оформлению? их есть у меня. по желанию выскажусь.
-
Palladin © (09.04.08 20:00) [22]
> этот кусочек моего code convetion только для переменные > и в сокращенном виде ) он оформления не касается... хотите > доводов по оформлению? их есть у меня. по желанию выскажусь. >
Видишь ли, у Борланда тоже есть code conventions, и у этих conventions есть одна приятная особенность - они более распространены. Следовательно легче читаются и воспринимаются. Когда человек пишет для себя или для узкого круга лиц - проблем нету, когда эти conventions выходят наружу вот тут и начинается ступор восприятия. Будь подобный код написан на .Net-овском языке, я б слова не сказал - там они все с m_ начинаются. А по собственному опыту - заниматься, пытаясь понять логику программы, переводом чужой конвенции в привычную - это делать двойную работу. Какими бы благими намерениями не была выстлана чужая конвенция.
-
> Игорь Шевченко © (09.04.08 20:56) [23]
Ну это уже другая опера. Convensions борланда это ее. Пришел в мою команду - будь добр постигни мою. Я приду в другую команду подчиненным - постигну их правила. Приду ведущим - гляну на состяние дел и либо оставлю текущие, либо, если все жестоко требует рефакторинга, переведу на свои. Многие соглашаются, что они энергономичней (по моему так пишется :) )и оптимальней как при работе в среде так и самодокументировании. Ну а зоопарк. Не знаю. Благодаря этому зоопарку я вижу где мое, а где нет.
-
Palladin © (09.04.08 21:15) [24]
> Пришел в мою команду - будь добр постигни мою.
А скажи, если Delphi чего сгенерирует по Code Completion, ты тоже на свой лад потом переписываешь ?
Много лет я писал if foo then begin - старая сишная привычка, даже основание имелось для такого написания - строчек меньше выходит. С тех пор, как перешел на D2006, пишу if foo then begin
ПОТОМУ ЧТО ОНО МНЕ САМО ПРЕДЛАГАЕТ. А исправлять за сгенерированным - нунафиг, есть более интересные занятия.
-
Я конечно понимаю, что это все религия, но тем не менее :)
-
) ну так это сразу понятно было, что религия началась... а по поводу
> А скажи, если Delphi чего сгенерирует по Code Completion, ты тоже на свой лад потом переписываешь ?
Смотря что она генерирует. Модули форм я не трогаю. Как сгенерило так сгенерило. Мухи отдельно котлеты отдельно. Т.е., опять же, при возврате в прошлое по прошествии времени, прекрасно видно, что среда, а что я. Как completion генерирует по Ctrl-Alt-C меня не устраивает, потому не пользуюсь. Соответственно отключу все остальные нововведения completion'а в среде, выше чем d8... вот только мучают меня сильные сомнения в необходимости ухода с d6 выше чем d7...
Я не написал ни одной серьезной программы на другом ЯВУ и семейству Turbo паскаля посвятил всю свою жизнь. Больно видеть как все особенности и изюминки этого семейства расстворяются в создаваемом ширпотребе для армии посредственностей...
Посмотрим что наваяет cg. Пока не впечатляет...
-
Palladin © (09.04.08 23:17) [27]
> Больно видеть как все особенности и изюминки этого семейства > расстворяются в создаваемом ширпотребе для армии посредственностей. > ..
Тут я с тобой сильно не согласен, потому что среда с каждым выпуском (исключая D2005) делает работу программиста более удобной, избавляя его от рутинной работы. Мне удобно, когда код частично формируется за меня, избавляя от необходимости писать сначала объявление свойства в классе, а потом его реализацию, пусть даже простым копированием - я на эти действия не трачу времени.
А посредственности, поверь, могут на любом языке писать.
> Я не написал ни одной серьезной программы на другом ЯВУ
У меня разнообразие языков было несколько больше, но я не видел среды, аналогичной Delphi, где можно было бы с той же степенью удобства реализовывать свои замыслы. Может, я прошел мимо Visual Basic'а - говорят, там тоже удобно.
-
> Игорь Шевченко (10.04.2008 00:12:28) [28]
Там пожалуй удобнее, я радовался когда свой сайт писал для ASP.NET
|