Я даже не уверен, как определить эту трудность. Это напоминает мне о тесте, который несколько предполагаемых сотрудников сделали на меня, прежде чем я получил работу. Они выбирали предмет в комнате, и тогда мне позволяли задавать вопросы, чтобы я сам мог определить, что это за предмет (например, 20 вопросов). Я был смехотворно хорош в этом (нет, я никогда не получал высоких баллов за смирение), поэтому я предположил, что буду действительно хорош в устранении ошибок ...
Но вот что я понял недавно. Я действительно хорош в этой ситуации, потому что действительно легко увидеть все, что находится в комнате, поэтому я могу подойти к своей проблеме с некоторой концепцией ее составных частей. По сути, я «знаю, чего не знаю». Но с программированием я сталкиваюсь с множеством ситуаций, когда эта проблема мне совершенно неизвестна. Я знаю, что он сломан, но понятия не имею, как он может быть сломан. Я выполнил все инструкции, хорошо знаю технологию ...
Если честно, я чувствую, что мне просто трудно представить, что может быть неправильно, поэтому я могу проверить их и, надеюсь, найти решение.
Как мне развить этот навык? Что мне нужно сделать, чтобы помочь моему, по-видимому, ограниченному воображению придумать способы, которыми мой проект мог быть сломан? Существуют ли упражнения (возможно, загадки?), Которые могут помочь мне в этом? Я знаю, что, вероятно, самое большое лекарство - это просто опыт ... но я надеюсь помочь ускорить процесс, если смогу. Бессмысленно смотреть на экран моего компьютера несколько часов подряд - это даже не весело ...
printf
или println
или что вы используете под каждой строкой кода, чтобы быть на 100% уверенным, что все работает так, как вы хотите, чтобы это работало, ха-ха. Затем запустите консольное приложение, а App > out.txt
затем начнется сложная часть просмотра огромного файла ... иногда мои файлы журнала занимают несколько миллионов строк, и это может занять некоторое время, ха-ха. Конечно, правильным способом было бы использовать отладчик и точки останова, но иногда это невозможно сделать.