[기타]읽기 좋은 코드가 좋은 코드다
by EastGlow
읽기 좋은 코드가 좋은 코드다
더스틴 보즈웰, 트레버 파우커 지음
임백준 옮김
오랜만에(?) 책을 읽게 되어 읽으면서 기억에 남을만한 구절들을 정리하여 남겨본다.
2020-03-08 아직 읽는중
2020-03-22 완독
-
코드는 이해하기 쉬워야 한다.
-
코드는 다른 사람이 그것을 이해하는 데 들이는 시간을 최소화하는 방식으로 작성되어야 한다. 6개월 뒤 그 코드를 보는 사람이 다른 사람이 아닌, 내가 될 수도 있다.
-
분량이 적으면 좋은 코드일수도 있지만 이해를 위한 시간을 최소화하는 코드가 더 좋다.
-
이것이 어떤 역할을 하는지 이름에 정보를 잘 담아내면 좋다. 또한, 재치 있는 이름보다는 명확하고 간결한 이름이 더 좋다.
-
좁은 범위(ex: 지역 변수)에서는 짧은 이름을 써도 괜찮다. 너무 긴 이름은 오히려 읽기 힘들다.
-
약어나 축약형은 자신(혹은 그 팀의 팀원)이 아닌, 다른 사람이 보았을 때 이해가 되는 단어이면 괜찮다. (eval, dev, doc 등)
- 이름 포맷팅으로 의미있게 전달해라.
- ex: JQuery에서 관습적으로 사용하는 $는 변수 앞에 붙였다면 JQuery에 의한 변수값이라는 의미있는 이름이 된다.
- 내가 아닌 다른 사람이 이름을 보았을 때 다른 의미로 해석할 수 있을지 한번 더 생각해보자.
- ex: Filter()는 대상을 말그대로 필터링해서 조건에 맞는 것들만 조회하는 것(select())인지, 아니면 삭제해서 제외하는 것(exclude())인지 그 의미가 모호해질 수 있다.
-
미학적으로 보기 좋은 코드(ex: 들여쓰기를 잘 맞추고 변수는 변수끼리, 코드는 코드끼리 잘 정돈한)가 사용하기 더 편리하다.
-
중복된 코드가 계속 반복된다면 하나의 메소드로 만들어서 중복을 제거하고 미학적으로 보기 좋게 만들어라.
-
비슷한 역할의 코드는 그룹지어서 정렬하고 열을 맞추어 정렬된 코드로 보여주도록 하자.
-
코드에서 빠르게 유추할 수 있는 내용은 굳이 주석으로 달지 말자.
-
주석 없이 설명이 되지 않는 코드에 주석을 달지 말고 해당 코드를 설명없이 이해되도록 고쳐라.
- 기본적으로 if/else를 사용하라. 삼항 연산은 매우 간단할 때만 사용해야한다.
- 줄 수를 최소화하는 것보다 다른 사람이 코드를 읽고 이해하는 데 걸리는 시간을 최소화하는 것이 더 중요하다.
-
필요없는 변수는 제거하라. 여러 곳에서 쓰일 줄 알고 별도의 변수로 빼두었지만 한번만 사용하고 버릴 변수는 굳이 따로 담아둘 필요가 없다. 오히려 코드 이해에 독이 될 수 있다.
-
한 번에 하나의 일만 수행하도록 함수를 만들어라.
-
요구사항에 질문을 던지고 질문을 잘게 나누어 분석하라.
-
읽거나 유지보수하기 쉽게 테스트를 만들어라.
- 이 책에서 추천하는 다른 책들
- Code Complete
- Refactoring
- The Practice of Programming
- The Pragmatic Programmer : From Journeyman to Master
- Clean Code
- Effective Java
- Design Patterns:Elements of Reusable Object-oriented Software
- Programming Pearls
Subscribe via RSS