Нет, в таком случае анализатор не будет выдавать предупреждение, т.к. иметь в массиве одинаковые элементы является нормальной ситуацией. Здесь же одно из подвыражений явно ошибочно, т.к. если бы первое подвыражение было true, то до второго даже не дошли бы.
Интересно, про 'null & 0' не знал. А какой смысл проверять на null value type? Manageability это свойство с типом перечисления SettingsManageability и оно не nullable.
Конечно, в статье не всё отражено, вставить всё просто невозможно. Что-то считаешь незначительным, что-то не для всех. Про производительность я соглашусь, но если начинать перечислять, то в комментарии всё равно кто-то придёт и напишет, что что-то забыли :). Поэтому решил ограничиться ссылкой на исчерпывающую статью. Тем более, лучше Тауба сложно сделать. А вот про отдельные устанавливаемые пакеты действительно лучше сделать отдельные статьи (хотя тогда это будет копирка статей Microsoft), так как здесь хотелось выделить более общие вещи.
Спасибо, за большой комментарий. Постараемся в следующих статьях про .NET учесть.
Да, есть такой момент, но на момент публикации статьи через dotnet-install скрипт уже можно было установить 8.0.100. А теперь ещё и на официальной странице для скачивания появилась новая версия.
FirstOrDefault возвращает не индекс, а первый элемент коллекции, но по контексту я думаю, что в коллекции индексы. Так что первый элемент может быть 0.
Думаю, что самым лёгким вариантом будет использование дефолтного значения, если нет подходящего элемента: FirstOrDefault(-1)
Спасибо за пример. Я думаю, что анализатор мог бы для подобных случаев понижать уровень предупреждения, или мы и вовсе могли бы добавить это в исключения. Рассмотрим доработку :). Если что по всем вопросам можно написать нам в поддержку.
Nullable безусловно полезная штука, хотя и холиварная. Кому-то нравится, а кому-то нет. Мне, например среди C# ошибок из этой статьи больше всего нравится про бесполезный '??'. Про этот кейс могу точно сказать, что его VS 2022 не ловит. Да и статические анализаторы же не только разыменования нулевых ссылок ищут.
Конечно, мы всегда сообщаем разработчикам о найденных ошибках и странностях в коде. В основном это issue на GitHub. По PowerToys issue уже создаю, позже добавлю его в коммент.
Вполне возможно, но примеры из документации использовались и из новых диагностических правил, которые были опубликованы после 2021 года. ChatGPT обучался на информации до 2021 года.
Предполагаю, что даже переименование переменных ухудшит результаты.
Спасибо за предложение) Может, действительно, добавим разделы по темам для статей.
Спасибо, будем стараться !. Расширения свойств, действительно, должно быть полезным :)
Рад, что вам понравилось. Будем улучшать формат дайджеста)
Спасибо за фидбэк! Будем улучшать :)
Нет, в таком случае анализатор не будет выдавать предупреждение, т.к. иметь в массиве одинаковые элементы является нормальной ситуацией. Здесь же одно из подвыражений явно ошибочно, т.к. если бы первое подвыражение было true, то до второго даже не дошли бы.
А не подскажете конкретнее случай про который вы пишете?
Если вы про подобное сравнение одного и того же элемента массива с дублирующимся числовым литералом, то да, анализатор подобное поймает.
Интересно, про 'null & 0' не знал. А какой смысл проверять на null value type? Manageability это свойство с типом перечисления SettingsManageability и оно не nullable.
Конечно, в статье не всё отражено, вставить всё просто невозможно. Что-то считаешь незначительным, что-то не для всех. Про производительность я соглашусь, но если начинать перечислять, то в комментарии всё равно кто-то придёт и напишет, что что-то забыли :). Поэтому решил ограничиться ссылкой на исчерпывающую статью. Тем более, лучше Тауба сложно сделать.
А вот про отдельные устанавливаемые пакеты действительно лучше сделать отдельные статьи (хотя тогда это будет копирка статей Microsoft), так как здесь хотелось выделить более общие вещи.
Спасибо, за большой комментарий. Постараемся в следующих статьях про .NET учесть.
Да, есть такой момент, но на момент публикации статьи через dotnet-install скрипт уже можно было установить 8.0.100. А теперь ещё и на официальной странице для скачивания появилась новая версия.
FirstOrDefault возвращает не индекс, а первый элемент коллекции, но по контексту я думаю, что в коллекции индексы. Так что первый элемент может быть 0.
Думаю, что самым лёгким вариантом будет использование дефолтного значения, если нет подходящего элемента:
FirstOrDefault(-1)
Спасибо за пример. Я думаю, что анализатор мог бы для подобных случаев понижать уровень предупреждения, или мы и вовсе могли бы добавить это в исключения. Рассмотрим доработку :).
Если что по всем вопросам можно написать нам в поддержку.
Nullable безусловно полезная штука, хотя и холиварная. Кому-то нравится, а кому-то нет. Мне, например среди C# ошибок из этой статьи больше всего нравится про бесполезный '??'. Про этот кейс могу точно сказать, что его VS 2022 не ловит. Да и статические анализаторы же не только разыменования нулевых ссылок ищут.
ind == 0 ? 0 : -1;
Вы имелли в виду вот так? Индексы обычно начинаются с 0, так что подобное исправление будет ошибочным :).
Конечно, мы всегда сообщаем разработчикам о найденных ошибках и странностях в коде. В основном это issue на GitHub. По PowerToys issue уже создаю, позже добавлю его в коммент.
Спасибо за интересную статью. Думаю, что пока это лишь инструмент для знающего человека, который сэкономит время.
Возможно кому-то будет интересна другая статья на подобную тему: Хорошо ли ChatGPT ищет ошибки в коде?
Интересная новость, спасибо.
Возможно программистам будет интересна статья на подобную тему: Хорошо ли ChatGPT ищет ошибки в коде?
Спасибо за статью. Думаю, что пока это лишь инструмент для знающего человека, который сэкономит время.
Возможно кому-то будет интересна другая статья на подобную тему: Хорошо ли ChatGPT ищет ошибки в коде?
Спасибо за статью, интересно. Пока ещё остаётся проблема непонятности где ИИ врёт, а где говорит правду.
Может кому-то интересна похожая тема: Хорошо ли ChatGPT ищет ошибки в коде?
Спасибо за статью. Думаю, что пока это лишь инструмент для знающего человека, который сэкономит время.
Возможно кому-то будет интересна другая статья на подобную тему: Хорошо ли ChatGPT ищет ошибки в коде?
Вполне возможно, но примеры из документации использовались и из новых диагностических правил, которые были опубликованы после 2021 года. ChatGPT обучался на информации до 2021 года.
Интересно, можно попробовать.