Почему это главный навык
На работе вы будете читать чужой код гораздо больше, чем писать свой. Приходите в проект, где сто тысяч строк написаны до вас, и первая задача — не сломать то, чего не понимаете.
Новички этого не ждут: их учили писать с нуля. Поэтому первые недели на работе даются тяжело — и поэтому навык стоит тренировать заранее.
Порядок действий в незнакомом проекте
1. Не начинайте с кода. Сначала прочитайте описание, посмотрите на проект снаружи: что он делает, кто им пользуется, какие есть разделы. Без этого код — набор букв.
2. Запустите. Пока проект не работает у вас, разбираться бессмысленно. Часто на это уходит день, и это нормально.
3. Найдите точку входа. Откуда начинается выполнение. В веб-проекте — обработчики запросов, в утилите — главная функция.
4. Пройдите один сценарий насквозь. Выберите одно действие пользователя и проследите путь от начала до конца: где принят запрос, где проверены данные, где сходили в базу, что вернулось.
Один пройденный сценарий даёт больше понимания, чем неделя бессистемного чтения.
5. Стройте карту, а не запоминайте. Набросайте себе схему: где что лежит, кто кого вызывает. Через неделю пригодится.
Приёмы, которые помогают
Читайте сверху вниз, а не подряд. Сначала общая структура папок, потом крупные части, потом детали. Не начинайте с первого файла в алфавитном порядке.
Используйте отладчик. Поставить остановку и посмотреть значения быстрее, чем гадать по коду.
Меняйте и смотрите. Безопасный способ понять кусок — сломать его специально и посмотреть, что перестанет работать.
Смотрите историю изменений. Она показывает, почему код такой. Часто странное решение объясняется одной строчкой в описании изменения.
Не пытайтесь понять всё. Понимания нужного куска достаточно. Целиком проект не держит в голове никто, включая авторов.
Чего не делать
- Не переписывать сразу. Соблазн велик: «тут всё плохо, сейчас перепишу». Обычно за странным решением стоит причина, о которой вы ещё не знаете.
- Не молчать неделю. Полчаса на попытку разобраться, потом спросите. Молчаливое ковыряние выглядит не как самостоятельность, а как неумение просить помощь.
- Не судить по стилю. Код, написанный иначе, чем вы привыкли, не обязательно плохой.
Как тренироваться до работы
Читайте открытые проекты. Возьмите небольшой проект на своём языке и разберите один сценарий насквозь.
Внесите правку в чужой проект. Это заставляет разобраться по-настоящему: чтобы что-то поправить, надо понять окружение.
Работайте вместе с кем-то. Самый быстрый способ: в общем проекте вы каждую неделю читаете чужой код и объясняете свой. За два месяца такой работы навык вырастает больше, чем за полгода чтения в одиночку.
Хватит читать — пора делать
На CohortX можно найти команду под пет-проект и получить тот самый опыт, о котором спрашивают на собеседовании.
Похожие статьи
- PostgreSQL for beginners: installing and first stepsHow to install it, connect, create a database and a table, and what to do when it won't connect.
- PostgreSQL для новичка: установка и первые шагиКак поставить, подключиться, создать базу и таблицу, и что делать, когда не подключается.
- Designing a simple databaseThe order of work from a list of entities to a finished schema, the rules for relationships, and mistakes visible at a glance.