심플 디자인 : 객관적으로 바라보는 코드 품질 - 위키북스 IT Leaders 시리즈 45
저자

박영록

저자:박영록
네이버,엔씨소프트,카카오등의대기업부터티켓몬스터,메디쿼터스등의중견기업CTO역할,스타트업창업과외주프로젝트까지다양한경험을쌓은개발자.

목차


01장:코드품질의기준
1.1가독성은해로운기준이다
1.2심플디자인
1.3코드품질은왜중요한가?

02장:중복을제거하라
2.1중복이해로운이유
2.2중복은다른설계문제로인한증상이기도하다
2.3중복제거의위험성
2.4조건문의중복
__2.4.1확산되기쉬운조건문과다형성
__2.4.2설정값의분기
__2.4.3조건문대신예외던지기
__2.4.4부울논리표로조건문줄이기
2.5약간다른중복코드다루기
2.6인지하기어려운중복찾아내기
__2.6.1평행상속구조
__2.6.2같은필드의나열
__2.6.3클라이언트와서버간의중복코드
2.7문서와코드의중복
2.8내버려둬도괜찮은중복코드

03장:구성요소를줄여라
3.1왜줄여야하는가?
3.2어떤구성요소부터줄일것인가?
3.3상태
__3.3.1지역변수
__3.3.2임시변수할당
__3.3.3반복문변수다루기
__3.3.4입력값이나인자의전처리를위한변수
__3.3.5전역변수
__3.3.6멤버변수
3.4예외처리
__3.4.1전역예외처리
__3.4.2사용자입력값검증및예외처리
3.5긴매개변수목록
3.6호출스택
3.7테스트케이스
3.8코드라인수

04장:좋은함수만들기
4.1코드품질의핵심은좋은함수를만드는것
4.2지역변수를줄여라
4.3함수는퍼블릭이어야한다
4.4심플디자인과좋은함수의기준간의관계
4.5적절한함수의크기

05장:코드품질개선방법론
5.1일단동작하게하고,그다음에리팩터링하라
5.2아기걸음
5.3테스트주도개발
5.4언제리팩터링할것인가?
5.5코드리뷰전략
__5.5.1리드타임문제
__5.5.2통합지옥
__5.5.3대기시간제거
__5.5.4객관적인코드품질기준
__5.5.5코드리뷰의의사결정권
5.6본질적복잡성과우발적복잡성
5.7애자일선언과익스트림프로그래밍

06장:코드품질과AI
6.1전통적인코드품질도구
6.2AI와코드품질

맺음말