함수형 프로그래밍 정의, 순수함수

Updated:

Categories:

Tags:

##

성공적인 프로그래밍에 대해서 생각해보자

  • 모든 프로그래밍 패러다임은 성공적인 프로그래밍을 위해 존재한다
  • 성공적인 프로그래밍은 좋은 프로그램을 만드는 일이다
  • 좋은 프로그램은 사용성, 성능, 확장성, 기획 변경에 대한 대응력 등이 좋다
  • 이것들을 효율적이고 생산적으로 이루는 일이 성공적인 프로그래밍이다

내가 생각하기에 성공적인 프로그래밍이라고 한다면 위에 내용을 토대로 생각해보자면 재사용성이 높게 설계를 한 것을 말하는 것일 것 같다!

##

함수형 프로그래밍

함수형 프로그래밍은 성공적인 프로그래밍을 위해 부수 효과를 미워하고 조합성을 강조하는 프로그래밍 패러다임이다

  • 부수 효과를 미워한다 -> 순수 함수를 만든다
  • 조합성을 강조한다 -> 모듈화 수준을 높인다
  • 순수함수?
    • 순수함수란 동일한 값을 인자로 받게 되면 동일한 값으로 리턴해주는 함수를 순수함수라고 한다. (더 있지만 생략!)

모듈화를 말하는 것 같다. 기능별로 모듈을 만들어 놓게 된다면 재사용성도 높힐 수 있고, 유지보수성에서도 좋을 것 같다는 생각을 하게 된다

순수함수의 예시

function add(a, b) {
  return a + b;
}

console.log(add(10, 5)); // 15

비슷하지만 순수함수가 아닌 예시

var c = 10;
function add(a, b) {
  return a + b + c;
}

console.log(add(10, 5)); // 25
c = 20;
console.log(add(10, 5)); // 35
  • 이 경우에는 변수 c라는 존재가 있기때문에 순수함수가 아니라고 할 수 있다. 만약 c가 변수가 아닌 상수라면 순수함수라고 할 수 있다


개인 공부 기록용 블로그입니다.
잘못된 내용이 있다면 꼭 알려주세요!

맨 위로 이동하기

JavaScript 카테고리 내 다른 글 보러가기