2

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

edem
  • 5,970
  • 2
    Конечно можно:) Все придет с опытом. Как только перейдете на более высокий уровень абстракции, то даже язык сильной роли играть не будет – Vladimir Afanasyev Jan 30 '20 at 19:52
  • Читать чужой код непросто при любом уровне профессионализма. – eanmos Jan 30 '20 at 20:01
  • Тут прежде всего надо хорошо представлять предметную область для которой код решает задачу. Если не представлять, какие алгоритмы актуальны для ее решения, то любой код будет темным лесом – avp Jan 30 '20 at 20:44
  • Чужой код плохо читается, если человек пишет в другом стиле, или если ты не знаешь синтаксис языка. Согласованность стиля обеспечивается а) общепринятым (официальным) стилем в языке б) согласованием необщепринятых моментов в команде. Поэтому в первую очередь сложно читать код, если другой человек (или ты сам) не соблюдает общепринятого либо принятого в команде стиля, либо использует малоизвестные библиотеки. Ну и есть некоторые нюансы в языке. Например, на ассемблере почти всегда сложно читать код, т.к. то же самое в другом языке, как правило, можно написать намного короче и ясней. – Mikhail Ionkin Jan 30 '20 at 20:52

2 Answers2

2

Тут надо задать вопрос самому себе:

могу ли я читать свой код?

Если да, то посмотри на то, насколько этот код стар, если даже спустя месяц ты можешь без проблем прочесть свой код, то либо ты его хорошо пишешь, либо можешь в нем разобраться. Для начала практикуйся, в практике будешь использовать фрагменты чужого когда с того же stackoverflow и тогда на практике и научишься читать чужие проекты
1
  • Не всякий код хорош, плохой код и профессионалы будут с трудом читать. Хороший код в идеале должен быть вполне понятен даже новичку (хотя бы на уровне сути происходящего, без деталей). Хороший код может научиться читать почти любой человек.
  • Практика, практика, и ещё раз практика. Сначала чужой код читать тяжело, потом легче.
  • Ещё сильно зависит от языка. Несмотря на мою 30-летнюю практику программирования есть языки, синтаксис которых я легко понимаю, а есть такие, где я ничего не пойму без дополнительных объяснений.
CrazyElf
  • 71,194