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

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

3 Запишите ключевые части вышеизложенного в виде комментариев, прежде чем приступить к реальному коду. Сосредоточьтесь в этих комментариях на «что» и «почему» вашего кода, а не на деталях «как». Это действительно поможет, когда вы покажете свою работу кому-то еще, потому что вам нужна помощь! Я объясню еще раз: первое, что вы вводите в компьютер, когда начинаете писать любую программу, — это набор обзорных комментариев, объясняющих ее стратегию и структуру.

4. Аккуратный согласованный макет и продуманно названные поля, методы, переменные и т. д. — хорошее вложение вашего времени. Сделайте это понятным для других людей.

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

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

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

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