В начале своей карьеры я всегда застревал при просмотре нескольких файлов и модулей, поскольку, будучи новичками, мы просто тренируемся, программируя все в одном файле, и начинаем оттуда. В тот момент, когда есть несколько файлов и импорт, все становится запутанным для новичка. В этом посте я передаю вменяемые советы, которые дал мне мой наставник для понимания функционала кодовой базы
Ожидаемые навыки включают использование отладчика на используемом языке и базовое понимание особенностей любого языка (циклы for будут циклами for на любом языке, и если будут условия, если будут условия, синтаксис может измениться, но основная идея та же. )
Тесты
Тесты в кодовой базе, как правило, являются хорошей отправной точкой, поскольку они описывают функциональные возможности и проверяют их на примере. Тесты обычно содержат пример ввода и утверждений, подтверждающих тип вывода или сам ожидаемый вывод. Это помогает понять отношение ввода-вывода для конкретной функции. Теперь, когда это очищено, следующим шагом будет чтение функции, чтобы понять, что именно она делает и как она это делает.
Для этого я предпочитаю использовать отладчик с тестом. В функции можно создавать точки останова и понимать, какие преобразования происходят с данными при прохождении через функцию.
Теперь для очень распространенного сценария: что, если в кодовой базе нет тестов?
Примеры
Если в кодовой базе нет тестов, то следующее, что нужно сделать, это проверить примеры использования функций, для этого вам нужен ваш ближайший наставник, но тогда он может указать вам, где заканчивается использование модуля, и выполнить шаги в предыдущем пример с отладчиком, чтобы получить детальное представление о коде.
Документация
Иногда лучше всего начать с документации, есть много примеров отличных документированных ресурсов, большинство больших библиотек Python прекрасно документированы, а также такие фреймворки, как Docker и Kubernetes. Этот документ содержит основные примеры того, как использовать их программное обеспечение. Что-то подобное должно существовать для внутреннего программного обеспечения, и если оно существует, это хорошее место для начала.
Парная программа
Это очень надежный способ, поскольку другие пункты, упомянутые в посте, могут быть недоступны. Предпочтительно попросить владельца кода (парня, который поддерживает или отвечает за функциональность) некоторое время, чтобы показать веревки вокруг кодовой базы.
Если кодовая база слишком велика, это может занять много времени у этого человека, поэтому обязательно получите примеры и отправные точки использования, чтобы было легче начать работу.
Заключение
Я надеюсь, что это поможет понять, как подходить к новой базе кода новичку. Отладчик (иногда операторы печати) — очень полезный навык для изучения. Если у вас есть лучшие идеи о том, как пройти кодовую базу, пожалуйста, укажите их в разделе комментариев.