
140
러닝 Go
환을 사용하는 경우에도 해당 함수는 값을 반환한다.
return
을 사용하지 않는다면, 컴파일 오
류가 날 것이다.
처음에는 어느 정도 타이핑의 수고가 없어지기에 빈 반환은 편리해 보인다. 하지만 경험 많은
Go
개발자들은 데이터 흐름을 이해하기 어려워지게 만들기 때문에 빈 반환은 좋은 생각이 아
니라고 판단한다. 좋은 소프트웨어는 명확하고 가독성이 있어서 어떤 일이 일어나는지 분명히
파악되어야 한다. 빈 반환을 사용할 때, 당신의 코드를 읽는 사람은 반환 파라미터에 할당된 마
지막 값을 추적하고 어떤 값이 정확히 반환되는지 확인하기 위해 이전 코드를 다시 봐야 할지
도 모른다.
WARNING
_ 함수가 값을 반환한다면 빈 반환은 절대 사용하지 말자. 실제 어떤 값이 반환되는지 알아내기
어려울 수 있다.
5.2
함수는 값이다
다른 많은 언어들과 같이
Go
에서 함수는 값이다. 함수의 타입은 키워드
func
와 파라미터 타
입 및 반환값으로 구성된다. 이런 조합을 함수 시그니처라 부른다. 정확히 같은 파라미터의 수
와 타입을 가지는 함수는 타입 시그니처를 만족한다.
함수를 값으로 사용하면 함수를 맵의 값으로 사용하여 기본 계산기를 만드는 영리한 작업을 수
행할 수 있다. 어떻게 이것이 동작하는지 알아보자. 해당 코드는
Go
플레이그라운드
3
에서 실
행 가능하다. ...