물음표는 널이 될 수 있는 타입을 나타내고(부록 B 널이 될 수 있는 타입), String?는 요청에 유효한 경로가 있을 때 함수가 문자열을 반환하고, 일치하는 경로가 없을 때 null을 반환할 수 있음을 의미한다. 코틀린에서 널을 어떻게 처리하는지와 이렇게 널을 처리하는 방식이 함수형 프로그래밍에 어떤 이점이 있는지에 대해서는 4장 널의 문제에서 자세히 살펴볼 것이다.
앞서 언급했듯이 실제 프로젝트에서는 컴퓨터에서 실행되는 애플리케이션에 만족해서는 안 되며 배포 과정과 스크립트를 포함해야 한다. 하지만 이 책의 범위에서는 이제 작동하는 골격이 완성됐다고 할 수 있다.
첫 번째 인수 테스트
브라우저에서 애플리케이션의 배포와 실행을 볼 수 있는 것은 좋은 일이지만 그것만으로는 충분하지 않다. 코드를 변경할 때마다 모든 것이 제대로 작동하는지 테스트에서 자동으로 확인하고 싶다.
이렇게 하려면 애플리케이션에도 HTTP 클라이언트가 필요하므로 그레이들 구성에 클라이언트 Http4k 모듈을 추가한다.
testImplementation "org.http4k:http4k-client-jetty:${http4kVersion}"
그 후 목록 검색에 대한 인수 테스트 작성을 시작할 수 있다.