Nie jestem nawet pewien, jak zdefiniować tę trudność. Przypomina mi to test, jaki przeprowadził u mnie kilku potencjalnych pracowników, zanim dostałem pracę. Wybierałyby jakiś przedmiot w pokoju, a następnie pozwalano mi zadawać pytania, które pomogą mi ustalić, co to za przedmiot (podobnie jak 20 pytań). Byłem w tym absurdalnie dobry (nie, nigdy nie dostałem wysokich punktów za pokorę), więc założyłem, że będę naprawdę dobry w rozwiązywaniu problemów ...
Ale oto rzecz, którą ostatnio odkryłem. Jestem naprawdę dobry w tej sytuacji, ponieważ bardzo łatwo jest zobaczyć wszystko, co jest w pokoju, dlatego mogę podejść do mojego problemu z pewną koncepcją części składowych. W istocie „wiem, czego nie wiem”. Ale przy programowaniu napotykam wiele sytuacji, w których problem jest dla mnie zupełnie nieznany. Wiem, że jest zepsuty, ale nie mam pojęcia, jak może być zepsuty. Postępowałem zgodnie ze wszystkimi instrukcjami, dość dobrze znam technologię ...
Jeśli mam być szczery, wydaje mi się, że trudno mi sobie wyobrazić, co może być nie tak, żebym mógł je przetestować i, mam nadzieję, znaleźć rozwiązanie.
Jak mogę zacząć rozwijać tę umiejętność? Co muszę zrobić, aby pomóc mojej, jak się wydaje, ograniczonej wyobraźni wymyślić sposoby, w jakie mój projekt mógłby zostać zepsuty? Czy są jakieś ćwiczenia (być może zagadki?), Które mogą sprawić, że będę w tym lepszy? Zdaję sobie sprawę, że prawdopodobnie największym lekarstwem jest po prostu doświadczenie ... ale mam nadzieję pomóc przyspieszyć ten proces, jeśli będę mógł. Bezmyślne wpatrywanie się w ekran komputera przez kilka godzin jednocześnie nie jest nawet zabawą ...
printf
lub println
czy cokolwiek stosować pod każdym wierszu kodu w 100% pewien, wszystko działa, jak chcesz go do pracy haha. Następnie uruchom konsolę, a App > out.txt
potem pojawi się trudna część przeglądania ogromnego pliku. Czasami moje pliki dziennika mają ponad kilka milionów linii i może to zająć trochę czasu haha. Oczywiście właściwym sposobem byłoby użycie debuggera i punktów przerwania, ale czasami nie jest to możliwe.