보통 불변성과 식을 강조하기 때문에 보다 함수적인 프로그램이 생기는 경향이 있다. 코드를 보다 함
수적으로 만들어서 개선할 방법이 없을까?
7.1
함수
우리가 속한 업계에는 큰 프로그램 안에 속한 호출 가능한 하위 프로그램을 묘사하는 다양한
문구가 존재한다. 이런 용어로 아주 일반적인 서브루틴
subroutine
이라는 말이 있다. 어떤 언어(특
히 파스칼)는 결과를 반환하는 함수와 결과를 반환하지 않는 프로시저
procedure
를 구분하기도
한다. 하지만 대부분 개발자는 함수와 프로시저라는 용어를 혼용한다. 그리고 메서드라는 용어
도 있다. 메서드는 객체(또는 정적 메서드의 경우 클래스)와 연관된 서브루틴을 뜻한다.
C
언어는 이들 모두를 함수라고 부르며, 반환 값이 없는 함수를 표현하는 특별한
void
라는
타입이 있다. 자바도 이 타입을 계승했다. 코틀린은
Unit
을 거의 같은 방식으로 사용하지만,
Unit
은 값이 없는 것이 아니라 값이 없음을 표현하기 위해 항상 똑같은 싱글턴 값을 반환한다
는 점이 다르다.
1
옮긴이_ 영어로는
formal
로, 여기서는 명확한 절차에 따라 정의된 형태로 모호성이 없이 기술된 특성을 뜻하는 수학 용어다. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.