я нашел ответ здесь: изменено
[travis]
slug = dben89x/my_repo
на
[travis]
slug = dben89x/my-repo
Скользите через код, ища места, где Вы думаете, что знаете то, что происходит. Прочитанный те разделы, чтобы видеть, думала ли Ваша начальная буква, держат, и затем попытайтесь изменить ее, чтобы видеть, можно ли изменить ее, чтобы сделать что-то еще.
Я предложил бы, чтобы это велось немного дорожной картой проекта, таким образом, можно затем идти дальше к определению, где новые возможности и исправления ошибок так, можно способствовать значимым способом.
Кроме того, прочитайте документацию и любые документы вращения, которые могут существовать (функциональные спецификации, спецификации требования, и т.д.). Это может далее помочь Вам изучить более быстрые веревки кода :)
Учитесь с целью. Я думаю, что Вы будете учиться лучше всего, если Вы будете иметь в виду некоторую цель - фиксируют это или добавляют ту функциональность. Начните искать вероятные места, где необходимо будет внести изменения. Следуйте за потоками управления назад, чтобы узнать, как добраться до той точки в коде. Кроме того, получите представление "птичьего глаза" кода - смотрят на расположение и структуру. Хороший код будет иметь описательные имена, который говорит, что Вы хотите каждый класс, и метод для. Посмотрите, можно ли распознать шаблоны реализации и видеть, где/как они используются. Не помещайте слишком много запаса в документацию - документы могут быть превосходными, но они часто вне синхронизации с тем, что действительно делает код. Позвольте самому коду быть лучшей документацией.
Если Вы захотите книги, которые я нашел полезным для изучения, как узнать из кода, то я проверю книги Diomidis Spinellis Чтение кода: Качество Перспективы и Кода С открытым исходным кодом: Перспектива С открытым исходным кодом.
Для Вашего конкретного вопроса я запустил бы с Чтения кода. Но оба - хорошие книги.
Я предпочитаю "ступать" через строку кода с методической точностью в отладчике IDE. Это не практично, чтобы попытаться достигнуть всего кода в большой системе, но я запускаю путем отладки запуска приложения и затем иду дальше к другим областям кода, которые выглядят интересными/важными приложению.
Найдите маленькое место, где Вы чувствуете себя комфортно и изменяете его. Проигнорируйте остальных; Вы доберетесь для приобретения знаний об этом при необходимости в нем. Не чувствуйте себя разбитым размером; каждая программа запустилась с первой строки и если бы она не была организована в маленьких, независимых битах, то было бы невозможно поддержать. Таким образом, всегда существует ниша для Вас.
Спасибо за Ваши ответы. Партия полезной информации.
Некоторые инструменты я могу думать:
Еще предложение на полезных инструментах?
Я выполнил бы doxygen против исходного кода, таким образом, у меня есть доступное для просмотра, читаемое, представление уровня класса источника. Это превосходно для помощи броду Вы путь через огромную кодовую базу
Я предложил бы найти опцию, которую Вы действительно хотите добавить.
Я только когда-либо действительно просматривал гору чужого кода однажды, и это было сделано намного легче, потому что опция, которую я хотел добавить, была чем-то, в чем я действительно нуждался. Я думаю, что это - причина, которую большинство проектов с открытым исходным кодом запускает так или иначе; удовлетворять потребность.
Ограбить
Я нашел, что шаг 3 обычно становится очень включенным, и это - то, что дает мне направление в том, как прочитать код и изучить, как система работает.
Добавление опции может быть хорошей идеей, но в большой системе это могла быть боль для ровного выяснения, какова та функция. Не только то, что, любая функция Вы пишете для изучения системы, скорее всего, закончит тем, что было похоже на дерьмо, потому что Вы понятия не имели бы, что, где и то, как система работает. Опция, которую Вы хотите добавить, хотя может, конечно, привести Вас к правой точке в № 3 так, не обесценивает это.
- s
Если Вы знакомы с проектом и имеете некоторую идею того, что Вы хотите внести, затем получить последнюю версию кода и внести изменение, которое Вы хотите внести. Не пытайтесь переварить целое тело кода когда-то. Ищите шаблоны и конвенции, которые используются и пытаются придерживаться их как можно больше.