powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Флейм про оформление и begin-end
25 сообщений из 261, страница 7 из 11
Флейм про оформление и begin-end
    #40063492
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
Иногда удобно всё вместе, без разделения на декларацию и реализацию.
В любом случае, лучше иметь возможность, чем не иметь её

Нет, эту возможность нужно запретить международной конвенцией, как антигуманную. За кодовой лапшой напрочь теряется интерфейс типа. Чтобы просто понять что делает класс, нужно втыкать, втыкать и втыкать во всё это безумие.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063502
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kazantsev Alexey
Гаджимурадов Рустам
Иногда удобно всё вместе, без разделения на декларацию и реализацию.
В любом случае, лучше иметь возможность, чем не иметь её

Нет, эту возможность нужно запретить международной конвенцией, как антигуманную. За кодовой лапшой напрочь теряется интерфейс типа. Чтобы просто понять что делает класс, нужно втыкать, втыкать и втыкать во всё это безумие.

Если реализация метода короткая - зачем её прятать черте-куда? Должна быть возможность сделать разумно для разработчика.

"Пусть расцветают сто цветов" - (с).
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063503
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пример, кричащий: класс, реализующий интерфейс. Бессмысленное копирование из интерфейса декларации методов. Класс, возможно, расширяет интерфейс лишь одним-двумя методами. А ты поди отличи эти методы от всего мусора, подтянутого из интерфейса.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063508
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
Должна быть возможность сделать разумно для разработчика.

Благими намерениями... Будь такая возможность, короткими методами ограничиваться никто не будет (особенно, если точить некогда - пилить надо).

ъъъъъ
А ты поди отличи эти методы от всего мусора, подтянутого из интерфейса.

Отличить одно от другого, это уже потом, после того, как понял, что оно вообще делает. Давно взял за правило заключать реализацию интерфейсов в регионы.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063509
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kazantsev Alexey
Благими намерениями... Будь такая возможность, короткими методами ограничиваться никто не будет (особенно, если точить некогда - пилить надо).

Если не будут ограничиваться - значит, разработчики считают, что так делать правильно. Не нравится - не делай так . А если тебя заботят проблемы сопровождения чужого кода, то - "кто на что учился", и вообще, это проблема административная, а не техническая.

Когда-то создатель паскалей посчитали программистов несмышлеными идиотами, писающими под себя, и понаставили всюду квадратных колес и бессмысленных ограничений.
И в итоге, паскаль скатился до уровня ЯП для маргиналов.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063511
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
И в итоге, паскаль скатился до уровня ЯП для маргиналов.

Единственная причина того, что он скатился в эту позицию - то, что он хорошо получился у Борланда. Если бы Борланд вместо него написал крутой и замечательный Turbo C, весь мир бы сейчас работал на Visual Pascal.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063512
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
А если тебя заботят проблемы сопровождения чужого кода, то - "кто на что учился", и вообще, это проблема административная, а не техническая.

Проблемы в чужом болоте административно не решаются. Там своя администрация, со своим правильным видением.

ъъъъъ
Когда-то создатель паскалей посчитали программистов несмышлеными идиотами, писающими под себя, и понаставили всюду квадратных колес и бессмысленных ограничений.
И в итоге, паскаль скатился до уровня ЯП для маргиналов.

И в итоге появился сишарп. Fixed.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063517
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
fraks
Я бы еще понял если бы у меня контролы в виде массива были

И в чём проблема сделать их в виде массива? И, например, вместо шести строк ResetCodes, о которых шла речь выше, остаётся одна:

Код: pascal
1.
ResetCodes([Item_GoodMark1, Item_GoodMark2, Item_GoodMark3, Item_GoodMark4, Item_GoodMark5, Item_GoodMark6]);


Для меня такая строка нечитаема, не видно ни сколько в ней элементов, ни как они пронумерованы, ни какие там разделители.
Я бы записывал эту строку так:
Код: pascal
1.
2.
3.
4.
5.
6.
ResetCodes([ Item_GoodMark1, 
             Item_GoodMark2, 
             Item_GoodMark3, 
             Item_GoodMark4, 
             Item_GoodMark5, 
             Item_GoodMark6 ]);


при этом она все равно остается неуклюжей.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063518
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
fraks
под WnXP где этого PowerShell нету.

https://www.microsoft.com/ru-ru/download/details.aspx?id=16818

Это дополнительный софт, он исходно не установлен.
Если можно написать нужное на cmd и в системе ничего не трогать - это нормально.
Так же иногда использую финт - если на cmd выходит слишком заморочно, по каким-то причинам, то просто пишу консольную микроулилитку на delphi и вызываю ее из cmd.
Никакого лишнего тяжелого софта, все подконтрольно.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063519
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
fraks
У меня первым пунктом идет понимание что любое действие должно приносить пользу.

И это понимание снабжено религиозной верой в то, где есть польза, а где нет. Например, выше я упомянул про сокращение кода - и, уверен, этот фактор моментально перестал быть для тебя полезным.

fraks
С массивами фиксированного размера работал последний раз наверное в еще в фортране.

(пожимая плечами) Ну, для данных фиксированного размера это довольно естественное решение. Но если хочешь, можешь с работать с массивами переменного размера или вообще не с массивами.

Я постоянно работаю с массивами переменного размера. Я давно отказался от попыток работать с DataSet, вместо которого у меня самодельный компонент представляющий из себя, по сути, динамический массив рекордов. Если природа данных имеет неопределенное количество элементов - то использую именно его, но при этом и интерфейсно, это отображается либо в гриде либо в крайнем случае в списке. И сохраняется такое в конфиг соответственно, циклом. В рассматриваемом моем примере интерфейсная часть - несколько именованных пунктов меню, поэтому, с учетом что количество этих элементов ограничено как и по смыслу так и чисто физически - нет смысла делать гигантские меню - применять тут массив смысла никакого нет.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063540
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks
Для меня такая строка нечитаема, не видно ни сколько в ней элементов, ни как они пронумерованы, ни какие там разделители.

Да и незачем :) Достаточно понимать, что в ней все контролы этой группы. Впрочем, оформление здесь - не суть.

fraks
при этом она все равно остается неуклюжей.

Ну, если вспомнить, что идёт в качестве уклюжего варианта....
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063544
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rgreat
У меня пустая строка разделитель логических блоков внутри процедуры.
И наличие комментария не отменяет пользы пустой строки перед ним.

У меня так же.
rgreat
Между процедурами - 3 пустых строки.
А вот это я ненавижу, одной строки достаточно, и так все видно.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063547
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fraks

Я бы записывал эту строку так:
Код: pascal
1.
2.
3.
4.
5.
6.
ResetCodes([ Item_GoodMark1, 
             Item_GoodMark2, 
             Item_GoodMark3, 
             Item_GoodMark4, 
             Item_GoodMark5, 
             Item_GoodMark6 ]);



при этом она все равно остается неуклюжей.
Вот, как надо:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
ResetCodes(
  [
    Item_GoodMark1, 
    Item_GoodMark2, 
    Item_GoodMark3, 
    Item_GoodMark4, 
    Item_GoodMark5, 
    Item_GoodMark6
  ]
);
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063569
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer> Я был бы согласен с этим утверждением при условии,
softwarer> что с инструментом работают достаточно компетентные
softwarer> люди, которые не творят совсем уж глупостей.

Я и сам часто придерживаюсь подобного мнения, но
можно ведь добавить запрет (опцию) этого на уровне
проекта или директивы компилятора.

softwarer> Но в ситуации, когда фича, с одной стороны, не даёт
softwarer> заметных преимуществ при грамотном использовании

Ещё как даёт. Компактность, наглядность.


Kazantsev Alexey> За кодовой лапшой напрочь теряется интерфейс типа.
Kazantsev Alexey> Чтобы просто понять что делает класс, нужно втыкать,
Kazantsev Alexey> втыкать и втыкать во всё это безумие.

Я помню, что ты сторонник чистой декларации, да.
Автофолдинг спасёт нежелающих втыкать. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063570
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRock> rgreat > Между процедурами - 3 пустых строки.
> А вот это я ненавижу, одной строки достаточно, и так все видно.


Это дело вкуса. Многие предваряют заголовок процедуры
// **** строкой комментария *** -
этого вполне достаточно, наглядно и пр.
Хорошее решение для всяких Лиспов и пр. скриптов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063577
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ещё встречаются такие варианты
Код: pascal
1.
2.
3.
Begin

End;
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063578
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
Я и сам часто придерживаюсь подобного мнения, но можно ведь добавить запрет (опцию) этого на уровне проекта или директивы компилятора.

Во-первых, это никак не спасёт. Тот, кто собирается наплодить тонну говнокода - и опцию выставит. Ну а во-вторых, такие опции - в принципе плохое решение. Их можно принять, когда из языка убирается что-то плохое, но иногда нужна совместимость со старым кодом - как, например, когда убирали присвоения типизированным константам, но "новое плохое решение с опцией" ещё хуже, чем просто "новое плохое решение".

Гаджимурадов Рустам
Ещё как даёт. Компактность, наглядность.

Я достаточно поработал с языками, где это разрешено, и ни в своём коде, ни в коде других не ощутил пользы, выходящей за "вопрос вкусов". Когда на другой чаше весов объективный ощутимый вред... вкусы того не стоят, имхо.

Гаджимурадов Рустам
Это дело вкуса.

Не совсем. В разделителях должна быть логика. Если между процедурами делать три пустых строки - даже когда сама процедура состоит из трёх строк - значит, их же нужно делать между другими декларациями. Значит, их же нужно делать между вложенными процедурами (внутри которых, в свою очередь, будут сажать пустые строки). В итоге... думаю, код получится слишком уж разреженным. В том смысле, что слишком большая потеря площади экрана, считаемой в "непустых строках".

Гаджимурадов Рустам
Многие предваряют заголовок процедуры комментарием

Вот с этим согласен. Хорошая практика, близкая к обязательной. Хотя сволочное IDE здесь изрядно портит жизнь, поскольку просто обожает при автодополнении лепить новую процедуру между заголовком старой и относящимся к нему комментарием.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063579
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr
А ещё встречаются такие варианты
Код: pascal
1.
2.
3.
Begin

End;


Это стиль восьмидесятых. Я тоже так писал года наверное до 87-го. Современный вариант удобнее, но и тот вполне адекватен. По сути это замена цветового выделения ключевых слов, и когда она появилась - от такого написания ушли.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063584
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
Автофолдинг спасёт нежелающих втыкать. :)

Для автофолдинга нужна IDE. Я просматриваю чужой код (не только дельфийский, но и жабу и шарпы и плюсы), обычно, в far или mc. Вот, например, читать код оксидженовской rtl, которая написана в таком стиле, это ад, блин.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063592
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам

Это дело вкуса. Многие предваряют заголовок процедуры
// **** строкой комментария ***.
Так я тоже иногда делаю, но не всегда, только когда надо описань какие-то неоднозначные на первый взгляд нюансы процедуры. Например, из каких потоков ее можно или нельзя вызывать (для методов), или описание хитрых параметров.
Но если всё однозначно, подводных камней нет - то и названия процедуры хватает, коммент не нужен.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063596
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer> Тот, кто собирается наплодить тонну говнокода - и опцию выставит.

Не всегда нужно ориентироваться на всяких ламеров и обезьян.
Да, это будет проблемой, но если ты с ними не сталкиваешься -
тьо и ущерба (тебе) не будет или будет неощутимо.

softwarer> Ну а во-вторых, такие опции - в принципе плохое решение.
softwarer> "новое плохое решение с опцией" ещё хуже, чем просто
softwarer> "новое плохое решение".

Это такое НЛП - сделать сомнительный постулат и отталкиваться
от него, как от истины. Плохое оно для тебя (и ещё для ламеров и
обезьян, которых ты так опасаешься), для других - может оказаться
полезным/удобным/хорошим в определённых ситуациях.

В любом случае, даже если добавить эту возможность, по дефолту
заблокированную - всё равно в массе большинство не сразу станет
её использовать, просто по тенденции.

> Я достаточно поработал с языками, где это разрешено

Ну т.е. в том же шарпе - это плохо и неудобно?

> Не совсем. В разделителях должна быть логика.

Какая ещё логика в разделителях?

softwarer> Если между процедурами делать три пустых строки -
softwarer> значит, их же нужно делать между другими декларациями.
softwarer> Значит, их же нужно делать между вложенными процедурами

Вовсе не значит, ни то, ни другое. В разных ситуациях могут
(и должны, и существуют на практике) разные правила оформления,
комментирования и пр., в т.ч. могут быть разные разделители.
Лично мне не нравятся 3 пустые строки (ни перед методом, ни
где-либо ещё), но если кто-то их ставит - я бы не ожидал, что
он будет выткать их буквально везде вместо одной строки.

> Хотя сволочное IDE здесь изрядно портит жизнь, поскольку
> просто обожает при автодополнении лепить новую процедуру
> между заголовком старой и относящимся к нему комментарием.

Это ты, видимо, про какой-то баг времён ХЕ2/ХЕ3 говоришь,
в старых версиях этого не наблюдалось, IIRC (насчёт новых -
не знаю, исправили или нет).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063597
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kazantsev Alexey> Для автофолдинга нужна IDE. Я просматриваю чужой код

Мы всё-таки про Delphi говорим и теоретизируем...
Даже в твоём случае - тот же NPP умеет фолдинг
(и автофолдинг сделать не рокет-саенс).
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063603
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам
Мы всё-таки про Delphi говорим и теоретизируем...

Delphi 10.4.2 фолдит регионы:

Шёл 2021 год...
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063604
bk0010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
Единственная причина того, что он скатился в эту позицию - то, что он хорошо получился у Борланда. Если бы Борланд вместо него написал крутой и замечательный Turbo C, весь мир бы сейчас работал на Visual Pascal.
Не С, Бейсик. MS и Borland договорились прекратить развитие Quick Pascal и Turbo Basic соответственно.
...
Рейтинг: 0 / 0
Флейм про оформление и begin-end
    #40063608
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kazantsev Alexey> Delphi 10.4.2 фолдит регионы:

О да, я с этим ещё в ХЕ3 натерпелся.
Само ужасное - что "это" может как
портить код, так и вылетать с AV.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25 сообщений из 261, страница 7 из 11
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Флейм про оформление и begin-end
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]