Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
TIL 5. 형식 맞추기
#clean_code
2년 전
372


TIL (Today I Learned)


2022.03.01

오늘 읽은 범위


5장 형식 맞추기

책에서 기억하고 싶은 내용을 써보세요.

  • 한 함수가 다른 함수를 호출한다면 두 함수는 세로 가까이 배치한다. 또한 가능하다면 호출하는 함수를 호출되는 함수보다 먼저 배치한다. 그러면 츠로그램이 자연스럽게 읽힌다. 규칙을 일관적으로 적용한다면 독자는 방금 호출한 함수가 잠시 후에 정의되리라 는 사실을 예측한다.

  • 정렬이 필요할 정도로 목록이 길다면 문제는 목록 길이이지, 정렬 부족이 아니다. 아래 코드처럼 선언부가 길다면 클래스를 쪼개야 한다는 의미다.

  • 이렇듯 범위로 이뤄진 계층을 표현하기 위해 우리는 코드를 들여쓴다. 들여쓰는 정도는 계층에서 코드가 자리잡은 수준에 비례한다. 클래스 정의처럼 파일 수준인 문장은 들여쓰지 않는다. 클래스 내 매서드는 클래스 보단 한 수준 들여쓴다. 메서드 코드는 메서드 선언보다 한 수준 들여쓴다. 블록 코드는 블록을 포함하는 코드보다 한 수준 들여쓴다.

  • 좋은 소프트웨어 시스템은 읽기 쉬운 문서로 이뤄진다는 사실을 기억하기 바란다.
    스타일은 일관적이고 매끄러워야한다. 한 소스 파일에서 봤던 형식이 다른 소스 파일에도 쓰이리라는 신뢰감을 독자에게 줘야 한다. 온갖 스타일을 뒤섞어 소스 코드 필요 이상으로 복잡하게 만드는 실수는 반드시 피한다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 코드의 세로 줄 정렬, 가로 줄 정렬 같은 것은 코드에서 별로 중요하지 않은 부수적인 개념이라고 생각했다 하지만, 코드를 보기 좋게 가독성을 높일 수 있는 또 다른 방법이란 것을 알게 되었다. 자바스크립트 사용자라서 자바의 클래스를 정확히 이해하고 있지 않지만, 정렬에 대해서 고민해보고 해당 코드가 너무 복잡하진 않은지 나눠야할 지에 대해서 점검해봐야겠다는 생각이 들었다.

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • 자바 클래스