GOTO 는 정말로 나쁜 것일까
C# 책을 가끔 다시 보는데 , 무언가 서사가 있는 책이라기 보다는 사전 처럼 휙휙 펴서 볼 수 있어서 그런 것 같다.
그러다 발견한 내용 중에, goto 예약어에 관한 것이 있었다.
goto 는, 해당 플래그의 지점에서 다시 프로그램을 동작하는 것이다.
초반에 배우다 보면, 많은 서적과 선배 개발자들이 이건 그냥 쓰지 않는 편이 좋다는 이야기를 듣곤한다.
하지만, 내가 읽은 C# 7.1 프로그래밍 이라는 책에서는 조금 다른 설명이 적혀있었다.
루프문에서 탈출하는 방법에 대해 , goto 와 다른 방법들을 설명하면서 , 더 짧고 직관적인 코드를 짤 수도 있다는 것이었다.
물론 모두가 goto 사용에 관해서 익숙하지 않다면, 의사소통 비용과 인지 자원을 아끼기 위해서
굳이 goto 를 사용할 필요는 없겠지만, goto 자체가 사실 그렇게 복잡한 개념은 아니기도 한 것 같았다.
무엇보다 , 기존에 가지고 있던 , 누군가가 전해준 지식을 비판없이 고정관념 삼고 있었다는 것을 깨닫게 되어서
기분이 상쾌해졌다.