Как стать великим программистом: читайте код

Как стать великим программистом: читайте код

Чтобы стать великим писателем, больше пишите, а ещё больше читайте. В начале карьеры разработчика ведите себя как начинающий автор: читайте код.

Зачем мне читать код?

Просмотр чужого кода расширяет кругозор программиста, открывает новые стили кодирования. Это сделает вас более продуктивным программистом. Вы будете знать, где искать ошибки в коде, когда что-то пойдет не так.

Как отмечает Дональд Кнут(Donald Knuth) «Чем больше вы читаете то, что написали иные, тем больше у вас функций придумать что-то ваше в будущем…».

Как следует «читать» программный код?

Пассивное чтение чужих исходников, при котором не необходимо писать код или исправлять ошибки, малоэффективно. Так что я применяю следующую стратегию RSDW:

  • Запускайте —( R un): компилируйте, запускайте и старайтесь понять, что должен делать программный код.
  • Изучайте структуру –(Examine S tructure ): изучайте высокоуровневые структуры и просматривайте основные комплексные тесты.
  • Погружайтесь —( D ive in): следите за ключевыми потоками и изучайте структуры данных.
  • Пишите тесты —( W rite tests): пишите тесты и расставляйте приоритеты простых возможностей и исправления ошибок.

Запуск программы(Run)

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

Для использования программного обеспечения необходимо запустить его. Это означает отслеживание зависимостей и компилирование кода. В отношении библиотек это означает вызов некоторых возможностей. Самое время провести тестирование и изучить отладочную информацию.

Структура(Structure)

Определите самые важные части кода. Начните с понимания структуры кода. Используйте автоматические инструменты(такие как tree и cloc), чтобы определить файлы базы кода. Посмотрите самые важные комплексные тесты, выпишите вызываемые возможности.

Глубокие погружения(Deep Dives)

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

Начните с «вершины» конкретного действия, а далее отследите весь программный код. Для этого некоторые разработчики используют отладчики. Иные предпочитают использовать Unified Modeling Language(UML – унифицированный язык моделирования) или Flame Graphs.

Как стать великим программистом: читайте код

Flame Graphs.

Как стать великим программистом: читайте код

UML-схема технологического процесса

Как стать великим программистом: читайте программный код

Структура данных UML

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

Посмотрите типы данных и где устанавливаются ключевые переменные. Используйте отладчик для опроса структуры данных в критические моменты.

Во время таких глубоких погружений я держу открытыми два документа с заметками. В первый я записываю новый синтаксис и шаблоны, которые я нахожу Во второй я заношу вопросы к авторам кода, которые у меня возникают.

Как только появляется начальное понимание некоторых ключевых потоков, становится гораздо проще разбираться в коде.

Написание кода(Write Code)

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

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

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

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

Некоторые советы по чтению кода

Стратегии RSDW эффективны при систематическом подходе, когда вы часто сталкиваетесь с новым кодом. Они также способствует активному изучению кода путем тестирования или через отладчик.

Чтение нового кода – утомительное занятие. При этом вы тщательно прослеживаете потоки кода и одновременно с данным пытаетесь удержать десятки структур данных и возможностей у себя в голове.

Какой программный код следует читать?

Начинающему разработчику чтению кода следует уделять 60% рабочего времени. Возможно, треть этого времени должен занимать код, не входящий непосредственно в основные базы кода. Поэтому же читать в оставшееся время?

Я рекомендую отводить час утром или вечером для чтения кода, выходящего за рамки повседневной работы. Это трудно после тяжелого рабочего дня. Но найдите интересный для себя исходник и посвятите его изучению неделю. Например, Redis известен как популярная отправная точка в языке программирования С.

Параллельные проекты являются мощным стимулом. Вам придется прочитать о новых подходах в программировании и изучить различные варианты реализации создаваемого решения.

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

Ещё одним хорошим подходом будет изучение исходников авторитетных программистов, которых вы уважаете.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *