Eu nem tenho certeza de como definir essa dificuldade. Isso me lembra o teste que alguns funcionários em potencial fizeram comigo antes de eu conseguir um emprego. Eles escolhem um objeto na sala e então eu tenho permissão para fazer perguntas para me ajudar a determinar o que é esse objeto (bem como 20 perguntas). Eu era ridiculamente bom nisso (não, nunca consegui pontos altos por humildade), então assumi que seria realmente bom na solução de bugs ...
Mas aqui está a coisa que descobri recentemente. Sou muito bom nessa situação, porque é muito fácil ver tudo o que há na sala, para que eu possa abordar meu problema com algum conceito de suas partes componentes. Em essência, "sei o que não sei". Mas com a programação, encontro muitas situações em que o problema é totalmente desconhecido para mim. Sei que está quebrado, mas não tenho noção de como pode estar quebrado. Eu segui todas as instruções, conheço a tecnologia bastante bem ...
Se eu for honesto, sinto que estou tendo dificuldade em imaginar coisas que podem estar erradas, para que eu possa testá-las e, espero, encontrar uma solução.
Como desenvolvo essa habilidade? O que preciso fazer para ajudar minha imaginação, aparentemente limitada, a encontrar maneiras de quebrar meu projeto? Existem exercícios (talvez quebra-cabeças?) Que podem me fazer melhorar nisso? Estou ciente de que provavelmente a maior cura é apenas a experiência ... mas espero ajudar a acelerar o processo, se puder. Olhar fixamente para a tela do computador por algumas horas não é nem divertido ...
printf
ou o println
que você usa em todas as linhas de código para ter 100% de certeza de que tudo funciona como você deseja que funcione haha. Em seguida, execute o aplicativo do console e, em App > out.txt
seguida, vem a parte mais difícil de visualizar o arquivo enorme. Às vezes, meus arquivos de log têm mais de alguns milhões de linhas e pode levar algum tempo, haha. Obviamente, o caminho certo seria usar um depurador e pontos de interrupção, mas às vezes não é possível fazer isso.