Size: a a a

2020 March 06

AI

Alexander Ivanov in Delphi & Lazarus
Darlok(Artem)
никто не мешает анонимку преобразовать в обычный метод в классе и всё так же передать в качестве аргумента, но что если в этом методе, при нормальной организации, происходит 2-3-4 вызова? т.е. 2-3-4 строчччки кода? Ради них городить целый отдельный метод? Не всегда рационально же
Интересно, как можно анонимку в метод класса преобразовать в рантайм?
источник

DB

Dmitry Belkevich in Delphi & Lazarus
Sergey Bodrov
Мое злобное мнение - любителям goto, with, арифметики указателей, анонимных функций и приведения типов - лучше писать на C++, там это норма и есть много других интересных штук.
всё хорошо, что к месту. with то я вообще массово использую
источник

D

Darlok(Artem) in Delphi & Lazarus
Alexander Ivanov
Интересно, как можно анонимку в метод класса преобразовать в рантайм?
а где шла речь о рантайме? мы, вроде как, обсуждали всё в ключе разработки в дизайн тайме
источник

AI

Alexander Ivanov in Delphi & Lazarus
Darlok(Artem)
а где шла речь о рантайме? мы, вроде как, обсуждали всё в ключе разработки в дизайн тайме
А вот про анонимки и не нравится мне их реализация.
источник

AS

Alexey Shumkin in Delphi & Lazarus
Dmitry Belkevich
всё хорошо, что к месту. with то я вообще массово использую
массово - обычно не синоним "к месту" )))))))))))))
источник

DB

Dmitry Belkevich in Delphi & Lazarus
у меня подходящих мест просто много 😂
источник

AS

Alexey Shumkin in Delphi & Lazarus
доколебались вы до конструкций языка )))
а я вот агрюсь на батонокидательство ))) что ваще странно в контесте того, что Делфи прям именно про это )))))
источник

GB

George Bakhtadze in Delphi & Lazarus
Sergey Bodrov
Мое злобное мнение - любителям goto, with, арифметики указателей, анонимных функций и приведения типов - лучше писать на C++, там это норма и есть много других интересных штук.
with-то за что? при осторожном применении может быть польза. а если еще IDE показывает что откуда берется, то вообще :)
за анонимки тоже уже сказали. просто синт. сахар для создания временного класса.
источник

DB

Dmitry Belkevich in Delphi & Lazarus
по поводу with. у меня вот получилось нарваться и без with на совершенно парадоксальную ситуацию. у меня в коде есть некоторое количество общих строчных функций (думаю как и у всех). и вот - забираю новый транк fpc, и оказалось что часть новых функций поименована точно так же как у меня в коде: DelSpace1, Copy2SpaceDel, Copy2Space, Copy2Symb, Copy2SymbDel, NPos и еще несколько. причем некоторые различаются по функциональности. а некоторые 100% совпадают в коде. ну, часть я, правда, сам утащил из RX'ов - DelSpace1, NPos. но остальные - полностью свои. ну и - собираю - и повылазили сразу вопросы. думаю - что такое - на ровном месте... посмотрел - а вот так. так что и без with бывают залеты
источник

GB

George Bakhtadze in Delphi & Lazarus
Dmitry Belkevich
по поводу with. у меня вот получилось нарваться и без with на совершенно парадоксальную ситуацию. у меня в коде есть некоторое количество общих строчных функций (думаю как и у всех). и вот - забираю новый транк fpc, и оказалось что часть новых функций поименована точно так же как у меня в коде: DelSpace1, Copy2SpaceDel, Copy2Space, Copy2Symb, Copy2SymbDel, NPos и еще несколько. причем некоторые различаются по функциональности. а некоторые 100% совпадают в коде. ну, часть я, правда, сам утащил из RX'ов - DelSpace1, NPos. но остальные - полностью свои. ну и - собираю - и повылазили сразу вопросы. думаю - что такое - на ровном месте... посмотрел - а вот так. так что и без with бывают залеты
проблема та же - засорение пространства имен
источник

DB

Dmitry Belkevich in Delphi & Lazarus
ну а с with я уже писал как нужно поступать: нужно следить. что бы в блоках не было 'стандартных' обращений - Width/Height/Size и т п. все поля/переменные - максимально частные, и шанс нарваться на проблемы сильно уменьшится, а полезность with остается
источник

DB

Dmitry Belkevich in Delphi & Lazarus
с другой стороны, замечено, что если в блоке with идет массовое обращение к какому-то 'объекту' - то есть большой шанс, что нужно в него этот код и переносить, что бы внутри работать с его членами, а не снаружи в with. я у себя так периодически рефакторю. и блок with может уйти полностью и solid лучше поддержан и вообще хорошо во всех смыслах
источник

AS

Alexey Shumkin in Delphi & Lazarus
Dmitry Belkevich
с другой стороны, замечено, что если в блоке with идет массовое обращение к какому-то 'объекту' - то есть большой шанс, что нужно в него этот код и переносить, что бы внутри работать с его членами, а не снаружи в with. я у себя так периодически рефакторю. и блок with может уйти полностью и solid лучше поддержан и вообще хорошо во всех смыслах
+ 👍
источник

DB

Dmitry Belkevich in Delphi & Lazarus
источник

DB

Dmitry Belkevich in Delphi & Lazarus
может кому будет интересно, пробежала статья
источник

AK

Andy Korg in Delphi & Lazarus
Евгений IceProduct
Подскажите пожалуйста, unigui приложение , на форме в run time создается  фрейм, во фрейме в run time создаются unipanel, как изменить высоту фрейма ? алгоритм я понимаю, но вот изменяя свойство Tuniframe.Height не чего не меняет, я так понимаю надо как то через Js код менять, как именно? тут запись скрина для ясности https://recordit.co/w9oLflRP6E
collapsed панель пробовали?
источник

ЕI

Евгений IceProduct in Delphi & Lazarus
Andy Korg
collapsed панель пробовали?
я так понимаю событие в unifrmae->clientEvent ->collapse про это?
источник

AK

Andy Korg in Delphi & Lazarus
Евгений IceProduct
я так понимаю событие в unifrmae->clientEvent ->collapse про это?
ага, точно не помню как называется
источник

ЕI

Евгений IceProduct in Delphi & Lazarus
Andy Korg
ага, точно не помню как называется
попробую по гуглить на эту тему, пока представления не имею как это использовать
источник

AK

Andy Korg in Delphi & Lazarus
Евгений IceProduct
попробую по гуглить на эту тему, пока представления не имею как это использовать
вообщем на клиентской стороне это делается. т.е. на js  надо будет небольшой скриптик написать.
источник