Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Комментарии в коде по XP.


Информационный Канал Subscribe.Ru

Мир экстремального программирования

Появились новые паттерны рефакторинга

Встраивание временной переменной (Inline Temp)
Введение утверждения (Introduce Assertion)
Введение поясняющей переменной (Introduce Explaining Variable)
Введение внешнего метода (Introduce Foreign Method)
Введение локального расширения (Introduce Local Extension)

Изучаем методики XP

Комментарии в коде по XP.

Один из канонов экстремального программирования гласит, что комментарии в коде должны быть минимизированы. Основной причиной этого является возможность несоответствия текстовых комментариев действительности. Тем не менее, это совсем не требует их полного искоренения. Просто существуют более надёжные способы повышения читабельности кода.

  1. Простота кода.
    Чем проще код, тем легче понять, что он делает. Постарайтесь за счёт рефакторинга или просто хорошего стиля минимизировать размер классов и размер каждой функции.
  2. Название класса, метода, переменной.
    Если есть необходимость написать комментарии к функции или классу, сделайте их имена более понятными. Если есть необходимость писать комментарий по использованию локальной переменной, переименуйте её. Если одна и та же переменная используется несколько раз в коде и имеет двоякий смысл, продекларируйте несколько переменных с адекватными названиями.
  3. Введение поясняющей переменной.
    Когда в коде присутствует сложное выражение или реализована какая-то формула, присвойте его переменной, название которой объясняет смысл. А лучше вынесите это в отдельный метод.
  4. Модульные тесты.
    Модульные тесты и подход сначала тест являются эффективной заменой шапки комментарий к функции. Одна из хороших советов для программиста гласит: напиши сначала над функцией комментарий о том, что она будет делать, а затем уже сам код. В экстремальном программировании это более развито: покажите в тесте, для чего нужна и как будет использоваться функция, а затем уж приступайте к её реализации.
  5. Утверждения.
    Для разработчиков будет более понятен англоязычный термин Assertion, реализуемый макросами или функциями Assert(). Утверждения используются для явного указания на то, что было выдвинуто предположение относительно определённого поведения функции или возможных значений переменной. Для утверждений есть свой паттерн рефакторинга Введение утверждения (Introduce Assertion). Если же предположения ошибочны и утверждения не выполняются, они должны быть заменены соответствующей обработкой таких ситуаций.

Упражнение.

По предложенной методике создайте класс, который будет работать как массив, на его вход может быть передана строка с разделёнными запятой значениями. Утверждениями могут быть максимальная и минимальная длина массива. Если модульные тесты пока ещё не под силу, к каждой функции пишите комментарии о том, что она должна делать до формирования самого тела функции. Все остальные могут сделать отдельный класс для тестовых вызовов функций реализуемого массива.

Жду ответов!

До новых встреч,
Ведущий рассылки, Александр Федоренко.



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное