|
|
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Dmitry Arefiev Вам на ночь глядя: https://www.google.com/search?client=firefox-b-d&q=nick hodges freeandnil Комментарий на рандомном сайте прикольный: знаем, знаем. это тот ник, который учит всех не использовать FreeAndNil потому что “а зачем?”. баааальшой спец, которого даже из такой сомнительной конторы как эмбаркадеро поперли.:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 02:06 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
asviridenkov, Ну всё правильно для JS если один node является строкой, то происходит concat. Притом, на стадии пред компиляции происходить проверка, является ли строка - строкой ? Или же это число, или что - то ещё. Но вот для других языков 4 == "4text" будет = true так же как и 8 в сложение. Но вот если строка идёт спереди "text4", то она не является числом, и мы не можем получить concat в виде 44text и получаем просто 4 Это азы, это знать надо перед тем как начать программировать на языке (Уточнив приоритеты) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 03:01 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный, a+b <> b+a ну да, все верно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 03:10 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
asviridenkov, javascript 44 == "44" = true 44 == "44d" = false Возьмём к примеру php 44 == "44" = true 44 == "44d" = true 44 == "d44" = false 44 + "44" = 88 44 + "44d" = 88 44 + "d44" = 44 Для js будет понятно, что там в любом случае concat string ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 03:19 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
В lua к примеру со строкой вообще нельзя сравнить число, будет false ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 03:27 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Господа, вы немного не в том направлении ушли :) Обсуждение той статьи заслуживает отдельной ветки, даже может быть и в разделе Delphi, но лучше - в разработка, я с ней полностью согласен, но это не тема топика. Ссылка была приведена только для главного посыла:авторПотому что это частный случай задачи коммивояжера — ты НИКОГДА не можешь предусмотреть все кейсы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 09:24 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный 44 + "44" = 88 44 + "44d" = 88 44 + "d44" = 44 Пц... и на этом ещё пишут... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 14:03 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
alekcvp, раз уж хочется об этом поговорить, можно вот еще пару тем глянуть :) https://habr.com/ru/post/500098/ https://habr.com/ru/post/500822/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 14:19 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
alekcvp Пц... и на этом ещё пишут... Нормально и пишут.Это никаких неудобств не доставляет, зная как с этим работать. Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Это всё написанно на официальном сайте https://www.php.net/manual/ru/language.types.php Ознакомление составляет 20 минут в среднем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 15:05 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Это всё написанно на официальном сайте https://www.php.net/manual/ru/language.types.php Ознакомление составляет 20 минут в среднем[/quot] Значение определяется по начальной части строки. Если строка начинается с верного числового значения, будет использовано это значение. Иначе значением будет 0 (ноль). Верное числовое значение - это одна или более цифр (могущих содержать десятичную точку), по желанию предваренных знаком с последующим необязательным показателем степени. Показатель степени - это 'e' или 'E' с последующими одной или более цифрами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 15:06 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Товарищи, который топят против FreeAndNil почему-то считают, что если вы его используете - то это только потому, что структура кода требует его использовать. Иными словами, они считают, что если вы используете FreeAndNil - то у вас ужасная неразбериха в коде, вы сами не знаете область жизни ваших объектов. И в этом они, конечно, правы. Видимость объектов нужно максимально сужать, код нужно упрощать, минимизируя зависимости. Но почему я не могу одновременно иметь нормальную архитектуру и при этом использовать FreeAndNil - мне не понятно. Я подозреваю, что эти товарищи получили детскую травму, работая с подобным кодом. Это примерно как если бы вы работали с "лапшой на GOTO" и написали "Доводы против оператора GOTO". Просто когда другие читают такие опусы, они не вполне понимают, про что говорит автор, потому что никогда не видели подобного кода - ну и понимают сказанное слишком буквально ("удалите вообще это из языка"). Но я вот, к примеру, не видел на практике ни лапши на GOTO, ни FreeAndNil как затычки (да, может быть, мне повезло), зато видел множество случаев, когда и GOTO и FreeAndNil - уместны. Аргумент: "если у вас правильная архитектура, то FreeAndNil не нужен". Да, не нужен, но никто же не запрещает. Как они собираются гарантировать "правильность" кода - мне не понятно. Человек склонен совершать ошибки. FreeAndNil - это машина, инструмент, она ошибок не делает. Его вызов не несёт каких-то накладных расходов, чтобы от него избавляться. У нас не так много отладочных инструментов, чтобы добровольно отказываться от них. Также наблюдается некое двуличие. Многие аргументы "против FreeAndNil" применимы также и к Free. Действительно, очень часто достаточно просто Destroy. Почему анти-FreeAndNil товарищи не топят против Free? Когда вообще вы последний раз задумывались: "хм, а здесь нужен Free или достаточно Destroy?" А зачем тогда вы вообще задумываетесь "хм, а здесь нужен FreeAndNil или достаточно Free?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 15:13 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
GunSmoker Товарищи, который топят против FreeAndNil почему-то считают, что Товарищи, которые топят против FreeAndNil, считают, что в автомобиле пристёгивается только тот, кто не умеет водить. Ну а настоящим пацанам западло, корона спадает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 15:50 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
GunSmoker часто достаточно просто Destroy ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 16:10 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
vavan GunSmoker часто достаточно просто Destroy Кстати, хороший вопрос для собеседования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 16:16 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
softwarer, Это только если вам на собеседовании нечем заняться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 16:46 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
GunSmoker Также наблюдается некое двуличие. Многие аргументы "против FreeAndNil" применимы также и к Free. Действительно, очень часто достаточно просто Destroy. Почему анти-FreeAndNil товарищи не топят против Free? Когда вообще вы последний раз задумывались: "хм, а здесь нужен Free или достаточно Destroy?" А зачем тогда вы вообще задумываетесь "хм, а здесь нужен FreeAndNil или достаточно Free?" а потом появилась ему замена, в виде FreeAndNil практически Free уже не нужен, я не могу придумать ему адекватный кейс для применения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 16:48 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan), Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 16:51 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
kv67 kealon(Ruslan), Код: pascal 1. 2. 3. 4. 5. 6. Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 17:14 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan) kv67 kealon(Ruslan), Код: pascal 1. 2. 3. 4. 5. 6. Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 17:49 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Вообще у всего есть семантика и контракт. Кому это не важно, для того эти три варианта одинаковы. Кому важно, заботится о читаемости и логичности кода, для того эти три варианта существенно разные. Кто ты ? :) Код: pascal 1. 2. 3. 4. 5. 6. Код: pascal 1. 2. 3. 4. 5. 6. Код: pascal 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 17:59 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Я - тот, кто заботится о качестве продукта. Поэтому в заданных условиях однозначно предпочту четвёртый вариант, Код: pascal 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 18:23 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
ЭМ.. Free проверяет существует ли объект, и вызывает Destroy Так что не имеет никакого смысла вызывать Destroy. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 18:24 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
Кот шрёдингера он либо жив, либо мёртв. Никогда нельзя предугадать на 100% всего лишь на 99,999 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 18:25 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
ВсеРазумный Так что не имеет никакого смысла вызывать Destroy. Небольшой смысл всё же имеет. За него в коде цепляется глаз, поэтому если хочешь просигнализировать читателю "здесь что-то необычное", стоит предпочесть его Free - как, например, в моей предыдущей реплике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 18:27 |
|
||
|
Улучшил FreeAndNil. Можете не благодарить.
|
|||
|---|---|---|---|
|
#18+
softwarer Я - тот, кто заботится о качестве продукта. Поэтому в заданных условиях однозначно предпочту четвёртый вариант, Код: pascal 1. 2. 3. Уникальный путь нормален для России :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2020, 18:41 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39955344&tid=2038337]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
67ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 362ms |

| 0 / 0 |
