오늘은 2주차 실습 과정 중 오류에 관해서 얘기해볼까 한다.
VS 한글입력 도중 특수기호 입력시 마지막 한글이 깨지는 오류이다.
if (playerChoice = computerChoice) 에서의 오류이다
첫번째 오류는 다양한 시도를 해보고 방법도 많이 찾아봤지만 재설치등 밖에 방법이 안보이고 확실하지도 않으며 재설치 할 시간도 없었다.
그래서 일단 보류하고 모든 console 부분을 영어로 대체했다. 오히려 영어 공부도 하고 좋았다.
두번째 오류는 대입연산자와 비교연산자의 인식 오류였다.
ex) int number = 0;
기존 해석: number은 0과 같다(number은 0이다 와 같은 해석으로 생각했다)
올바른 해석: number에 0을 대입하다.
위의 기존 해석처럼 해석해도 코드의 오류로는 느껴지지 않아서 정확히 =, == 의 차이점을 모르고 넘어갈 수 있다.
하지만 의미는 명확히 달랐다.
오류: if (playerChoice = computerChoice)
정상: if (playerChoice == computerChoice)
위의 오류에서 정확히 인식할 필요를 느꼇다.
위의 오류 문구를 대입연산자로서 해석 해보면
if 문이지만 참, 거짓의 값이 나오지 않을것 같고 문장도 이상하다. 하지만 정상적인 비교연산자로 해석을 하면
문장이 훨신 부드러워 진 것을 느낄 수 있다. 이로서 if 문 문장으로 0 또는 1 값을 반환할 수 있었다.
확실히 코딩은 잘못된 문장과 해결 된 문장을 되집고 코드를 해석하면서 오류를 곱씹으면 확실히 잊혀지지 않고 정확히 문제를 인식할 수 있는 것 같다.
앞으로도 코드를 공부하며 단순이 코드를 따라 써보는 것이 아닌 해석하고 해석한 글을 다시 코드로 옮겨 쓴다는 생각으로 처리 하면 실습의 효과를 배로 받을 수 있을 것 같았다.