OOP vs FP

이주희·2022년 5월 8일
0

OOP

Object Oriented Programming

  • class와 object에 기반한 프로그래밍 디자인 패턴

  • 클래스는 객체이자 물건을 만드는 설명서, 틀을 의미한다.

  • 클래스로 만들어진 것을 객체 또는 instance라고 부른다.

  • 내장 객체: 우리가 만든 것이 아니라 기존에 있던 객체

  • 이런 방식으로 개발하는 것을 객체 지향 프로그래밍(OOP)라고 한다.

이렇게 만드는 이유
(여러 개의 함수를 따로 만들 수도 있지만,)
같은 성격의 기능들을 하나로 묶어놓아 유지보수도 쉬워지고, 개발도 빨라진다.
ex) 로그인과 로그아웃 함수는 loginAPI로 묶는다.

FP

Functional Programming

  • 전달받은 인자값을 중심으로 결과값을 반환하는 간결한 방식의 프로그래밍
  • 데이터를 함수 내부에서 따로 저장하지 않는다.
  • 한번에 하나의 작업만 수행하는 함수들의 조합으로 로직을 처리한다.

FP의 원칙

  • 입출력이 순수해야 한다.(순수 함수)
    반드시 하나 이상의 인자를 받고 받은 인자를 처리해서 결과물을 돌려주어야 한다.
  • 부작용(부산물)이 없어야 한다.
    바꾸려는 변수 이외에는 바뀌면 안된다. 원본 데이터는 불변해야 한다.
  • 함수와 데이터를 중점으로 생각한다.
profile
🍓e-juhee.tistory.com 👈🏻 이사중

0개의 댓글