이번 주 클린 코드는 5, 6장이다
형식을 맞추는 목적
적절한 행 길이를 유지하라
신문 기사처럼 작성하라
개념은 빈 행으로 분리하라
세로 밀집도
세로 밀집도
는 연관성을 의미수직 거리
protected
변수를 피해야 하는 이유 중 하나변수 선언
종속 함수
개념적 유사성
가로 형식 맞추기
가로 공백과 밀집도
들여쓰기
팀 규칙
return
개행
return
전에 개행을 한 번 해주는데 밥아저씨는 그러지 않는다.. 뭔가 return
전에 개행을 해주면 분리하는 느낌이 들어서 좋은데 이건 다른 사람들과 얘기를 한 번 해보고 싶다자료 추상화
private
로 선언하더라고 각 값마다 get, set을 제공한다면 구현을 외부로 노출하는 셈이다자료/객체 비대칭
디미터 법칙
기차 충돌
final String outputDir = ctxt.getOptions().getScratchDir().getAbsolutePath();
기차 충돌
이라 부른다 → 저렇게 쓴 적 많은데 찔린다Options opts = ctxt.getOptions();
File scratchDir = opts.getScratchDir();
final String outputDir = scratchDir.getAbsolutePath();
자료 전달 객체(DTO)
활성 레코드
ssave
나 find
와 같은 탐색 함수도 제공결론
객체
는 동작을 공개하고 자료를 숨긴다
자료구조
는 별다른 동작 없이 자료를 노출한다
둘 중 상황에 맞는 방식을 선택하여 사용하자