powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Введение в Roslyn. Использование для разработки инструментов статического анализа
24 сообщений из 24, страница 1 из 1
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239288
el_programmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Roslyn – платформа с открытым исходным кодом, разрабатываемая корпорацией Microsoft, и содержащая в себе компиляторы и средства для разбора и анализа кода, написанного на языках программирования C# и Visual Basic. Кроме этого она предоставляет разработчику различные мощные средства для разбора и анализа кода. Но наличия таких средств недостаточно, нужно понимать, что и для чего необходимо использовать.

Статью можно разделить на 2 больших логических раздела:

Общая информация про Roslyn. Обзор инструментов, предоставляемых им для разбора и анализа кода. Приводится как общее описание сущностей и интерфейсов, так и взгляд на них с точки зрения разработчика статического анализатора.


Особенности, которые следует учитывать при разработке статических анализаторов. О том, как использовать Roslyn для разработки продуктов этого класса, что нужно учитывать при разработке диагностических правил, как их писать, пример диагностики и т.п.

Данная статья несёт цель ответить на подобные вопросы. Помимо этого, будет рассказано об особенностях разработки статических анализаторов, использующих Roslyn API.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239466
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
el_programmerнужно понимать, что и для чего необходимо использовать
Вот как раз этого не понимаю, зачем это надо?
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239489
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2el_programmerнужно понимать, что и для чего необходимо использовать
Вот как раз этого не понимаю, зачем это надо?
ну можно например задать правила оформления кода, при не соблюдении которых он не будет компилироваться
статический анализ это круто!
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239588
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ЕвгенийВCat2пропущено...

Вот как раз этого не понимаю, зачем это надо?
ну можно например задать правила оформления кода, при не соблюдении которых он не будет компилироваться
статический анализ это круто!
Типа не написал комментарий в методе и все?
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239622
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Типа не написал комментарий в методе и все?
Типа если для отступов использовал не табы, а пробелы, то всё (это есть у меня такая мечта).
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239640
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныCat2Типа не написал комментарий в методе и все?
Типа если для отступов использовал не табы, а пробелы, то всё (это есть у меня такая мечта).святая инквизиция, скоро за пробелы будут на кол сажать =)
ладно бы еще в Python'е, а в C# то за что? пофигу же
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239642
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesа в C# то за что? пофигу же
Если пишешь не один - совсем не пофигу. При на стройке табовых отступов задается, какому количеству пробелов равен таб. Если весь код отформатирован табами, то все отступы нормальные и равномерные. Потом этот код берет человек, у которого настроены пробельные отступы, и отключено отображение whitespaces. Где-то он отступает 2 пробелами, где-то тремя, по умолчанию у него настроено 1 таб=4 пробела, он влезает в ранее написанный код, что-то правит с отступами в эти 4 пробела, коммитит. Берешь после всего этого код - и нормально отформатированный отступами код превращается в кашу.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239645
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны,

есть же 100500 форматтеров )
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239651
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesСон Веры Павловны,

есть же 100500 форматтеров )
Ну да, и вместо того, чтобы писать код, сидишь, как дурак, и дергаешь эти форматтеры. Это несколько раздражает.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239711
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Сон Веры ПавловныRoman MejtesСон Веры Павловны,

есть же 100500 форматтеров )
Ну да, и вместо того, чтобы писать код, сидишь, как дурак, и дергаешь эти форматтеры. Это несколько раздражает.

Ну жа. Нажать Ctrl+K, Ctrl+D - офигенное раздражает!
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239716
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныCat2Типа не написал комментарий в методе и все?
Типа если для отступов использовал не табы, а пробелы, то всё (это есть у меня такая мечта).
Как-то мелко для Roslyn :) Для этого есть StyleCop, StyleCop+
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239760
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКак-то мелко для Roslyn :) Для этого есть StyleCop, StyleCop+
А что не мелковато для Roslyn?
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239771
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAКак-то мелко для Roslyn :) Для этого есть StyleCop, StyleCop+
А что не мелковато для Roslyn?
ReSharper ^)
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239798
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesReSharper ^)
Если ты заметил, та на этой странице эта тема помечена звездочкой!
А это означает, что писать в теме можно только о хорошем!
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239831
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ЕвгенийВЕсли ты заметил, та на этой странице эта тема помечена звездочкой!
А это означает, что писать в теме можно только о хорошем!
Это у Вас она звездочкой помечена, как Избранное
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239845
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAКак-то мелко для Roslyn :) Для этого есть StyleCop, StyleCop+
А что не мелковато для Roslyn?Парсинг C# => DOM.

зы: Странно, что это сделали только сейчас, а не ~16 лет назад.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239852
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAКак-то мелко для Roslyn :) Для этого есть StyleCop, StyleCop+
А что не мелковато для Roslyn?
В статье же есть пример: PVS-Studio
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239861
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КПарсинг C# => DOM.

зы: Странно, что это сделали только сейчас, а не ~16 лет назад.
Эрик об этом писал в конце 2010, работать видимо начали двумя-тремя годами ранее.
Долго писали.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239862
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КПарсинг C# => DOM.

зы: Странно, что это сделали только сейчас, а не ~16 лет назад.
А зачем это нужно?
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239871
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВАлексей КПарсинг C# => DOM.

зы: Странно, что это сделали только сейчас, а не ~16 лет назад.
Эрик об этом писал в конце 2010, работать видимо начали двумя-тремя годами ранее.
Долго писали.А первые дотнеты вышли в ~2000-м году вместе с кодогенерацией CodeDOM "из коробки". Не трудно было ещё тогда сделать парсер. А главное - поддерживать это всё в актуальном состоянии вместе с развитием C#/VB, чтобы не было множества описаний одного и того же: CodeDOM, LINQ Expression, теперь ещё и Roslyn.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239885
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА зачем это нужно?
Ну есть например большой начальника - тим лид, которые не пропустит скажем 10 ref/out параметров в методе, метод больше 100 строк или SQLConnection без using.
Для этого он должен все просмотреть глазами, а тут можно сделать так, что такой код до него дойдет даже.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239892
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КЕвгенийВпропущено...

Эрик об этом писал в конце 2010, работать видимо начали двумя-тремя годами ранее.
Долго писали.А первые дотнеты вышли в ~2000-м году вместе с кодогенерацией CodeDOM "из коробки". Не трудно было ещё тогда сделать парсер. А главное - поддерживать это всё в актуальном состоянии вместе с развитием C#/VB, чтобы не было множества описаний одного и того же: CodeDOM, LINQ Expression, теперь ещё и Roslyn.
Ну это не одно и тоже!
Roslyn - компилятор как сервис.
LINQ Expression - деревья выражений которые можно создавать/изменять во время исполнения или которые могут использовать код стороннего программиста который даже еще не написан.
CodeDOM - первое, что пришло в голову.
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239902
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВskyANAА зачем это нужно?
Ну есть например большой начальника - тим лид, которые не пропустит скажем 10 ref/out параметров в методе, метод больше 100 строк или SQLConnection без using.
Для этого он должен все просмотреть глазами, а тут можно сделать так, что такой код до него дойдет даже.
А при чём тут парсинг C# => DOM? Или я не понял, что Алексей имеет в виду?
...
Рейтинг: 0 / 0
Введение в Roslyn. Использование для разработки инструментов статического анализа
    #39239907
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВАлексей Кпропущено...
А первые дотнеты вышли в ~2000-м году вместе с кодогенерацией CodeDOM "из коробки". Не трудно было ещё тогда сделать парсер. А главное - поддерживать это всё в актуальном состоянии вместе с развитием C#/VB, чтобы не было множества описаний одного и того же: CodeDOM, LINQ Expression, теперь ещё и Roslyn.
Ну это не одно и тоже!
Roslyn - компилятор как сервис.
LINQ Expression - деревья выражений которые можно создавать/изменять во время исполнения или которые могут использовать код стороннего программиста который даже еще не написан.
CodeDOM - первое, что пришло в голову.Всё это вертится вокруг структуры данных, описывающей C#/VB программу - syntax tree. И этот syntax tree вполне мог бы быть стандартизован, и использоваться для различных задач: кодогенерация, парсинг, преобразование в другие языки, решение задач для IDE и т. п. Но не судьба.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Введение в Roslyn. Использование для разработки инструментов статического анализа
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]