Автоматический поиск повторяющихся выражений в коде 1С

  Рет қаралды 3,705

Веселый1С

Веселый1С

3 жыл бұрын

Статический анализатор кода 1С в действии. Демонстрируем работу улучшенной диагностики "Идентичные подвыражения".
Сайт проекта:
1c-syntax.github.io/bsl-langu...
Ссылки на смежные проекты:
Диагностики для SonarQube 1c-syntax.github.io/sonar-bsl...
Диагностики для EDT: github.com/otymko/bslls-conne...
Диагностики для конфигуратора: otymko.github.io/phoenixbsl/
Диагностики для Снегопата: infostart.ru/1c/articles/1286...
Диагностики для TurboConf turboconf.ru/Forum/Details/1526

Пікірлер: 33
@vivettanors
@vivettanors 3 жыл бұрын
За зайца БО отдельный лайк =)
@forexwithak
@forexwithak 2 жыл бұрын
подписался)
@dobrotank
@dobrotank 3 жыл бұрын
О Спаситель!
@nesigaev
@nesigaev 3 жыл бұрын
Интересная фишка, а для текста запросов она работать будет?
@user-ob8qz1en7m
@user-ob8qz1en7m 3 жыл бұрын
Интересно) ждём знатоков унф в комментах)
@flipix100
@flipix100 3 жыл бұрын
Я далек от такой семантики, но не органичнее ли писать (ИмеетсяИНН) и (НЕ ИмеетсяИНН)?
@IldarYusupov
@IldarYusupov 3 жыл бұрын
Укажите пожалуйста, что проверки BSL для конфигуратора также доступны и в TurboConf и (вроде бы, сам не проверял) - в Снегопате.
@user-nd9cv4pd5m
@user-nd9cv4pd5m 3 жыл бұрын
Дайте, пожалуйста, ссылки на эти интеграции с BSL LS, мы добавим в описание
@IldarYusupov
@IldarYusupov 3 жыл бұрын
@@user-nd9cv4pd5m Для TurboConf: turboconf.ru/Forum/Details/1526
@alexeibelousov3279
@alexeibelousov3279 3 жыл бұрын
А есть диагностика которая может находить копипаст процедур/функций в разных модулях?
@user-nd9cv4pd5m
@user-nd9cv4pd5m 3 жыл бұрын
В Sonarqube - да, из коробки
@dobrotank
@dobrotank 2 жыл бұрын
А куда писать по ошибкам/проблемам с использованием?
@dobrotank
@dobrotank 2 жыл бұрын
А, нашёл
@user-nd9cv4pd5m
@user-nd9cv4pd5m 2 жыл бұрын
github.com/1c-syntax/vsc-language-1c-bsl или в Телеграм t.me/bsl_language_server
@dobrotank
@dobrotank 2 жыл бұрын
На всякий случай, спрошу и здесь. Вдруг проблема не в анализаторе, а в моих кривых руках? И кто-то уже с этим сталкивался. Выделяю текст, нажимаю CTRL + I - всё нормально отрабатывает. При попытке использовать функцию замены не канонически написанных ключевых слов нажатием CTRL + J почему-то выделяется текст всего модуля, как будто я нажал CTRL + A, после чего ни одна комбинация (CTRL + I, CTRL + K, CTRL + J) не работают, пока я не перезапущу анализатор.
@MegaWertep
@MegaWertep 3 жыл бұрын
Отличный инструмент. Но не раскрыта полностью тема по перестановке операндов. Работает ли это с арифметическими операциями? А + В - С ИЛИ -С + А + В И посложнее. (А - В) / В ИЛИ А / В - 1 // Это явно не относится к копипастам, но интересно понять И идея для развития. Если А = 1 Тогда // код ИначеЕсли А = 1 Тогда // код КонецЕсли Если А = 1 Тогда // код КонецЕсли Если А = 1 Тогда // код КонецЕсли
@user-zr4uw5ng3r
@user-zr4uw5ng3r 3 жыл бұрын
Диагностика на одинаковые ИначеЕсли уже есть в анализаторе. По перестановкам: анализируются только операции, от перемены мест операндов в которых - результат не меняется. Посколько сложение и умножение в ролике упомянуты, как пропускаемые, остаются только Равно, И, ИЛИ.
@DDEZMON
@DDEZMON 2 жыл бұрын
А смысл в этом поиске? Максимум может на одну десятую миллисекунды ускорится работа кода. Главное протестировать пользовательский интерфейс\работу.
@user-nd9cv4pd5m
@user-nd9cv4pd5m 2 жыл бұрын
Одинаковые выражения в условиях могут скрывать ошибку в логике
@DDEZMON
@DDEZMON 2 жыл бұрын
@@user-nd9cv4pd5m Могут, только ошибки в логике выявляет пользовательское тестирование. А данная автоматизация не заменяет пользовательское тестирование. Кажется у 1с есть продукт по автоматизации пользовательского тестирования.
@user-nd9cv4pd5m
@user-nd9cv4pd5m 2 жыл бұрын
Пользовательское тестирование на сотни и тысячи вариантов исполнения кода во всех условиях, функциональных опциях, наборах прав, циклах и граничных случаях - очень дорогое удовольствие. Настолько дорогое, что так никто не делает. Конечно, стат анализ не замена тестированию. Это один из инструментов, обеспечивающих качество программного продукта, наравне с модульными тестами, сценарными тестами, нагрузочными тестами и даже функциональными A/B-тестами конечных пользователей. Но стат анализ дешев
@user-zr4uw5ng3r
@user-zr4uw5ng3r 2 жыл бұрын
Речь о поиске ошибок в логике. Стат анализ это нашел. А найдет ли тестер все варианты кейсов - большой вопрос
@user-zr4uw5ng3r
@user-zr4uw5ng3r 2 жыл бұрын
@@DDEZMON есть молоток, а есть дрель. Чтобы построить дом неплохо бы пользоваться и тем и другим. А можно, конечно утверждать, что главное побольше скотча
@user-qh5kv3lq9t
@user-qh5kv3lq9t 3 жыл бұрын
Зачем вы конфигуратор вывернули наизнанку?
@alexeysosnoviy200
@alexeysosnoviy200 3 жыл бұрын
Потому что можем =)
@user-qh5kv3lq9t
@user-qh5kv3lq9t 3 жыл бұрын
@@alexeysosnoviy200 А задублированные предопределенные бухгалтерские счета и задублированные предопределенные субконто объединить можете?
@user-nd9cv4pd5m
@user-nd9cv4pd5m 3 жыл бұрын
@@user-qh5kv3lq9t как понять "объединить"? Вот так, как в ролике? Конечно да, это ведь такие же выражения.
@user-qh5kv3lq9t
@user-qh5kv3lq9t 3 жыл бұрын
@@user-nd9cv4pd5m Вопросов больше не имею )
Ouch.. 🤕
00:30
Celine & Michiel
Рет қаралды 23 МЛН
Inside Out 2: Who is the strongest? Joy vs Envy vs Anger #shorts #animation
00:22
Iron Chin ✅ Isaih made this look too easy
00:13
Power Slap
Рет қаралды 36 МЛН
Houdini Algorithmic Live #060 - Quadrilateral Remesh
3:53:40
Junichiro Horikawa
Рет қаралды 397 М.
Опасность фирменной зарядки Apple
0:57
SuperCrastan
Рет қаралды 12 МЛН
Todos os modelos de smartphone
0:20
Spider Slack
Рет қаралды 65 МЛН
Xiaomi SU-7 Max 2024 - Самый быстрый мобильник
32:11
Клубный сервис
Рет қаралды 544 М.
Это - iPhone 16!
16:29
Rozetked
Рет қаралды 184 М.