개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
2022.02.28
오늘 읽은 범위
5장.형식맞추기
책에서 기억하고 싶은 내용을 써보세요.
코드 형식은 중요하다. 너무 중요해서 무시하기 어렵다. (p.96)
서로 밀접한 코드 행은 세로로 가까이 놓여야 한다는 뜻이다. (p.100)
서로 밀접한 개념은 세로로 가까이 둬야 한다. (p.101)
변수는 사용하는 위치에 최대한 가까이 선언한다. (p.101)
잘 알려진 위치에 인스턴스 변수를 모은다는 사실이 중요하다. (p.103)
한 함수가 다른 함수를 호출한다면 두 함수는 세로로 가까이 배치한다. (p.104)
어떤 코드는 서로 끌어당긴다. 개념적인 친화도가 높기 때문이다. 친화도가 높을수록 코드를 가까이 배치한다. (p.106)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
이 챕터를 읽으면서 생각난 것이 사회초년생 때의 기억이다. SI 업체를 다니면서 레거시에 있는 코드들이 맞는 포맷인줄 알고 곧이 곧대로 따라하곤 했다. 특히 변수명을 나열하는 멍청한 짓까지 했었다. 그 때만 생각하면 아찔하다.
확실히 팀에서 형식을 맞추고 코딩을 하게 되면 동일한 코드 구조를 가지고 있어 읽기도 편하고 해석할 일이 없어지는 것 같다. Prettier로 코드를 이쁘게 만드는 것도 중요하지만 ESLint와 연계하여 규칙에 맞지 않는다면 오류로 인지하게끔 해주는 것도 좋은 방법이라고 생각한다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
가능하다면 호출하는 함수를 호출되는 함수보다 먼저 배치해야 한다.
이 말에서 약간의 의문이 들었습니다. 자바스크립트에서 함수를 const 로 선언하게 된다면 호출되는 함수를 먼저 선언하라는 규칙도 있었습니다. 물론 호출하는 시점에서는 함수가 이미 선언된 이후라 상관이 없겠지만, 규칙이 지정되어 있다면 책에 나온 내용과는 달리 호출되는 함수가 먼저 배치되어야 할 수 밖에 없습니다.
함수를 선언할 때 const와 function 선언 방식 중 어떤게 더 효율적이고 읽기 좋은 코드인지 고민을 해봐야 할 것 같습니다.