Community

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

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


TIL (Today I Learned)

2022.03.01

오늘 읽은 범위

  1. 형식 맞추기

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

  • 코드 형식은 의사소통의 일환이다. 의사소통은 전문 개발자의 일차적인 의무다.

  • 500줄을 넘기지 않고도 커다란 시스템을 구축할 수 있다.

    반드시 지킬 엄격한 규칙은 아니지만 바람직한 규칙으로 삼으면 좋겠다.

    일반적으로 큰 파일보다 작은 파일이 이해하기 쉽다.

  • 소스 파일도 신문기사와 비슷하게 작성한다. 이름은 간단하면서도 설명이 가능하게 짓는다.

  • 각 행은 수식이나 절을 나타내고, 일련의 행 묶음은 완결된 생각 하나를 표현한다.

    생각 사이는 빈 행을 넣어 분리해야 마땅하다.

  • 줄바꿈이 개념을 분리한다면 세로 밀집도는 연관성을 의미한다.

    서로 밀집한 코드 행은 세로로 가까이 놓아야 한다.

  • 변수는 사용하는 위치에 최대한 가까이 선언한다.

  • 한 함수가 다른 함수를 호출한다면 두 함수는 세로로 가까이 배치한다.

    또한 가능하다면 호출하는 함수를 호출되는 함수보다 먼저 배치한다.

  • 친화도가 높을수록 코드를 가까이 배치한다.

  • 프로그래머는 짧은 행을 선호한다.

    100자나 120자에 달해도 나쁘지 않다. 하지만 그 이상은 솔직히 주의 부족이다.

  • 범위로 이뤄진 계층을 표현하기 위해 코드를 들려쓴다.

  • 들여쓰는 정도는 계층에서 코드가 자리잡은 수준이 비례한다.

  • 클래스 정의처럼 파일 수준인 문장은 들여쓰지 않는다.

    • 클래스 내 메서드는 클래스보다 한 수준 들려쓴다.

      • 메서드 코드는 메서드 선언보다 한 수준 들여쓴다.

        • 블록 코드는 블록을 포함하는 코드보다 한 수준 들여쓴다.

  • 간단한 if문, 짧은 while문, 짧은 함수에서 한 줄로 줄이기 보다 들여쓰기로 범위를 제대로 표현한다.

  • 팀은 한 가지 규칙에 합의해야 한다. 그리고 모든 팀원은 그 규칙을 따라야 한다. 그래야 소프트웨어가 일관적인 스타일을 보인다.

    좋은 소프트웨어 시스템은 읽기 쉬운 문서로 이뤄진다는 사실을 기억하길 바란다.

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

  • 여러 사람이 형식을 통일할 수 있도록 검증된 코드 스타일(Air bnb)을 잘 따르도록 노력해야겠다.

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

  • // 르블랑의 법칙? (LeBlanc's Law states) - "Later equals never" is used in the context of software development, but may be applied more broadly to other areas. The law is attributed to Dave LeBlanc.