Важная информация
Показано с 1 по 3 из 3

Тема: Современные технологии статического анализа кода

  1. #1 Современные технологии статического анализа кода 
    Новичок
    Регистрация
    09.04.2019
    Сообщений
    6
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Многие разработчики до сих пор думают, что статический анализ кода – это утилита типа lint из 80-х годов, которая с помощью регулярных выражений находит только самые примитивные ошибки. К счастью, это давно не так.

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

    Доклад можно послушать здесь: [Ссылки могут видеть только зарегистрированные пользователи. ]
    Ответить с цитированием  
     

  2. #2  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    4,010
    Сказал(а) спасибо
    1,887
    Поблагодарили 1,008 раз(а) в 866 сообщениях
    Записей в блоге
    1
    Послушал доклад полностью. Не использую и скорее всего не буду, старомоден? - да. Глуп? - нет, могу себе позволить.
    Считаю ли это будущим? - И да и нет. Это всего лишь инструмент, он выполняет задачи. По большому счёту всё зависит
    от идеологии разработчика. Лично моё мнение, попытка переложить поиск ошибок с программиста, на машину может
    плохо повлиять на развитие навыков программирования. Во всяком случае, то что увидел на поприще СПО - это
    какой-то пепелац. Уже давно создавал тему и пенял авторов софта за откровенную халатность, следствием чего
    являются крайне низкое владение самой областью программирование, т.е. грубо говоря, люди бросаются на современные
    и модные штуки, не уделяя должного внимания азам и самой элементарной базе, после чего у них начинаются проблемы
    и всё это накручивается как снежный ком.
    Сейчас говорю о такой штуке, как "отбери у программиста эти средства" и он станет маленьким слепым котёнком,
    который даже простые вещи будет делать с невероятными косяками. Т.е. двоякость сложившейся ситуации. С одной
    стороны есть автоматизированный мощный инструмент, возможностями которого не стоило бы пренебрегать.
    С другой стороны тотальная беспомощность современных программистов(повидал многих, уже начинают кода бояться
    и школьного матана, у людей животный страх перед этим появляется, т.е. во времена интернета, где делаешь запрос и
    тебе всё на блюдечке все формулы, все примеры). Поэтому о какой-то тенденции говорить не приходится.

    И есть ещё очень большая проблема, люди торопятся и данный инструмент и сама попытка ввести такую тенденцию,
    ещё больше усугубляют это явление. Это всё приводит к разработке абсолютно уродских архитектур.
    Приведу один пример, как-то тестировал ardour, в общем-то хватило одного единственного запуска, чтобы найти
    критический баг, а суть его простая, есть файл преференсов, тебе в начале запуска даётся возможность настроить
    звуковую карту, неверная настройка приводит к падёнию программы из-за технических особенностей движка,
    так вот программа никак не фиксирует свои успешные запуски и не предоставляет никаких возможностей исправить
    ситуацию. Ни один анализатор не научит тому как сделать правильно. И это при том при всём, что движок писал
    потрясающей квалификации профессионал, такое с пол пинка не пишется, там годы исследований.

    Резюмируя я бы рекомендовал использовать данные инструменты только опытным разработчикам.

    Upd:
    И ещё, один аспект, вот вы сами утверждаете, что это всё сложно интегрируется и нужно быть гением виртуозом,
    чтобы интегрировать несколько систем. Отсюда нужно смотреть не со стороны критики, виден вектор куда нужно
    двигаться, программист животное простое, ему нужно чтобы было удобно, если начинаются какие-то запарки, то
    стоимость выделки овчины растёт. Т.е. понятно что над этим разработчики подобного софта работают, просто
    нужно что-то более концептуальное. Реализация не может быть универсальной, универсальной может быть
    только идеологический аспект.

    Это в общем-то сказано к тому, что работать в связке(а не отдельно) с разработчиками компиляторов, сред разработки,
    чтобы был глубокий уровень интеграции системы(в т.ч. с компилятором), это ещё к тому, что было сказано по поводу
    "автоматического заполнения таблиц".
    Последний раз редактировалось >Quiet Snow<; 10.04.2019 в 16:27.
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

  3. #3  
    Новичок
    Регистрация
    16.07.2018
    Сообщений
    20
    Сказал(а) спасибо
    1
    Поблагодарили 17 раз(а) в 13 сообщениях
    Не думал, что тут есть аудитория C++Russia . Приятно познакомиться.
    По теме рекомендую еще этот доклад про обеспечение качества кода ("https://vk.com/wall-105242702_648") (статический анализ в том числе)

    Кстати, на форуме ссылки не вставляются почему-то. Надо что-то чинить, возможно статический анализ поможет?
    Ответить с цитированием  
     

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Технологии для новичка в веб
    от John Smith в разделе Общие вопросы web-разработки
    Ответов: 1
    Последнее сообщение: 20.03.2017, 12:08
  2. Ответов: 0
    Последнее сообщение: 19.11.2014, 00:16
  3. IT-технологии в инвестиционном банкинге
    от Genia Afanasyeva в разделе Архив
    Ответов: 0
    Последнее сообщение: 29.11.2013, 13:53
  4. Кто какие сервисы использует для анализа сайта ?
    от Sirius в разделе Онлайн сервисы
    Ответов: 7
    Последнее сообщение: 27.08.2013, 16:00
  5. SEO Powersuite-комплексный анализа сайта
    от Konstantin Shcherba в разделе Программы
    Ответов: 2
    Последнее сообщение: 27.09.2012, 07:59
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •