С ростом приложения вносить изменения становится все сложнее. В первую очередь это происходит из-за зависимостей. Один модуль зависит от другого, тот, в свою очередь, от третьего, который зависит от определенных данных. Меняется одно место, и каскадом изменения попадают во все зависимые.
Конечно, степень влияния зависит от того, насколько ваш проект хорошо спроектирован. Но в любом случае, работает такое правило — чем больше проект, тем больше связей и тем выше стоимость внесения изменений.
Единственный по-настоящему действенный способ проверить, все ли хорошо — автоматизированные тесты.
Вероятно, вы уже заметили, что вся практика на Хекслете проверяется автоматически. Как раз теми самыми тестами. Часто тесты пишут даже до кода, что и происходит на Хекслете. Тесты уже есть, а код только нужно написать. Такой подход позволяет очень быстро проверять работоспособность необходимого кода.
Автоматизированное тестирование — достаточно большая тема, которая не обходит стороной ни одного профессионального разработчика. Чем раньше вы научитесь их писать, тем лучше сформируетесь как специалист, а ваш код станет гораздо надежнее. Но правильно писать тесты — целая история. Как минимум, рекомендуем прочитать нашу статью об этом.
Курсы на Хекслете построены таким образом, что мы провоцируем открывать тестовые файлы и анализировать их код. Чем чаще вы это делаете, тем лучше. В любой непонятной ситуации смотрите в тесты.
Написание тестов (особенно до кода) входит в методологию, называемую XP или экстремальное программирование. Она включает в себя лучшие практики, помогающие писать качественный код. Вот их список:
- Тестирование
- Игра в планирование
- Заказчик всегда рядом
- Парное программирование
- Непрерывная интеграция
- Рефакторинг
- Частые небольшие релизы
- Простота проектирования
- Метафора системы
- Стандарты оформления кода
Приобщайтесь к хорошему ;)
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
- Статья «Как учиться и справляться с негативными мыслями»
- Статья «Ловушки обучения»
- Статья «Сложные простые задачи по программированию»
- Вебинар «Как самостоятельно учиться»