본문 바로가기

프로그래밍

객체 지향 프로그래밍 vs 함수형 프로그래밍

객체지향 프로그래밍

 - 일급 객체는 클래스

 - 해당 클래스의 데이터 기반으로 메소드가 동작(멤버 함수 라고도 함)

 - 상호 작용하는 객체들의 집합


함수형 프로그래밍

 - 일급 객체는 함수

 - 전달 받은 파라미터 기반으로 함수가 동작(전달 받은 파라미터는 변경을 하지 않고 계산한 결과만 리턴 함)

 - 상태 값을 지니지 않는 함수 값들의 연속


* 일급 객체

 - 다른 객체들에 적용 가능한 연산을 모두 지원하는 객체

 - 변수나 데이터 구조(자료 구조)에 담을 수 있음

 - 파라미터, 리턴 값으로 사용 가능

 - 할당에 사용한 이름에 관계 없이 고유한 식별이 가능함 


[참조]

https://ko.wikipedia.org/wiki/%ED%95%A8%EC%88%98%ED%98%95_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D

https://madplay.github.io/post/functional-programming-object-oriented-programming

'프로그래밍' 카테고리의 다른 글

함수객체와 모나드  (0) 2019.08.19
Reactive Programming  (0) 2019.03.20
GOF 디자인 패턴  (0) 2019.03.12
HTTP/2  (0) 2019.03.04
HTTP와 HTTPS의 차이  (0) 2019.03.04