Andriy Shyrokoryadov

.Net developer, data scientist

Code review (код ревью) и рефакторинг

Текст к видео "Code review (код ревью) и рефакторинг" на канале YouTube

Список изменений, а также того, на что следует обратить внимание.

  • название переменных
  • решение единственной задачи в методе
  • новый метод принимает слишком много аргументов
  • выборочное использование блоков try / catch / finally
  • обратите внимание на обработку исключений, как правило мы хотим сохранить как можно больше информации об исходном исключении
  • выделить новый метод PerformAction с как можно мегьши количеством аргументов
  • обращайте внимание на все объекты, которые используются в коде - возможно они имлементируют интерефейс IDisposable
  • обращайте внимание на работу со строками - если видете сложение строк, то скорей всего необходимо использовать интерполяцию строк, форматирование или StringBuilder
  • там где мы можем понять тип создаваемого объекта или переменной из кода, название типа можно заменить на var - улучгает читабельность кода
  • мы видим 2 места где создается объект FileSystem, а также 2 места где создаются новые обхекты при помощи ключевого слова new
  • также стоит обратить внимание, что даже на основании уже сделанного рефакторинга, мы всё еще не можем написать нормальные юнит-тесты
  • в одном из видео о паттернах проектирования я говорил, что необходимо отделять постоянные и изменяемые части кода, конкретно у нас мы можем выделить файл конфигурации
  • удалите не используемые using в начале файла
  • там где используются текст в коде необходимо заменить его на константы
  • наш код в процессе работы практически не предоставляет информации о своей работе

Список изменений, если есть много времени

  • разделение кода на отдельные файлы
  • использование шаблонов проектирования

Пример кода из видео на GitHub

Для открытия файла проекта необходимо Visual Studio 2019.