Code-review с помощью нейросети
Попросил нейросеть Khoj сделать ревью своего старого проекта на 1С на GitHub. Использовал вот такой промпт: Ты крутой программист 1С, тимлид. Тебе нужно провести ревью кода твоего подчиненного. Код находится здесь - https://github.com/Oxotka/PackageToPDF/blob/forCodeReview/КомплектДокументов/Forms/СохранениеКомплектовВPDF/Ext/Form/Module.bsl
Какие замечания ты сделаешь к коду?
Вот результат: После анализа кода в файле Module.bsl, я могу выделить следующие ключевые замечания и предложения по улучшению:
1. Структура и организация кода:
- Код разделен на области (#Область), что помогает в структурировании, но некоторые области, например, ОбработчикиСобытийФормы, содержат слишком много логики. Рекомендуется разделить большие процедуры, такие как ПриСозданииНаСервере, на более мелкие для улучшения читаемости и поддерживаемости.
2. Обработка исключений:
- В коде часто используются конструкции вида "Если НЕ ЗначениеЗаполнено(...) Тогда ВызватьИсключение ... КонецЕсли;". Убедитесь, что все исключения обрабатываются корректно и пользователю предоставляется понятная информация об ошибках.
3. Магические строки и числа:
- В коде встречаются магические строки, например, "Документ_" + Индекс в процедуре ПриСозданииНаСервере. Рекомендуется вынести такие строки в константы или использовать более описательные переменные.
4. Повторяющийся код:
- Наблюдается дублирование кода, например, в процедуре ВосстановитьНастройкиПечатныхФормПоУмолчанию. Рекомендуется вынести повторяющиеся блоки в отдельные процедуры для уменьшения дублирования и упрощения поддержки.
5. Использование глобальных зависимостей:
- В коде используются глобальные переменные и процедуры, такие как ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры. Убедитесь, что эти зависимости документированы и их использование оправдано.
6. Комментарии:
- Некоторые комментарии недостаточно информативны или отсутствуют. Рекомендуется добавить более подробные комментарии для улучшения понимания логики кода.
В целом, код функционален, но требует улучшений в плане структуры, читаемости и поддерживаемости. Рекомендуется провести рефакторинг, уделив особое внимание разделению больших процедур, улучшению обработки исключений, выносу магических строк в константы, устранению дублирования кода и добавлению информативных комментариев.
Есть ли у вас какие-либо конкретные вопросы по этим замечаниям или нужны ли дополнительные пояснения по какому-либо аспекту кода?
· 26.08.2024
Не уверен. Вроде у них есть оффлайн установка вместе с моделькой. Но можно пользоваться и любой другой моделью
ответить
коммент удалён