fivelinesofcode 2

[FiveLinesOfCode] 3장 : 긴 코드 조각내기

3장 : 긴 코드 조각내기 의문점 불변속성(invariant), 가정설정문(assertion) 디자인패턴 → 상속보다는 컴포지션, 컴포지션이 컴파일 오류 발생 만듬? 학습목표 다섯줄 제한(FIVE LINES)으로 지나치게 긴 메서드 식별하기란? 세부사항을 보지 않고 코드 작업하기란? 메서드 추출(EXTRACT METHOD)로 긴 메소드 분해하기란? 호출 또는 전달, 한가지만할것(EITHER CALL OR PASS)으로 추상화 수준에 맞추기란? if 문은 함수의 시작에만 배치로 if문 분리하기란? 키워드 DRY, KISS 지침을 따른경우라도 코드는 여전히 혼란스러움 1. 다섯줄 제한(FIVE LINES)으로 지나치게 긴 메서드 식별하기란? 정의 {} 제외 if, for, while, 세미콜론끝나는 모든것은..

[FiveLinesOfCode] 2장 : 리팩터링 깊게 들여다보기

2장 : 리팩터링 깊게 들여다보기 의문점 - 불변속성(invariant), 가정설정문(assertion) - 불변속성? - 객체가 정상적으로 작동하기 위해 값, 식, 상태의 일관성 보장하기위해 항상 참이 되기 위한 조건 - 기름양은 0 ≤ oil ≤ 100 사이여야만 함 - 이 범위를 벗어나면 안되는 조건을 불변속성이라 함 - - 디자인패턴 → 상속보다는 컴포지션 학습목표 가독성을 통한 의도 전달이란? 유지보수성 개선을 위한 불변속성(invariant) 지역화란? 개발속도 향상을 위한, 추가(addition)를 통해 변경가능하게 만들기란? 리팩터링의 일상 업무화란? 키워드 1. 가독성을 통한 의도 전달이란? 2. 유지보수성 개선을 위한 불변속성(invariant) 지역화란? - 가독성 및 유지보수성 향상..