logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

레거시 코드 활용 전략

레거시 코드 활용 전략

(손대기 두려운 낡은 코드, 안전한 변경과 테스트 기법)

마이클 C. 페더스 (지은이), 이우영, 고재한 (옮긴이)
에이콘출판
36,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
알라딘 로딩중
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

레거시 코드 활용 전략
eBook 미리보기

책 정보

· 제목 : 레거시 코드 활용 전략 (손대기 두려운 낡은 코드, 안전한 변경과 테스트 기법)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 네트워크 프로그래밍
· ISBN : 9788989975922
· 쪽수 : 528쪽
· 출판일 : 2008-10-22

목차

1부. 워밍업: 코드 변경 원리를 이해하라

1장. 소프트웨어 변경
소프트웨어를 수정하는 네 가지 이유
위험한 변경

2장. 효과적인 피드백 활용
단위테스트란?
상위단계 테스트
테스트 덮개
레거시 코드 변경 알고리즘

3장. 감지와 분리
협력자 속이기

4장. 봉합 모델
엄청난 양의 테스트
봉합
봉합의 종류

5장. 레거시 코드를 위한 도구
자동화된 리팩토링 도구
모조 객체
단위테스트 하니스
일반적인 단위테스트 하니스


2부. 본격적인 소프트웨어 변경: 코드 이렇게 고치자!

6장. 고칠 건 많고 시간은 없고...
발아 메소드
발아 클래스
포장 메소드
포장 클래스
요약

7장. 코드 하나 바꾸는 데 왜 이리 오래 걸리지?
상황 이해
시차
의존관계 깨기
요약

8장. 특징, 어떻게 추가할까?
테스트 주도 개발
비교를 통한 프로그래밍
요약

9장. 뚝딱! 테스트 하니스에 클래스 제대로 넣기
성가신 매개변수의 경우
숨은 의존관계인 경우
생성 블랍인 경우
성가신 전역 의존관계인 경우
끔찍한 인클루드 의존관계인 경우
양파 매개변수인 경우
별칭 붙은 매개변수인 경우

10장. 테스트 하니스에서 실행할 수 없는 메소드
숨은 메소드인 경우
도움이 되는 언어 특징인 경우
탐지 불가능한 부작용인 경우


11장. 코드 변경 과정에서 꼭 테스트해야 할 메소드
효과에 대한 추론
전방 추론
효과 전파
효과 추론을 위한 도구
효과 분석을 통한 학습
효과 스케치 단순화

12장. 클래스 의존관계, 반드시 없애야 할까?
차단 지점 기법
조임 지점을 이용한 설계 판단
조임 지점 함정

13장. 변경에 필요한 테스트는 뭐가 있을까?
특성화 테스트
클래스 특성화
목표 테스트
특성화 테스트 작성을 위한 휴리스틱

14장. 우릴 미치게 하는 라이브러리 의존관계

15장. 응용프로그램이 모두 API 호출로 이뤄졌다면?

16장. 코드를 잘 고치기엔 내가 모르는 2%
노트/스케치
표식 나열
스크래치 리팩토링
미사용 코드 삭제

17장. 뼈대가 약한 내 응용프로그램
시스템 스토리 말하기
벌거숭이 CRC
대화 심사

18장. 발목 잡는 테스트 코드
클래스 명명 관행
테스트 위치

19장. 객체지향이 아니라서 위험하다고? 그럼 이렇게 고쳐 봐!
쉬운 경우
어려운 경우
새로운 동작 추가
객체지향의 장점 이용
모두 객체지향적이다

20장. 내 프로젝트 군살 빼기

책임 찾기
다른 기법
더 나아가기
클래스 추출을 마친 후

21장. 동일 코드의 반복 수정, 그만할 수는 없을까?
첫 번째 단계

22장. '괴물 메소드'와의 혈투, 승부수는 적절한 테스트 루틴
여러 가지 괴물 메소드
자동화된 리팩토링 지원으로 괴물 메소드 공략
수동 리팩토링 도전
전략

23장. 위반사항을 점검하는 몇 가지 기법
하이퍼웨어 편집
단일 목적 편집
서명 보전
컴파일러 의존

24장. 무너진 코드의 하늘, 솟아날 구멍이 있을까?

3부. 반드시 넘어야 할 산: 코드 변경의 난맥, 의존관계를 극복하라!

25장. 의존관계를 깨는 기법
매개변수 적응
메소드 객체 탈출
정의 완료
전역 참조 캡슐화
정적 메소드 드러내기
호출 추출과 오버라이드
팩토리 메소드 추출과 오버라이드
게터 추출과 오버라이드
구현체 추출
인터페이스 추출
인스턴스 위임자 도입
정적 세터 도입
연결 대체
생성자 매개변수화
메소드 매개변수화
매개변수 원시화
특징 끌어올리기
의존관계 밀어내리기
함수를 함수포인터로 대체
전역 참조를 게터로 대체
메소드 하위클래스화와 오버라이드
인스턴스 변수 대체
템플릿 재정의
텍스트 재정의

부록. 리팩토링
메소드 추출

저자소개

마이클 C. 페더스 (지은이)    정보 더보기
오브젝트 멘토(Object Mentor) 사에서 근무하고 있으며, 소프트웨어 개발에 필요한 멘토링, 기술 개발, 지식 이전, 리더십 서비스 등을 공급하는 세계적인 리더이자 기여자 중 한 사람이다. 현재 테스트 주도 개발(TDD), 리팩토링, 객체지향 설계, 자바, C#, C++, 익스트림 프로그래밍(XP)에 대한 세계적인 트레이닝과 멘토링을 맡고 있다. 또한 JUnit 테스트 프레임워크의 C++ 포트인 CppUint과 통합 테스트 프레임워크 FIT의 C++ 포트인 FitCpp의 원저자로서, ACM과 IEEE 학회의 회원이며 3개의 OOPSLA 컨퍼런스에서 CodeFest의 회장을 역임했다.
펼치기
이우영 (옮긴이)    정보 더보기
미국 아리조나대학교에서 Computer Engineering 학사, 미국 남가주대학교에서 Electrical Engineering 석사학위를 각각 받았으며 현재 KT IT기획실에서 데이터 거버넌스 업무를 수행하고 있다. IT, 로봇, 교육에 관심이 있다.
펼치기
고재한 (옮긴이)    정보 더보기
충남대학교에서 컴퓨터과학 학사, 미국 남가주대학교에서 컴퓨터과학 석사학위를 받았으며 현재 미국 뉴욕주립대에서 컴퓨터과학 박사학위 과정을 밟고 있다. 국민체육진흥공단, 삼성전자, 한국생산기술연구원에 근무했고 국내외 컨퍼런스와 학술지에 10여편의 논문을 게재했다.
펼치기
이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책