N

(TIL Day 02-1)JavaSript의 패러다임 본문

TIL

(TIL Day 02-1)JavaSript의 패러다임

naeunchan 2021. 8. 4. 22:21
728x90
반응형

함수형 패러다임

  • 객체지향 프로그램의 최소 단위가 객체인 것처럼, 함수형 프로그램의 최소 단위는 함수다.
  • 함수 단위로 나눠지기 때문에 재사용성이 매우 높다.
  • 불변성을 지향하기 때문에 동작을 예측하기 쉬우며, 사이드 이펙트를 방지할 수 있다.(동시성 문제도 해결 가능)
  • 객체지향 프로그램은 제어 흐름의 간접적인 전환에 부과되는 규일이며, 함수형 프로그램은 변수 할당에 부과되는 규율이다.

 

함수형 프로그래밍의 장단점

1) 장점

  • 상태(state)가 없기 때문에 사이드 이펙트가 없다.
  • 재사용성이 높아 코드가 짧아지고 간결해진다.

 

2) 단점

  • 상태(state)가 없기 때문에 변수 조작에 어려움이 있다.
  • 재사용을 위해 함수를 잘게 쪼개야 한다.(코딩의 기술력 요구!)

 

선언형 프로그래밍

  • 무엇을 해결해야 할지에만 집중하며, 해결 방법은 컴퓨터에게 위임한다.
  • Data Flow 방식으로 상태(state)가 없으며, 재귀나 파이프를 통해 데이터가 이동한다.
  • 이에 반대되는 프로그래밍이 명령형 프로그래밍이다.

https://boxfoxs.tistory.com/430

 

명령형 프로그래밍 VS 선언형 프로그래밍

명령형 프로그래밍과 선언형 프로그래밍에 대한 비교를 어디선가 한 번쯤은 접해봤을 거라 생각합니다. 그리고 그 둘이 실제로 무엇을 의미하는지 검색을 해보셨다면 아마 아래와 같은 정의를

boxfoxs.tistory.com

 

 

 

728x90
반응형