2025. 1. 14. 23:44ㆍ더 좋은 개발자가 되기 위해
개요
내배캠의 계산기 과제를 진행을 완료를 하고 튜터님에게 피드백을 받게 되었다.
나름 열심히 진행을 한다고 생각을 했는데, 생각보다 코드에 문제가 많았다.
나도 문제가 많다고 생각은 했는데, 이정도일줄은 몰랐다.
여기서 이제 가장 큰 문제가 depth가 너무 깊다고 지적을 하셨는데,
오늘은 계산기 프로그램을 리펙토링하기 위한 첫 발인 Depth을 줄이는 방법에 대해서 해볼까 한다.
Depth란?
프로그램에서 깊이를 의미한다. 라고 구글AI 가 말을 해주었다.아마 소스코드에서는 indent Depth를 의미한다고 생각한다.
Indent Depth란 들여쓰기 깊이를 의미를 한다.
예시)
public static void main(String[] args) {
for( int i = 0; i < 10; i++ ) {
if( i % 2 == 0 )
System.out.println(i);
}
}
이렇게 for문 안에 if문이 있고 그 안에 프린트 메소드가 있다면
for문 하나에 indent Depth 하나, if문에 indent Depth 하나로 Depth는 2이다.
아마 블로그 주인장이 많은 반복문과 조건문으로 인해 Depth가 높아졌다고 생각을 한다.
그러면 Depth가 무엇인지 알았으니, Depth을 왜 줄여야 되는지 알아보자.
Depth 가 낮으면 좋은 점
- 가독성이 올라간다.
- 유지보수성이 증가한다.
프로젝트 진행을 하다보면 혼자서만 작업을 하는 것이 아닌 여러 팀원과 같이 코드를 확인을 하게 된다.
프로그램의 Depth가 깊다면 자신만이 알수 있는 코드가 되거나, 혹은 신만 알 수 있는 코드가 되게 된다.

Depth를 줄이는 방법
- 메서드를 추출하여 Depth을 줄인다.
- return 값을 조정한다.
- 메소드가 한가지 일만 담당하도록 한다.
느낀점
오늘은 시간이 적어서 많이 못적었다.
뭐에 정신이 팔린지는 모르겠지만 정신을 차리니 23시여서 못했지만
오늘 계산기 과제에서 있던 내용을 상기를 하면서 찾으면서 얻은 정보를 가볍게 적어보았다.
내일은 기존 계산기 과제를 다시 리펙토링을 해보아야겠다.
그리고 찾아보니 배달의 민족 부트캠프에서는 벌써 Clean Code에 대해서 배우고,
indent Depth에 대해서 적어 놓는게 많던데
그들에게 늦지 않게 나도 공부를 열심히 해야겠다.
'더 좋은 개발자가 되기 위해' 카테고리의 다른 글
| [회고] 동시성 프로젝트를 마치며 (1) | 2025.03.31 |
|---|---|
| 좋은 개발자가 되기 위한 첫 발걸음 with 내일배움캠프 학습법 특강 (1) | 2024.12.30 |
| 내일배움캠프) 스타터 노트 (5) | 2024.12.06 |
| 시작하는 글 With 내일배움캠프 (2) | 2024.12.06 |