본문 바로가기
반응형

javascript pure/javascript 코어 개념36

24. 함수형 프로그래밍(Functional Programming) - 3 커링(Currying)과 합성(Composition) 커링(Currying) 커링은 다중 인자를 갖는 함수를 단일 인자를 갖는 함수들의 연속으로 변환하는 기법입니다. 이를 통해 함수를 더 재사용 가능하고 유연하게 만들 수 있습니다. 커링된 함수는 각각의 단계에서 하나의 인자만을 받아들이고, 나머지 인자들은 이전 함수 호출 결과로 반환됩니다. 핵심 내용: 커링은 다중 인자를 갖는 함수를 단일 인자를 갖는 함수들의 연속으로 변환하는 기법입니다. 커링을 통해 함수를 더 재사용 가능하고 유연하게 만들 수 있습니다. 커링된 함수는 각각의 단계에서 하나의 인자만을 받아들이고, 나머지 인자들은 이전 함수 호출 결과로 반환됩니다. 예시: // 커링 예시 function add(a) { return function(b).. 2024. 2. 17.
23. 함수형 프로그래밍(Functional Programming) - 2 불변성(Immutability)과 레퍼런셜 투 트루(Reducing to True) 불변성(Immutability) 불변성은 데이터가 생성된 후에는 그 상태를 변경할 수 없는 것을 의미합니다. 이는 데이터의 변경을 허용하지 않고, 새로운 데이터를 생성하는 방식으로 작업을 수행합니다. 불변성은 함수형 프로그래밍에서 중요한 개념으로, 코드의 예측 가능성과 안정성을 높여줍니다. JavaScript에서는 객체나 배열의 불변성을 유지하기 위해 라이브러리나 내장 메서드를 활용할 수 있습니다. 핵심 내용: 불변성은 데이터가 생성된 후에는 변경할 수 없는 것을 의미합니다. 데이터의 변경이 필요할 때는 새로운 데이터를 생성하여 사용합니다. 불변성은 코드의 예측 가능성과 안정성을 높여주며, 다중 스레드 환경에서 안전성을 .. 2024. 2. 17.
22. 함수형 프로그래밍(Functional Programming) - 1 고차 함수(Higher-order Functions)와 순수 함수(Pure Functions) 고차 함수(Higher-order Functions) 고차 함수는 다른 함수를 인수로 받거나 함수를 반환하는 함수를 말합니다. 이는 함수형 프로그래밍에서 중요한 개념 중 하나이며, JavaScript에서도 많이 활용됩니다. 고차 함수를 사용하면 코드를 간결하고 모듈화된 형태로 작성할 수 있습니다. 핵심 내용: 고차 함수는 다른 함수를 인수로 받거나 함수를 반환하는 함수를 말합니다. JavaScript에서는 고차 함수를 사용하여 함수를 조합하고 새로운 함수를 생성할 수 있습니다. 주로 콜백 함수, 맵(map), 필터(filter), 리듀스(reduce) 등과 같은 배열 메서드에서 고차 함수를 자주 사용합니다. 예.. 2024. 2. 16.
21. 디자인 패턴(Design Patterns) - 3 모듈(Module) 패턴과 중재자(Mediator) 패턴 모듈(Module) 패턴 모듈 패턴은 JavaScript에서 모듈화를 구현하기 위한 디자인 패턴 중 하나입니다. 이 패턴은 코드를 여러 파일로 분리하여 관리하고 모듈 간의 의존성을 줄이는 데 사용됩니다. 주로 캡슐화와 정보 은닉을 통해 코드의 유지보수성을 향상시키는 데 활용됩니다. 핵심 내용: 모듈 패턴은 즉시 실행 함수 표현식(IIFE)을 사용하여 모듈을 생성합니다. 내부 변수와 함수는 외부에서 접근할 수 없도록 캡슐화되며 필요한 경우 공개 인터페이스를 통해 외부에 노출됩니다. 모듈 간의 의존성을 최소화하기 위해 단일 책임 원칙을 따르며, 각 모듈은 특정 기능 또는 역할을 수행합니다. 예시: var Module = (function() { // .. 2024. 2. 16.
반응형