Size: a a a

2020 July 24

Ш

Шляпник in Delphi & Lazarus
Sergey SSP
на мой взгляд this увеличивает читабельность кода, хоть и тратишь на его написание время.
это если кроме тебя и привычной команды никто код читать не будет и он постоянно находится в работе, однако если код написали и могут забыть на год-два и в команде может меняться состав хотя бы с периодичностью 2-4 года, лучше писать Self, так проще потом читать легаси-код
источник

ГМ

Геннадий Малинин... in Delphi & Lazarus
FSource := CFileSource.Create; - создание экземпляра и передача указателя в FSource
источник

VA

Viktor Akselrod in Delphi & Lazarus
Шляпник
это если кроме тебя и привычной команды никто код читать не будет и он постоянно находится в работе, однако если код написали и могут забыть на год-два и в команде может меняться состав хотя бы с периодичностью 2-4 года, лучше писать Self, так проще потом читать легаси-код
есть пруфы на такие требования?
источник

ГМ

Геннадий Малинин... in Delphi & Lazarus
Шляпник
это если кроме тебя и привычной команды никто код читать не будет и он постоянно находится в работе, однако если код написали и могут забыть на год-два и в команде может меняться состав хотя бы с периодичностью 2-4 года, лучше писать Self, так проще потом читать легаси-код
Так вроде Self <> this
источник

SS

Sergey SSP in Delphi & Lazarus
Ок... спасибо..  Я последний раз паскашь рукапи щупал уже 20 лет назад... помогал курсовики делать, но тогда там ООП не давали даже 😊
источник

ГМ

Геннадий Малинин... in Delphi & Lazarus
this может указывать на вызываеющий класс
источник

Ш

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

ГМ

Геннадий Малинин... in Delphi & Lazarus
Self - только в текущем классе
источник

VA

Viktor Akselrod in Delphi & Lazarus
Шляпник
разве что на опыт.  Пришлось работать 2 года с 20-летним легаси кодом, который за эти годы разросся мама не горюй
странный опыт.
источник

Ш

Шляпник in Delphi & Lazarus
Viktor Akselrod
странный опыт.
нуу, какой есть :) и скажу очень весело в нём копаться когда клиент с горячей линии кипишует ;)
источник

SS

Sergey SSP in Delphi & Lazarus
еще раз спасибо за подсказки нубу 😊 заработало...
источник

Ш

Шляпник in Delphi & Lazarus
Геннадий Малинин
this может указывать на вызываеющий класс
это тонкости C# был вопрос про аналогию, а не полное соответствие. Аналогия в том, что в конструкторе, что this, что Self указывают на экземпляр класса.
источник

I

Igor in Delphi & Lazarus
Шляпник
Так-то оно так, но для чтения кода в будущем с Self читать проще и быстрее - визуальное разделение полей и свойств класса с прочими переменными
для этого используется префикс F
источник

ГМ

Геннадий Малинин... in Delphi & Lazarus
Шляпник
это тонкости C# был вопрос про аналогию, а не полное соответствие. Аналогия в том, что в конструкторе, что this, что Self указывают на экземпляр класса.
Да, но толку использовать Self внутри самого себя? Обычно это используется для передачи самого себя
источник

Ш

Шляпник in Delphi & Lazarus
в целом конечно согласен. что обилие Self могут перегрузить код - во всём стоит соблюдать меру.
источник

Ш

Шляпник in Delphi & Lazarus
Sergey SSP
но вот что меня смущает, так это в том, что сообщение об ошибке не информативно.
источник

SS

Sergey SSP in Delphi & Lazarus
Это да....
источник

Ш

Шляпник in Delphi & Lazarus
Это как в Делфе может упасть ошибка "Разрушительный сбой" и ищи-свищи в чём дело :)
источник

VA

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

SS

Sergey SSP in Delphi & Lazarus
Тогда еще вопрос.. меня смущает что выражения: file_len.ToString и file_len.ToString() - одинаково работают..... по идее ToString() - то метод, тут скобки обязательны....
источник