함수형 사고에 대해서 살펴보기 예시
: 어떤 사람과(Person) 거주 국가가 같은 사람을 전부 찾고, 어떤 학생과 거주 국가와 다니는 학교가 모두 같은 학생을 전부 찾기위에 함수를 함수형으로 바꾸면(기능만)위와 같이 바꿀 수 있고, 이 함수는 유연하게 성이 같고, 학교가 같은 함수로 쉽게 기능을 추가할
Lodash와 함수형 프로그래밍 이름은 거창하지만 별건 아니다.. 단지 함수형 프로그래밍을 할 때 유용한 라이브러리인 lodash가 제공하는 함수들을 바탕으로 함수형 프로그래밍을 좀 더 이해해보고자 글을 쓴다. _.chain 을 통한 지연 평가 위와 같이 각각의
: 위의 명제(?)는 아니지만, 문장을 위해서 튜플 이라는 자료 구조를 사용하고자 한다. 튜플은 형식이 다른 원소를 한 데 묶어서 다른 함수에 건네주는 일이 가능한 불변적인 자료구조이다. 물론, 배열이나 객체를 이용할 수 있지만, 튜플을 사용하면 좀 더 쉽게 '불변성'
일단 바로는 이해 안되겠지만, 함수형 프로그래밍의 진짜 목표는 애플리케이션의 부수효과를 방지하고, 상태 변이를 감소하기 위해 데이터의 제어 흐름과 연산을 추상하는 것이다.부수효과상태 변이 감소데이터의 제어 흐름과 연산 추상솔직히 아직 뭔소리인지 잘모르겠지만, 일단 이정
위의 코드를 바탕으로 분석해보면(나만의 관점)객체 지향 설계는 특정 객체의 데이터 설계에 종속적으로 메서드를 만들어야 한다. 예를 들어, school 정보는 Student에 있고, 나머지 정보는 Person에 있는 상황에서 studentsInSameCountryAndS
: React와 Redux 등을 쓰면서 불변성에 대해서는 익히 들어서 알고 있었다. 하지만, 생각해보면 왜 불변성을 유지해야하지? 라는 생각을 제대로 해본 적이 없다. 단지 React, Redux 등의 인터페이스가 불변성을 유지하는 방향으로 이뤄져있기 때문에 거기에 맞
책을 통해 함수형 프로그래밍을 공부하는 도중에 위와 같은 주제가 나왔어서, 그럼 실제로 두개의 기법을 모두 활용한다면 어떤 형태일까? 가 궁금했다.객체지향 프로그래밍의 장점 및 필요성계층적 데이터를 처리할 필요가 있을 때실무에서 레거시 객체와 상호작용할 떄실세계 문제를
위와 같은 코드를 아래와 같이 바꿨다. 완벽하게 선언형으로 컨버팅하진 못했지만, 그래도 훨씬 깔끔하고, 가독성 있는 코드로 바꿀 수 있었다. 앞으로 최대한 이렇게 선언형 프로그램이 방식으로 사고하는 버릇을 들이자.
: 재귀(Recursion)란 주어진 문제를 자기 반복적인 문제들로 잘게 분해한 다음에 이들을 다시 조합해서 원래 문제의 정답을 찾는 기법이다. 재귀의 주된 구성 요소는기저 케이스(=종료 조건)재귀 케이스이다.: 너무 복잡하게 접근하기보다는 딱 떠오르는 것에 비유를 해