Обложка статьи «Как научиться писать тестируемый и сопровождаемый код — отвечают эксперты»

Как научиться писать тестируемый и сопровождаемый код — отвечают эксперты

В вакансиях практически всегда есть требование «писать тестируемый и сопровождаемый код», но начинающие программисты далеко не всегда понимают, что это такое. Как начинающему программисту научиться писать качественный код, который будет легко сопровождать и тестировать?

Итак, как писать сопровождаемый и тестируемый код?

Навык написания «тестируемого и сопровождаемого кода» приходит со временем, и когда работодатели указывают этот пункт в вакансии на джуниора, они, скорее всего, делают это «для галочки». Тем не менее, желание узнать, что такое тестируемый и сопровождаемый код, похвально, поэтому вот несколько советов:

  • читайте специализированную литературу и форумы;
  • найдите ментора — опытного специалиста, который подскажет, как писать код лучше и сможет объяснить, почему нужно делать именно так;
  • посмотрите на код известных open-source проектов, в особенности тех, у которых есть правила по внесению изменений вроде предпочитаемого стиля кода;
  • оформляйте код согласно принятым в языке правилам, руководствам по стилю. Некоторые компании применяют свой набор правил, придерживайтесь их в таком случае;
  • с оформлением кода также могут помочь различные инструменты вроде ESLint для JavaScript или Flake8 для Python;
  • не пихайте всё в один файл — структурируйте код и разбивайте его на модули;
  • избавьтесь от дублируемого кода;
  • передавайте в методы только ту информацию, которая им нужна;
  • пишите комментарии к вашему коду. Это поможет как людям, которые будут читать/изменять код после вас, так и вам самим через неделю после его написания. А ещё из правильно оформленных комментариев можно автоматически генерировать документацию;
  • пишите тесты;
  • пишите быстрые тесты. Иначе из верного друга они превратятся в злейшего врага;
  • избегайте использования глобальных переменных. Их сложно отслеживать, а изменение одной части кода с ними может негативно сказаться на остальном коде. Также такие переменные могут перезаписываться тестами, создавая ненужную путаницу;
  • не забывайте про практику. Простое чтение теории не сделает вас экспертом в написании тестируемого и сопровождаемого кода.
100500

Напоминаем, что вы можете задать свой вопрос экспертам, а мы соберём на него ответы, если он окажется интересным. Вопросы, которые уже задавались, можно найти в списке выпусков рубрики. Если вы хотите присоединиться к числу экспертов и прислать ответ от вашей компании или лично от вас, то пишите на experts@tproger.ru, мы расскажем, как это сделать.

Хинт для программистов: если зарегистрироваться на соревнования Huawei Honor Cup, бесплатно получите доступ к онлайн-школе для участников. Можно прокачаться по разным навыкам и выиграть призы в самом соревновании. Перейти к регистрации.