Заканчиваю переезжать на новый компьютер — или, скорее, в новый системный блок. В процессе переезда (который занял больше времени, чем это изначально предполагалось) сделал два наблюдения, первое из которых забыл, а второе вот:
Windows-шифрование файлов — зло, ибо изменение атрибута Encrypt contents to secure data меняет дату модификации файла.
Понятно, что иногда это не важно, что есть ещё архиваторы и проч., но...
И, да, подсоединившись пользователем с тем же именем с другого компьютера, забрать или прочесть-поредактировать зашифрованные файлы я не могу.
понедельник, 9 августа 2010 г.
среда, 23 июня 2010 г.
Обработка ошибок и примеры в книжках по программированию
В обучающей и справочной литературе по программированию сплошь и рядом пишут примерно так:
Увы, это приводит к тому, что начинающие программисты не видят по ходу обучения ни одного достойного образца обработки ошибок в типовых случаях вызова тех или иных API и проч. Более того: из примеров, подобных вышеприведенному, они делают вывод о третьестепенности и незначительности таковой обработки и сплошь и рядом пишут код вообще без неё (последнее — наблюдение из личного опыта работы с начинающими программистами).
То есть, как правило, авторы опускают код обработки ошибок, — стремясь сделать цитируемый код короче, а «полезную логику» примера понятней для читателя.const int iWaitResult = ::WaitForSingleObject(g_hMutex, INFINITE);
switch (iWaitResult) {
case WAIT_OBJECT_0: // Всё OK
break;
case WAIT_ABANDONED: // Один из потоков завершился, так и не вызвав
// ReleaseMutex. Скорее всего, это говорит об
// ошибке в программе, поэтому ставим ASSERT.
// В release-версии игнорируем проблему.
ASSERT(false);
break;
default:
// Здесь должна быть обработка ошибки.
}
Увы, это приводит к тому, что начинающие программисты не видят по ходу обучения ни одного достойного образца обработки ошибок в типовых случаях вызова тех или иных API и проч. Более того: из примеров, подобных вышеприведенному, они делают вывод о третьестепенности и незначительности таковой обработки и сплошь и рядом пишут код вообще без неё (последнее — наблюдение из личного опыта работы с начинающими программистами).
среда, 26 мая 2010 г.
Подписаться на:
Сообщения (Atom)