Бессмысленное мышление

В комментариях к посту Реймонда Чена зашла речь о занулении памяти. Перед тем, как новой памятью воспользоваться, полезно заполнить её нулями, чтобы твёрдо знать, какие значения будут у переменных. Однако это не всегда нужно. Некоторые функции выделяют уже нулевую память, и повторно занулять её – только тратить время зря.

Один из участников – видимо, начальник – сказал: “я всегда слежу за тем, чтобы другие не писали лишних занулений. Я стараюсь воспитывать программистов, которые думают над тем, что пишут, а не пихают бессмысленно зануления где попало”.

В принципе он прав – с бездумностью надо бороться. Но зачем думать над всем подряд?

Ресурсы мозга ограничены. Нельзя уследить за всем и мыслить по-хардкору круглые сутки напролёт. Попробуйте восемь-то часов проработать как следует – вы к вечеру два и два сложить не сможете! Поэтому надо выбирать, чему уделить внимание, а на что махнуть рукой – полностью сознавая последствия.

Так получается, что лишнее зануление – операция быстрая и безвредная. Поэтому хороший программист не станет специально размышлять, где нужно, а где не нужно занулять память. Он просто занулит её везде, и этим освободит себе время подумать над действительно важными вещами – над теми, где ошибочное решение приведёт к тяжёлым последствиям. А программист, воспитанный таким начальством, обдумает каждое зануление, и от усталости забудет про слона.
Бессмысленное мышление вредно :)

Кроме того, не придётся ломать голову и проверяющему: “Тут память не занулили. Это потому, что было не нужно? Или программист забыл?” Ещё одна экономия внимания.

Напишите комментарий:

Если хотите, можно залогиниться.

*