live-small / JsDeepDive_Study

모던 자바스크립트 deep dive 책 스터디

Home Page:https://github.com/live-small/JsDeepDive_Study/wiki

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[토의] 중첩함수는 왜 필요한가요?

live-small opened this issue · comments

commented

질문

함수 내부에 정의한 중첩함수의 필요성에 대해 논의해보고 싶습니다.

상세내용

중첩함수는 함수 내부에 정의되어, 외부 함수를 도와주는 헬퍼 함수의 역할을 수행합니다.
하나의 함수가 다양한 일을 하기보다, 한 가지의 일만 수행하도록 작게 쪼개는 게 좋다고 생각해서,
중첩함수의 필요성에 의문이 들었습니다.

  1. 중첩함수의 필요성(혹은 이점)은 뭘까요?
  2. 하나의 함수가 한 가지의 일을 수행하도록 작게 쪼개는 게 좋은 이유는 무엇이라고 생각하나요?

참고

12장 p182

  1. 저는 함수가 하나의 일만 수행하도록 하는 것이 아래 답변처럼 결국에는 중복된 코드를 줄이고, 코드를 재사용하기 위함이라고 생각합니다. 그렇기 때문에, 예를 들어, 반복되는 코드지만 반복문으로 줄이기 어려울 때 중첩함수가 이용되는게 아닐까..개인적인 생각입니다.
  2. 한 함수에서 여러 일을 하면 그 함수 자체를 재사용하기 어려워져서, 중복된 코드를 재사용하기 어려워지면, 유지 보수하기도 어려워지고 코드를 짜는데 시간도 오래 걸리기 때문입니다.
    만약 고차 함수, 중첩함수 구체적인 코드 사례에 대해 공부하고 싶으시면
    "함수형 자바스크립트 프로그래밍" 이라는 책 추천드립니다.