길벗·이지톡

도서 IT전문서/IT입문서 프로그래밍/오픈소스
견고한 프로그램을 개발하는 원리 자바스크립트 패턴과 테스트
정 가
38,000원
I S B N
9791160500257
출 간
2016-11-10
분 량
624쪽
지 은 이
래리스펜서,세스리처즈
난 이 도
중급
옮 긴 이
이일웅
부 록
예제 소스

견고한 코딩 기술을 배우자!

자바스크립트만의 독특한 문법 구조를 이해하고 견고한 프로그램을 개발하는 데 필요한 기술과 원리를 설명한다. 콜백 패턴, 프라미스 패턴, 싱글톤 패턴, 장식자 패턴 같은 패턴과 단위 테스팅을 활용해서 오류 없고 견고한 프로그램을 개발하는 방법을 예제와 함께 보여준다. 이 책을 읽고 나면 패턴과 테스트는 물론 SOLID, DRY 같은 소프트웨어 공학 원칙과 테스트 주도 개발(TDD) 철학에 대한 통찰도 얻게 될 것이다. 

목차

1부 기초 다지기

__1장. 좋은 소프트웨어 만들기
____1.1 바르게 시작하는 코드 작성하기
____1.2 바르게 유지되는 코드 작성하기
____1.3 정리하기

__2장 도구 다루기
____2.1 테스팅 프레임워크
____2.2 의존성 주입 프레임워크
____2.3 애스팩트 툴킷
____2.4 코드 검사 도구
____2.5 정리하기

__3장 객체를 바르게 만들기
____3.1 원시형
____3.2 객체 리터럴
____3.3 모듈 패턴
____3.4 객체 프로토타입과 프로토타입 상속
____3.5 new 객체 생성
____3.6 클래스 상속
____3.7 함수형 삭속
____3.8 멍키 패칭
____3.9 정리하기

2부 패턴을 응용한 코드 테스팅

__4장 패턴이 좋은 점
____4.1 사례 연구
____4.2 어휘력을 늘려 더 멋진 코드 만들기
____4.3 잘 다듬고 테스트한 블록을 쌓아 믿음직한 코드 작성하기
____4.4 정리하기

__5장 콜백 패턴
____5.1 단위 테스트
____5.2 문제 예방
____5.3 정리하기

__6장 프라미스 패턴
____6.1 단위 테스트
____6.2 프라미스 체이닝
____6.3 프라미스 래퍼
____6.4 상태와 숙명
____6.5 표준 프라미스가 제이쿼리 프라미스와 다른 점
____6.6 정리하기

__7장 부분 적용 함수
____7.1 단위 테스트
____7.2 부분 적용 함수 만들기
____7.3 부분 적용 함수와 커링 구별하기
____7.4 정리하기

__8장 메모이제이션 패턴
____8.1 단위 테스트
____8.2 AOP로 메모이제이션 추가하기
____8.3 정리하기

__9장 싱글톤 패턴
____9.1 단위 테스트
____9.2 정리하기

__10장 팩토리 패턴
____10.1 단위 테스트
____10.2 팩토리 패턴 구현
____10.3 다른 팩토리 유형
____10.4 정리하기

__11장 샌드박스 패턴
____11.1 단위 테스트
____11.2 정리하기

__12장 장식자 패턴
____12.1 단위 테스트
____12.2 정리하기

__13장 전략 패턴
____13.1 단위 테스트
____13.2 정리하기

__14장 프록시 패턴
____14.1 단위 테스트
____14.2 정리하기

__15장 체이너블 메서드
____15.1 단위 테스트
____15.2 체이닝 덴
____15.3 정리하기

3부 자바스크립트 고급 특성을 응용한 테스팅과 코딩

__16장 인터페이스 없는 언어에서 인터페이스에 맞추기
____16.1 인터페이스가 좋은 점
____16.2 인터페이스 분리 원칙
____16.3 TDD 방식으로 규약 레지스트리 생성하기
____16.4 정리하기

__17장 인자 타입 확실히 하기
____17.1 자바스크립트는 인자 타입이 따로 없다!
____17.2 ContractRegistry를 확장하여 인자 체크하기
____17.3 규약 라이브러리 지원
____17.4 모두 합치기
____17.5 애스팩트 지향 솔루션 vs 정적 솔루션
____17.6 정리하기

__18장 call, apply, bind 삼인방
____18.1 this 바인딩 원리
____18.2 call, apply, bind를 응용한 코드의 작성과 테스팅
____18.3 정리하기

__19장 메소드 빌림
____19.1 빌리는 객체가 알맞은가?
____19.2 빌리는 객체에 미치는 부수 효과
____19.3 빌려주는 객체에 미치는 부수 효과
____19.4 정리하기

__20장 믹스인
____20.1 믹스인 만들어 스기
____20.2 정리하기

__21장 고급 프로그램 아키텍처 테스팅
____21.1 관찰자 패턴
____21.2 중재자 패턴
____21.3 정리하기

4부 고급 테스팅
__22장 DOM 접근 테스팅
____22.1 UI 단위 테스팅
____22.2 프로파일러로 코드 최적화
____22.3 정리하기

__23장 표준에 맞추기
____23.1 ESLint
____23.2 아키텍처 틀에 맞추기
____23.3 정리하기

5부 총정리
__24장 테스트 주도 개발 원칙 정리
____24.1 TDD의 의미를 다시 음미하자
____24.2 TDD 실천
____24.3 정리하기

__25장 자바스크립트 관용 구문 정리
____25.1 객체
____25.2 변수
____25.3 함수
____25.4 불 연산
____25.5 정리하기
더보기접기

저자

ㆍ지은이 래리스펜서

지은이 소개
매사추세츠 서드베리에 있는 ScerIS사 애플리케이션 개발 본부 부사장이며, C#/웹 API/SQL 서버 백엔드에 앵귤러JS를 조합한, 브라우저 기반의 애플리케이션 제작팀 리더다. 35년 동안 코볼, C, C++, C#, 메인프레임 어셈블리어에 이르기까지 다양한 프로그래밍을 경험했지만, 자바스크립트가 가장 재미있다. 코드 캠프(Code Camps) 같은 모임에 자주 연사로 초빙되고 자신의 소프트웨어 열정을 개발 커뮤니티와 공유하기를 즐긴다. 매사추세츠 말버러에 살고 있으며 개인 블로그 주소는 http://FascinatedWithSoftware.com이다. 철학, 체스, 클래식 기타에도 관심이 많다.

ㆍ지은이 세스리처즈

지은이 소개
2002년 이후 소프트웨어 전문가로 활약 중이다. 처음엔 술집, 나이트클럽 업계에서 임베디드 프로그래밍을 시작했고 2007년에 웹 애플리케이션 개발자로 전향했다. 엔터프라이즈급 지리 정보 시스템(중앙 물적 자산 관리 시스템), 상품 찾기 및 추천 관련 소셜 네트워크 등 다양한 웹 기반 애플리케이션 제작에 참여했다. 뉴햄프셔 소재 플리머스 주립 대학(현재는 대학교)에서 컴퓨터 공학, 수학을 전공했으며 지금은 조지아 공과대학에서 컴퓨터 공학 석사 학위를 밟고 있다. 개인 블로그 주소는 http://blog.shrichards.com, 트위터 계정은 @shrichards다.

ㆍ옮긴이 이일웅

옮긴이 소개
자바 개발자, 소프트웨어 아키텍트로서 20년 가까이 대규모 엔터프라이즈 프로젝트에 참여해왔다. 처음에는 HTML, CGI, 자바스크립트 등 웹 기술에 푹 빠져 프로그래밍 세계에 발을 들여놓게 되었지만, 지금은 프로젝트 현장에서 백엔드 개발 프레임워크, 소프트웨어 아키텍처 설계, 그리고 개발자 기술 가이드 및 트러블슈팅 업무를 주로 수행한다. 『소프트웨어 아키텍처 101』(한빛미디어, 2021), 『마이크로서비스 패턴』(길벗, 2020), 『스프링 5 레시피』(한빛미디어, 2018) 등 20여 권의 도서를 번역하며 그간 현장에서 갈고 닦은 노하우와 지식을 동료, 선후배 기술자들과 공유하는 일에도 힘쓰고 있다.

연관 프로그램

아래 프로그램은 길벗출판사가 제공하는 것이 아닙니다.
무료로 사용할 수 있는 정보를 안내해 드리니, 지원이 필요하면 해당 프로그렘 제작사로 문의해 주세요.