본문 바로가기

책 리뷰

(20)
함수형 자바스크립트 [4장 - (1)] ※ 함수형 자바스크립트 라는 책을 한 장씩 리뷰해보도록 하겠습니다. 4장은 내용이 길어서 두개의 포스팅으로 나눠서 작성하겠습니다. Chapter 4. 재사용 가능한, 모듈적인 코드로 "잘 작동하는 복잡한 시스템은 십중팔구 잘 작동했던 단순한 시스템에서 진화한 경우가 많다" 모듈성 이란, 프로그램을 더 작고 독립적인 부분으로 나눌 수 있는 정도를 뜻합니다. 모듈적 프로그램은 자신을 구성하는 부속들로부터 자신의 의미를 도출할 수 있다는 특별한 점이 있습니다. 부속 (하위 프로그램) 은 다른 시스템에 그대로 혹은 더 잘게 쪼개서 통합할 수 있는 재사용 가능 컴포넌트이며 개발자의 생산성 및 유지보수, 가독성을 향상시키는데 큰 도움이 됩니다. 4.1 메서드 체인 대 함수 파이프 라인 3장에서 본 메서드 체인과 별..
함수형 자바스크립트 [3장] ※ 함수형 자바스크립트 라는 책을 한 장씩 리뷰해보도록 하겠습니다. Chapter 3. 자료구조는 적게, 일은 더 많이 "계산 프로세스는 컴퓨터에 내재하는 추상적인 존재다. 이들이 점점 진화하면서 프로세스는 데이터라는 또 다른 추상적인 존재에 영향을 끼친다." 3장에서는, 이전 장에서 함수를 순수하게 만드는 법에 대해 알아보았으니 이것들을 서로 연결하는 방법을 알아보겠습니다. 자료구조를 순차적으로 탐색/변환하는 데 쓰이는 실용적인 연산들 (map, reduce, filter 등등) 과 로대시JS 에 대해 볼 것입니다. 이런 도구들을 통해 메인 로직에서 제어 흐름을 명확하게 분리하여 간결하고 확장성 좋은 선언적 프로그램을 작성할 수 있습니다. 3.1 어플리케이션의 제어 흐름 프로그램이 정답에 이르기까지 거..
함수형 자바스크립트 [2장] ※ 함수형 자바스크립트 라는 책을 한 장씩 리뷰해보도록 하겠습니다. Chapter 2. 고계 자바스크립트 " 자연어는 지배적인 패러다임이 없습니다. 자바스크립트도 마찬가지입니다. 개발자들은 절차적, 함수형, 객체지향형 접근 방법이 들어 있는 손가방에서 적절히 골라 섞어 쓰면 됩니다." 이번 장에서는 자바스크립트가 함수형 언어로서 손색이 없는 이유 및 미흡한 점과 함께 고계함수, 클로저까지 보도록 하겠습니다. 2.1 왜 자바스크립트인가? 자바스크립트의 장점은 편재성 (어디에나 있음) 입니다. 동적 형식이고 객체지향적 범용 언어이자 가장 널리 쓰이기 때문입니다. 자바스크립트 구문은 C 언어와 비슷하지만 리스프(Lisp), 스킴(Scheme) 같은 함수형 언어의 영향을 많이 받았습니다. 리스프, 스킴의 공통점..
함수형 자바스크립트 [1장] ※ 함수형 자바스크립트 라는 책을 한 장씩 리뷰해보도록 하겠습니다. Chapter 1. 함수형 길들이기 " 객체지향은 가동부를 캡슐화하여 코드의 이해를 돕는다. 함수형 프로그래밍은 가동부를 최소화하여 코드의 이해를 돕는다" 어플리케이션 아키텍쳐를 구축하는데에 있어 어떤 문제는 객체지향 설계 방식으로 해결이 가능하나, 자바스크립트는 동적인 언어라 덩어리가 커지면 복잡해지고 가독성이 떨어지며 관리가 힘들어지는 문제점이 있습니다. 이러한 문제와 멀어지기 위해 어플리케이션 설계시 중요하게 봐야할 요소는 아래와 같습니다. 확장성 : 추가 기능을 지원하기 위해 계속 코드를 리팩토링해야 하는가? 모듈화 용이성 : 파일 하나를 고치면 다른 파일도 영향을 받는가? 재사용성 : 중복이 많은가? 테스트성 : 함수를 단위 테..