[요구사항 탐구] indent(인덴트, 들여쓰기) 2까지만 허용한다.

2021. 12. 2. 14:26
반응형

이 글은 요구사항에 대해서 의문점을 가지고 질문을 던지며 의문점을 해결해나가는 글입니다.

지금은 1주 차 미션이 끝나고 2주 차 미션이 시작된 시점이지만, 그 전에 1주차에 제시되었던 요구사항중 하나의 요구사항에 대해서 탐구했던 것을 포스팅해보려 합니다.

 

우테코 프리코스 1주 차 미션을 처음 받았을 때 제목과 같은 요구사항을 볼 수 있었습니다. 그 아래에는 아래와 같은 문구들이 쓰여있었습니다.

 

  • 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다.
  • 힌트: indent(인덴트, 들여쓰기) depth를 줄이는 좋은 방법은 함수(또는 메소드)를 분리하면 된다.

 

 

처음 들었던 생각은  '가독성을 위해서 indent를 2까지만 쓰라는 건가'였습니다.


 

아무래도 블록문(미션에서는 함수를 의미한 게 아닐까 싶다.)에서 코드의 depth가 깊다는 것은 해당 블록문(함수)에서 여러 개의 분기문을 사용을 한 다는 것이고 그렇게 된다면 하나의 블록문(함수)가 많은 역할을 담당하게 된다는 것을 의미합니다. 최종적으로, depth가 깊어지면 블록문(함수)의 역할이 정확히 무엇인지 파악하기 힘들어지게 되면서 코드의 가독성이 떨어지게 되는 것입니다.  

 

 

저의 해석이 맞았는 지 구글링을 실컷 해보았습니다. 


아래 링크에 들어가면 저의 해석과 비슷한 이야기가 나옵니다.

https://levelup.gitconnected.com/javascript-code-styling-best-practices-maximum-depth-and-lines-e89bd591186c

 

JavaScript Code Styling Best Practices — Maximum Depth and Lines

No deeply nested code and long code vertically or horizontally.

levelup.gitconnected.com

nested depth는 2~3이 적절하다 왜냐하면  더 길어지게 되면 가독성이 떨어지기 때문이다.

 

 

글을 마치며


indent(인덴트, 들여쓰기) 2까지만 허용한다.라는 요구사항이 우테코 교육생들에게 전하는 말은 가독성있는 코드를 짜도록 노력해라이지 않을까 싶습니다.

 

해당 요구사항 덕분에 1주 차 미션에서 함수 내에서 최대한 분기를 적게 사용하면서 코드를 작성할 수 있었습니다. 앞으로는 depth를 최소로 가지고 갈 수 있도록 노력할 예정입니다.

반응형

BELATED ARTICLES

more