SASGIS - SAS.Планета | |||||
| View Issue Details | |||||
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0003455 | SAS.Планета | Рефакторинг / Refactoring | public | 13-06-2019 07:33 | 28-04-2020 09:35 |
| Reporter | vdemidov | ||||
| Assigned To | |||||
| Priority | none | Severity | trivial | Reproducibility | N/A |
| Status | new | Resolution | open | ||
| Platform | OS | OS Version | |||
| Product Version | 181221 | ||||
| Target Version | Fixed in Version | ||||
| Summary | 0003455: Упорядочить удаление объектов по FreeAndNil и просто .Free | ||||
| Description | В продолжении дискуссии по поводу правильного способа удаления объектов. Нужно ли применять FreeAndNil или достаточно просто вызова .Free Аргументация за FreeAndNil https://www.gunsmoker.ru/2009/04/freeandnil-free.html Вот еще ссылочка на дискуссию http://programmingmindstream.blogspot.com/2014/01/freeandnil.htm Ну а вот аргументация против http://www.nickhodges.com/post/Using-FreeAndNil.aspx | ||||
| Steps To Reproduce | Мое мнение использовать простое правило: Для удаления локальных переменных достаточно просто вызвать .Free, если нет обязательной необходимости в занулении. Для полей класса - вызывать FreeAndNil. Просто формулируется. Просто проверяется. Даже обычным поиском с RegExp по исходникам проекта. | ||||
| Additional Information | Текущее состояние: Free для полей класса - 13 вызовов. FreeAndNil для полей класса - 340 вызовов. Free для локальных переменных - 401 - вызовов FreeAndNil для локальных переменных - 52 вызовов Числа примерные, но видно что в принципе предложенное правило в общем соблюдается. У Zed есть возражение против излишнего применения FreeAndNil для всех полей класса, но как я понимаю нет возражений, против того что бы для локальных переменных использовать просто .Free | ||||
| Tags | No tags attached. | ||||
| Relationships | |||||
| Attached Files | |||||
| Issue History | |||||
| Date Modified | Username | Field | Change | ||
| 13-06-2019 07:33 | vdemidov | New Issue | |||
| 28-04-2020 08:54 | zed | Note Added: 0019800 | |||
| 28-04-2020 09:03 | vdemidov | Note Added: 0019801 | |||
| 28-04-2020 09:06 | zed | Note Added: 0019802 | |||
| 28-04-2020 09:35 | vdemidov | Note Added: 0019803 | |||
| 08-08-2025 13:25 | zed | Category | Рефакторинг => Рефакторинг / Refactoring | ||
| Notes | |||||
|
|
|||||
|
|
||||
|
|
|||||
|
|
||||
|
|
|||||
|
|
||||
|
|
|||||
|
|
||||