여러 함수 결합하기

    타입을 정의했다. 드디어 함수를 작성하는 데 필요한 모든 재료가 준비됐다. 이제 시작해보자! 다이어그램을 따라 간단한 함수를 차례로 만들면 된다. 먼저 네 함수의 시그니처다.

    구현에 대해서는 나중에 다룰 것이기 때문에, 먼저 NotImplementedError를 던지는 매우 편리한 TODO() 함수를 사용할 것이다. 이 함수는 항상 NotImplementedError를 던져서 다시 돌아와 구현을 완료해야 한다는 사실을 상기시켜줄 것이다.

    각 함수의 입력과 출력 타입을 보면 함수 이름을 보지 않고도 함수의 의도를 충분히 추측할 수 있다.

    fun extractListData(request: Request): Pair<User, ListName> = TODO()  
    fun fetchListContent(listId: Pair<User, ListName>): ToDoList = TODO() 
    fun renderHtml(list: ToDoList): HtmlPage = TODO()     
    fun createResponse(html: HtmlPage): Response = TODO() 
    

    이 함수는 요청에서 사용자 이름과 목록 이름을 뽑아낸다.

    실제 사용자 이름과 목록 이름을 키로 사용해 저장소에서 목록 데이터를 가져온다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.