Спасибо за ваш отзыв! Я действительно рад, что вы посчитали статью интересной.
По поводу использования англицизмов. Не вижу ничего предосудительного, т.к. при написании статьи нужно, в том числе, учитывать аудиторию, которая будет читать текст и площадку, на которой он будет размещаться.
Мы рассматривали данный вариант, но всё же пришли к выводу, что ошибка состоит именно в использовании поля. Его объявление, очевидно, ошибкой не является.
Действительно, исключение будет выброшено именно при итерировании. Однако мы исходили из того, что в коде ошибка состоит не в том, что разработчик использовал foreach. Ошибка в том, что выражение может быть равно null, поэтому правильным ответом считается выбор именно этого выражения.
В то же время понятна ваша позиция :). Увы, тяжеловато сделать квиз так, чтобы понимание "ошибок" совпало вообще у всех людей. К примеру, кто-то вообще может посчитать, что беда именно в объявлении namedLifecycleParticipantCollection. В любом случае, главное, что вы сами знаете, что ответили правильно)
Действительно, в некотором роде это логично). Но мы исходили из того, что нужно указывать именно на допущенную ошибку. Мёртвый код в данном случае является скорее следствием ошибки, а ошибка предполагается в условии.
Да, была некоторая сложность в разметке правильных ответов, но мы немного изменили принцип. Подробнее можно почитать здесь или сразу попробовать пройти квиз опять)
Да, вы правы. Выбранный алгоритм отметки ошибки иногда приводил к тому, что правильный ответ не засчитывался при фактически верной отметке. Поправили, надеемся теперь стало удобнее. Здесь я рассказал подробнее.
Со своей стороны, как раз для сравнения, предлагаю воспользоваться бесплатной пробной версией PVS-Studio – https://pvs-studio.com/ast-types. Интересно будет узнать ваши впечатления.
Примеры описываемого ПО вы можете найти по ссылке, которую я дал в комментарии выше. Но вот сранение различных инструментов это практически бессмысленное занятие по нескольким причинам:
не у всех инструментов есть бесплатная пробная лицензия с полным функционалом;
с каждым из них нужно поработать некоторое время, чтобы вникнуть в особенности настройки;
некоторые инструменты специально заточены под нахождение определённых слабых мест и могут не покрывать другие. Поэтому в крупных проектах, в идеале, используется несколько инструментов.
Думаю, как и любой новый вид рекламы – он либо укрепится со сменой поколения и будет воприниматься как само собой разумеющееся, либо просто исчезнет и будет заменён чем-то другим.
Да, есть некоторое расхождение в этом моменте. Но всё же акцент делаем именно на ошибке, а не на строке с ней. Хотя иногда целая строка может быть ошибкой )
Спасибо за ваш отзыв! Я действительно рад, что вы посчитали статью интересной.
По поводу использования англицизмов. Не вижу ничего предосудительного, т.к. при написании статьи нужно, в том числе, учитывать аудиторию, которая будет читать текст и площадку, на которой он будет размещаться.
Кстати, если интересно почитать подробнее о различиях и принципах работы SAST, DAST, то у меня об этом недавно вышла статья "Виды Application Security Testing. Как не запутаться среди SAST, DAST и IAST".
Мы рассматривали данный вариант, но всё же пришли к выводу, что ошибка состоит именно в использовании поля. Его объявление, очевидно, ошибкой не является.
Действительно, исключение будет выброшено именно при итерировании. Однако мы исходили из того, что в коде ошибка состоит не в том, что разработчик использовал foreach. Ошибка в том, что выражение может быть равно null, поэтому правильным ответом считается выбор именно этого выражения.
В то же время понятна ваша позиция :). Увы, тяжеловато сделать квиз так, чтобы понимание "ошибок" совпало вообще у всех людей. К примеру, кто-то вообще может посчитать, что беда именно в объявлении namedLifecycleParticipantCollection. В любом случае, главное, что вы сами знаете, что ответили правильно)
Действительно, в некотором роде это логично). Но мы исходили из того, что нужно указывать именно на допущенную ошибку. Мёртвый код в данном случае является скорее следствием ошибки, а ошибка предполагается в условии.
Да, была некоторая сложность в разметке правильных ответов, но мы немного изменили принцип. Подробнее можно почитать здесь или сразу попробовать пройти квиз опять)
Кстати, квиз по C# уже доступен. Можно проходить )
Да, вы правы. Выбранный алгоритм отметки ошибки иногда приводил к тому, что правильный ответ не засчитывался при фактически верной отметке. Поправили, надеемся теперь стало удобнее. Здесь я рассказал подробнее.
Сделали разметку правильных ответов удобнее. Попробуйте пройти теперь )
Здесь подробнее рассказал почему была такая ошибка. Спойлер: немного накостылили )
Учли, что это было спроным моментом и поправили в квизе. Теперь выделять именно ошибку стало удобнее.
Мы поправили алгоритм выделения ошибки – он стал удобнее. Здесь описал подробнее.
Спасибо за отзыв)
Со своей стороны, как раз для сравнения, предлагаю воспользоваться бесплатной пробной версией PVS-Studio – https://pvs-studio.com/ast-types. Интересно будет узнать ваши впечатления.
Примеры описываемого ПО вы можете найти по ссылке, которую я дал в комментарии выше. Но вот сранение различных инструментов это практически бессмысленное занятие по нескольким причинам:
не у всех инструментов есть бесплатная пробная лицензия с полным функционалом;
с каждым из них нужно поработать некоторое время, чтобы вникнуть в особенности настройки;
некоторые инструменты специально заточены под нахождение определённых слабых мест и могут не покрывать другие. Поэтому в крупных проектах, в идеале, используется несколько инструментов.
Если вам интересно, то я недавно написал статью на эту тему, где актуализировал и расширил информацию. Буду рад, если ознакомитесь )
Думаю, как и любой новый вид рекламы – он либо укрепится со сменой поколения и будет воприниматься как само собой разумеющееся, либо просто исчезнет и будет заменён чем-то другим.
Ошибку поправили. Ещё раз спасибо за наблюдение )
Попробуем учесть ваш комментарий и оптимизировать подобные моменты.
Скорее мы больше рады, что наш анализатор реально помогает разработчикам.
Да, есть некоторое расхождение в этом моменте. Но всё же акцент делаем именно на ошибке, а не на строке с ней. Хотя иногда целая строка может быть ошибкой )