프로그래밍 TIP/Clojure
절차적, 구조적, 객체지향, 함수형 프로그래밍 단상
여름나라겨울이야기
2016. 7. 15. 11:31
728x90
[작성 중]
절교: 절차적 프로그래밍 Goto 쓰지 마라. (절go)
구함: 구조적 프로그래밍 함수를 써라.
객체지향 프로그래밍: 모든 것을 객체로 봐라
함수형 프로그래밍: 최대한 불변하는 것으로 봐라.
기존 구조적 프로그램과 함수형 프로그래밍의 차이
|
구조적 프로그래밍 |
함수형 프로그래밍 |
주제 |
함수로 논리를 분할하라. |
가능한 불변하게 하라. |
함수 |
논리의 분할 |
순수 함수 지향(부수 효과가 없다.) |
|
수학적 함수가 아니다.(부수 효과 발생) |
수학적 함수이다. |
함수형 프로그래밍 클로저 표기법 논란
괄호성애자.
클로저는 수학적 함수를 지향한다.
수학에서 F(x), G(y), H(z) 가 있다고 할 때 각 함수의 결과를 다음 함수의 입력으로 쓰고자 한다면
H(G(F(x))) 형태로 사용하게 된다. 클로저는 이러한 수학적 표기법을 사용한다.
반응형