Size: a a a

2020 September 24

RS

Renat Suleymanov in Delphi & Lazarus
Дженерики не более громоздки в FPC, а более читабельны. Работают по сравнительным тестам быстрее чем в Дельфи (попадалось давно в сравнении) в связи с тем, чтто представляют по сути из себя шаблоны кода. Да, бинарник может будет на кбайт чуть больше, ну что уж поделать ))
Мне жаль, что дженерики освоил достаточно поздно, очень часто выручает \
источник

СП

Сергей Пятыгин... in Delphi & Lazarus
Добрый день! Кто-то может поделиться актуальной версией пакета ID: 21909, DecimalRounding (JH1) by John Herbster.
https://cc.embarcadero.com/Item.aspx?id=21909.
Интересует в частности DecimalRoundExt для математического округления.
Или кодом аналогичной функции округляющей по "математическому" правилу.
источник

GB

George Bakhtadze in Delphi & Lazarus
Igor
в дельфях вызов дженерик метода медленнее вызова обычного?
обычно нет, хотя эмба умудрилась тут создать нюансы
источник
2020 September 25

Д

Дмитрий in Delphi & Lazarus
Renat Suleymanov
Дженерики не более громоздки в FPC, а более читабельны. Работают по сравнительным тестам быстрее чем в Дельфи (попадалось давно в сравнении) в связи с тем, чтто представляют по сути из себя шаблоны кода. Да, бинарник может будет на кбайт чуть больше, ну что уж поделать ))
Мне жаль, что дженерики освоил достаточно поздно, очень часто выручает \
И как же они выручают то?) дольше код читается? (А вы любите читать?) дольше отладка? (А у вас много времени?)
источник

RS

Renat Suleymanov in Delphi & Lazarus
Дмитрий
И как же они выручают то?) дольше код читается? (А вы любите читать?) дольше отладка? (А у вас много времени?)
Как-то странно говорить про такие простые вещи. Упрощает кодирование. Использование готовых дженериков, как правило это списки, хешированные и не очень. Также создание своих дженериков для создание тех же самых шаблонов кода. КОд не читается дольше. Наоборот. Очевидно же.
источник

SB

Sergey Bodrov in Delphi & Lazarus
На больших проектах женерики действительно затрудняют чтение кода и затрудняют отладку. Вся польза только на этапе написания, экономят десяток минут на создании классов контейнеров.
источник

VA

Viktor Akselrod in Delphi & Lazarus
я правильно понимаю, что рассуждения про вредность дженериков это из той же серии, что SysUtils не нужен, т.к. прибавляет лишние килобайты в конечный файл?
источник

AK

Alexey Kulakov in Delphi & Lazarus
Речь скорее не о вреде генерикив, а о том что не всегда в них есть необходимость
источник

SB

Sergey Bodrov in Delphi & Lazarus
Мне нравится синтаксис объявления обычного array.
источник

VA

Viktor Akselrod in Delphi & Lazarus
Alexey Kulakov
Речь скорее не о вреде генерикив, а о том что не всегда в них есть необходимость
когда говорим о дженериках в первую очередь вспоминаем о списках.
неужели для тебя нет разницы по удобству  между TList и TList<T>?
источник

VA

Viktor Akselrod in Delphi & Lazarus
Sergey Bodrov
Мне нравится синтаксис объявления обычного array.
а синтаксис обобщенных массивов не нравится? 🙂
источник

SB

Sergey Bodrov in Delphi & Lazarus
TList of T
источник

RS

Renat Suleymanov in Delphi & Lazarus
Sergey Bodrov
На больших проектах женерики действительно затрудняют чтение кода и затрудняют отладку. Вся польза только на этапе написания, экономят десяток минут на создании классов контейнеров.
На счет отладки может быть... Хотя с дженериками проблем именно у меня особо не было. Я их использую только по назначению, когда они реально облегчают написание кода. По поводу затрудняют чтение кода категорически не согласен. Более лаконичный код и читать проще. Не понимаю этих предубеждений.
источник

RS

Renat Suleymanov in Delphi & Lazarus
Alexey Kulakov
Речь скорее не о вреде генерикив, а о том что не всегда в них есть необходимость
Так с этим никто и не спорит. Далеко не в каждом проекте я их использую... В либах с основном
источник

RS

Renat Suleymanov in Delphi & Lazarus
Viktor Akselrod
когда говорим о дженериках в первую очередь вспоминаем о списках.
неужели для тебя нет разницы по удобству  между TList и TList<T>?
+
источник

RS

Renat Suleymanov in Delphi & Lazarus
Sergey Bodrov
TList of T
Как бы ты реализовываешь хешированные мэпы тип - другой тип без использования дженериков?
источник

RS

Renat Suleymanov in Delphi & Lazarus
Renat Suleymanov
Как бы ты реализовываешь хешированные мэпы тип - другой тип без использования дженериков?
Пишешь отдельного наследника, выделяешь под это целый модуль. И так для каждого типа?
источник

SB

Sergey Bodrov in Delphi & Lazarus
Viktor Akselrod
когда говорим о дженериках в первую очередь вспоминаем о списках.
неужели для тебя нет разницы по удобству  между TList и TList<T>?
Поначалу удобно, что вместо структуры класса и нескольких похожих методов - всего одна строка со специализацией. Но при дальнейшей работе уже начинают в глазах рябить эти <T>
источник

SB

Sergey Bodrov in Delphi & Lazarus
Renat Suleymanov
Как бы ты реализовываешь хешированные мэпы тип - другой тип без использования дженериков?
THashMap of IPair
источник

VA

Viktor Akselrod in Delphi & Lazarus
Sergey Bodrov
Поначалу удобно, что вместо структуры класса и нескольких похожих методов - всего одна строка со специализацией. Но при дальнейшей работе уже начинают в глазах рябить эти <T>
что там рябит, если ты бОльшую часть времени используешь уже готовые классы просто объявляя специализацию?
источник