Взятие чужого кода - PullRequest
       24

Взятие чужого кода

5 голосов
/ 22 октября 2009

Я беру на себя чужой код. Какие есть хорошие способы узнать, что программист сделал как можно быстрее? Я управлял им, переступал через него и смотрел на стеки вызовов. Что еще я могу сделать?

Извините, я забыл упомянуть, но документации мало, и я пытался решить простые проблемы. Спасибо!

Ответы [ 17 ]

10 голосов
/ 22 октября 2009

Установите ведение журнала, чтобы наблюдать, в какой последовательности происходят события.

Читайте здесь: Наем в качестве разработчика для поддержки и обновления текущей базы кода, без документации!

6 голосов
/ 22 октября 2009

Начните писать модульные тесты, так как это заставит вас использовать его классы / методы, и вы будете делать две вещи, изучать их и либо находить ошибки, либо иметь инструменты, готовые в случае появления ошибок.

5 голосов
/ 22 октября 2009

Обычно лучший способ - начать работу над кодом, исправляющим мелкие ошибки. Более точное время, которое вы проводите с ним, является единственным способом изучения базы кода. Нет волшебного способа выучить кодовую базу. Это займет недели, месяцы или, возможно, годы в зависимости от сложности. Однако для большинства типовых бизнес-систем время разработки составляет около 6 месяцев знаний кода и 6 месяцев отдельно от отраслевых знаний, чтобы по-настоящему понять все это.

5 голосов
/ 22 октября 2009

Исправьте в нем простую проблему.

Edit: Затем исправьте более серьезные проблемы и начните писать документацию и модульные тесты из областей, которые вы понимаете. Постройте эти области, и однажды вы сможете понять всю систему.

4 голосов
/ 22 октября 2009

Документация? Чтение самого кода, без запуска в отладчике?

Кроме этого, вы делаете то, что я бы сделал.

2 голосов
/ 22 октября 2009

Нет никакой серебряной пули в том, как быстро понять чужой код. Особенно, если он полон хаков и нет доступной документации.

Вы должны попытаться понять структуру классов и выполнить нормальный поток программного обеспечения с помощью отладчика.

Не перепрыгивайте слишком много разделов кода "о, я думаю, я знаю, что делает этот раздел" Нет, ты не Вы будете удивлены тем, какие «инновации» мы можем найти в коде.

1 голос
/ 22 октября 2009

Первое место, которое я начинаю, - это база данных.

По моему опыту, понимание модели данных является ключом к предоставлению вам контекста при прохождении кода. (при этом предполагается, что модель данных не является общей таблицей сущностей ключ-значение)

1 голос
/ 22 октября 2009

Все, что сказали все остальные, является точным при изучении того, что сделал кодер.

Еще один способ взглянуть на это - изучить саму программу. Глубоко поиграйте с приложением, как пользователь, и поймете, что делает сама программа. После того, как вы полностью разберетесь в окончательной системе, станет намного проще понять, как и почему она была написана.

1 голос
/ 22 октября 2009

Мне нравится начинать добавлять тесты к методам кода, если их там еще нет. Выяснение того, как покрыть код, дает вам глубокое понимание путей кода, ожидаемого результата и т. Д.

1 голос
/ 22 октября 2009

Поговорите с пользователями кода другого человека, если можете (либо конечные пользователи, либо другие разработчики, которым приходилось работать с его кодом). Это даст вам ощущение качества кода других лиц - был ли он выпущен с несколькими ошибками или потребовалось 6 месяцев пересмотров, чтобы сделать его правильным? Был ли разработчик осторожен в создании хорошо отшлифованного приложения или это был беспорядок? Это должно дать вам представление о том, нужно ли вам немного настроить код или начать заменять его большими кусками.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...