함수형 코디 더 좋은 액션 만들기

쏙쏙 들어오는 함수형 코딩

Chapter 5 : 더 좋은 액션 만들기

이번 장에서 살펴볼 내용

  • 암묵적 입력과 출력을 제거해서 재사용하기 좋은 코드를 만드는 방법
  • 복잡하게 엉킨 코드를 풀어 더 좋은 구조로 만드는 법

암묵적 입력과 출력을 줄이면 좋은 점이 무엇인가요?

암묵적 입력과 출력을 명시적으로 바꾸면 모듈화된 컴포넌트로 만들 수 있다. 암묵적 입력과 출력은 사용시에 조심해야한다. 다른 코드가 실행되지 않는지, 결과는 필요하지만 다른 곳에 영향을 주진 않는지 고려해야할 부분이 많아진다.

테스트 하기가 좋아진다. 암묵적 입력과 출력을 테스트하려면 아무 때나 실행할 수 가 없기 때문에 테스트 하기가 어렵다. 모든 입력값을 설정하고 테스트를 돌린 후 출력 값을 확인해야 한다.

암묵적 입력과 출력은 어떻게 줄일까요?

암묵적 입력을 명시적 입력인 인자로 바꾸고 암묵적 출력을 명시적 출력인 리턴값으로 바꾼다. 이 원칙을 적용한 후 재사용이 가능해졌는지, 테스트하기 더 좋아졌는지 확인해야 한다.

계산을 어떻게 분류하고 이점이 무엇인가요?

계산을 비즈니스 규칙과 도메인에 대한 동작으로 분류한다. 계산을 분류하면 그룹이 명확해지고 코드에서 의미있는 계층이 만들어진다. 각 도메인의 구조에따라 계산을 분류하면 독립적으로 확장이 가능하다. 계층은 엉켜있는 코드를 풀면 자연스럽게 만들어진다.

엉켜있는 코드를 풀면 어떤 이점이 생기나요?

설계는 엉켜있는 코드를 푸는 것인데 함수를 사용하면 자연스럽게 관심사를 분리할 수 있다. 함수를 잘 분리하면 다음과 같은 이점이 생긴다.

  1. 재사용하기 쉽다.
    • 함수는 작을수록 재사용하기 쉽다. 조합하기 쉽다.
  2. 유지보수하기 쉽다.
    • 쉽게 이해할 수 있고 올바른지 아닌지 명확하게 알 수 있다.
  3. 테스트하기 쉽다.
    • 한 가지 일만 하기 때문에 한 가지만 테스트하면 된다.

유틸리티란?

재사용할 수 있는 함수를 유틸리티 함수라고 한다. 분리해낸 함수가 여러 곳에 재사용할 수 있는 기능을 가지고 있다면 함수 이름과 인자 이름을 더 일반적인 이름으로 바꿔서 여러 곳에서 재사용 할 수 있다.

결론: 더 좋은 액션을 만들려면 어떻게 해야하나요?

엉켜있는 것을 풀어 각 함수가 하나의 일만 하도록 만들어야 합니다. 개념을 중심으로 구성해야 재사용하기 쉬워집니다.

results matching ""

    No results matching ""