데이터 엔지니어 이것저것

함수형 프로그래밍 본문

개발

함수형 프로그래밍

pastime 2022. 10. 23. 06:40
728x90

함수형 프로그래밍은 하나의 프로그래밍 패러다임으로 정의되는 일련의 코딩 접근 방식.

 

개발하는 소프트웨어의 크기가 커짐에 따라 복잡하게 엉켜있는 스파게티 코드의 유지보수의 어려움에 따라

이를 해결하기 위한 패러다임.

 

특징

 

  • 불변성
    변경 가능한 상태를 최대한 제거.
    같은 입력에 대해서는 항상 같은 출력을 보장
    부작용(side effect)이 없는 함수
  • 프로그램의 검증이 쉽다
    오로지 입력 값에 대한 영향만 받기 때문에 테스트가 쉽고, 예측하기 쉽다
  • 최적화

 

 

 

 

장점

  1. 높은 수준의 추상화
  2. 함수 단위의 코드 재사용이 수월
  3. 불변성을 지향하기 때문에 프로그램의 동작의 예측이 쉽다

단점

  1. 재귀를 통한 코드로 인해 무한루프의 가능성이 있다.
  2. 조합하는것이 어렵다.
728x90

'개발' 카테고리의 다른 글

pre-commit  (1) 2023.02.20
ALS 알고리즘  (0) 2023.02.16
쿠키, 세션, 토큰의 차이점  (0) 2021.09.27
ORM(Object Relational Mapping)  (0) 2021.09.10
추상클래스와 인터페이스 차이  (0) 2021.08.11