Skip to content

Latest commit

 

History

History
22 lines (20 loc) · 1.69 KB

240225-Chapter4-5.md

File metadata and controls

22 lines (20 loc) · 1.69 KB

Chapter4 정리

  • 함수형 프로그래밍의 목적
    • 최대한 계산을 하는 함수를 많이 만들어내는 것
  • (질문) 그럼 객체지향에서의 멤버 변수를 수정하는 것은?
    • 객체 지향에서도 멤버 변수를 건드리는 것은 액션임
    • 다만 여기에도 함수형 프로그래밍을 적용해서, 특정 로직을 설계할 때 계산을 많이 빼자
    • 객체지향과 함수형 프로그래밍을 같이 쓸 수 있음. 독립적인 개념이 아님.
  • 함수의 입력과 출력
    • 함수에 명시적 입력과 출력만 있다면 -> 계산
    • 함수에 하나 이상의 암묵적 입력/출력이 있다면 -> 액션
    • 명시적 입력: 함수의 매개변수
      명시적 출력: 되받아치기 값
      암묵적 입력: 전역 변수, 객체 내부의 멤버 변수
      암묵적 출력: 콘솔 출력, 전역/멤버 변수에 값 대입시

  • 함수의 재사용성을 높이려면 계산 함수여야 함

Chapter5 정리

  • 재사용할 수 있는 함수는 메모리나, CPU 자원을 많이 사용하는 경우가 있음. 하지만 일반적인 상황에서는 크게 신경 쓰지 않아도 될 정도(예를 들어, 장바구니 리스트를 복사하는 경우가 있음. 장바구니가 수천, 수만 개가 일반적으로 되지는 않기 때문) 해당 문제를 인지만 하되, 크게 신경 쓰지는 않는 것이 좋아 보임
  • 함수에 하나 이상의 암묵적 입/출력이 있다면 -> 액션
    이때 액션에서도 최대한 암묵적 입/출력을 줄이는 것이 좋음
  • 액션/계산함수는 최대한 한 가지 역할만 하도록 분리하는 것이 좋다. 그리고 그거 생각보다 어렵다.