Post

함수형 프로그래밍 - (2)

함수형 프로그래밍은 어떻게 구분해야할까?

이전에 작성했던 함수형 프로그래밍 문서에서는 함수형 프로그래밍이 어떤것인지, 어떻게 작성하면 좋은건지에 대해서 작성을 했었습니다.

오늘은 함수형 프로그래머로서 함수형 프로그래밍의 대한 구분을 한번 작성해볼려고 합니다.

함수형 프로그래밍의 구분

함수형 프로그래밍은 세 분류로 나눌수 있을것 같습니다.

  1. 액션
  2. 계산
  3. 데이터

이 세 분류로 나눌수가 있는데 이 분류는 매우 중요하며 자세히 한번 배워볼려고 합니다.

액션

액션은 실행 시점이나 횟수, 혹은 둘다 의존하는것을 의미합니다. 부수효과, 부수 효과가 있는 함수, 순수하지 않는 함수 라고도 부릅니다.

예를 들면 이메일 보내기, DB 읽기 같은것을 의미합니다.

계산

입력을 출력으로 계산할때 사용합니다.

이 부분은 순수함수, 수학 함수라고 부릅니다.

예를 들면 최댓값 찾기, 이메일 주소가 올바른지 같은것을 의미합니다.

데이터

DB에서 읽어온 데이터 혹은 사용자가 입력한 이메일 주소 같은것을 데이터 라고 부릅니다.

함수형 프로그래머는 더 좋은 코드를 만들기 위해서 이미 있는 코드를 액션, 계산, 데이터로 리펙터링 하는 방법을 찾을 수 있고 분류한 기술을 적용하는법을 익혀야 합니다.

예를 들어 분류 하기

  • 이메일 보내기
    • 액션
  • DB에서 회원 가져오기
    • 액션
  • 회원 등급 매기기
    • 데이터
  • 이메일 주소
    • 데이터
  • 이메일 제목
    • 데이터
  • 이메일 본문
    • 데이터
  • 어떤 회원이 이메일을 받을지
    • 계산

이렇게 볼 수 있을것 같습니다.

This post is licensed under CC BY 4.0 by the author.

© Banal. Some rights reserved.