Home > itblogs > Работа над ошибками.

Работа над ошибками.

October 10th, 2006

Наткнулся сегодня на блог Александра Ложечкина и на его пост SAL – кое-что новое для С++ в частности. В двух словах SAL (Standard Annotation Language) – это способ дать компилятору немного больше информации о том, как та или иная функция использует переданные ей параметры: in/out аттрибуты, размеры буферов и т.п. Компилятор, используя эту информацию, может делать дополнительные проверки кода, находя, скажем, ошибки переполнение буфера. Более того, статические анализаторы кода, тот же PREfast, также могут использовать эту информацию, повышая тем самым эффективность и точность анализа. Так вот меня удивило количество, да и качество тоже, негативных комментариев. Как-то очень явно чувствуется отношение “нам это не надо, мы и сами умные”. Интересно, а кто тогда рассаживает баги, как не сами программисты?

Я даже разразился речью в комментариях:

Поздно наткнулся на этот блог, но не могу не высказаться.

Товарищи критикующие синтаксис и ратующие за спасительную абстракцию в виде STL в C++! Вы безусловно правы, но вы ни фига не понимаете, что такое работа над проектом с 5-10-15 летней историей и исходниками занимающими много много мегабайт. В условиях когда нужно и баги править и новую функциональность писать и уложиться в год или два, чтобы продать продукт. Я вам скажу, что в таких условиях все средства хороши и пренебрегать чем-либо даже не разобравшись что оно даёт очень неразумно.

Есть STL и алгоритмы? – нужно их применять и давать по шапке тем, кто тащит в код свой “улучшенный” вариант списка. Есть статический анализатор кода (lint, PREfast)? – пользуйтесь им и исправляйте найденные им ошибки. Есть runtime проверки обнаруживающие переполнение буфера и другие типичные ошибки? – включите их. Съэкономленный 1% процессорного времени вы всё равно потратите на поиски ошибок.

  1. October 11th, 2006 at 10:24 | #1

    Спасибо за поддержку! Почитал твой блог – очень интересно! А не хочешь случайно к нам на gotdotnet постить анонсы своих сообщений или вообще к нам переехать? :) )

    Не нашел тут твоего адреса – напиши мне, плз, по внутренней почте?

  2. Not a kernel guy
    October 11th, 2006 at 11:12 | #2

    > А не хочешь случайно к нам на gotdotnet постить анонсы своих сообщений

    Это можно.

    > или вообще к нам переехать? :) )

    Спасибо, но мне на своем хосте как-то уютнее. :-)

Comments are closed.