배우지 않으면 영원히 주니어가 될 거야
Source: Dev.to
The Issue
“작동한다”는 변명을 코드 품질이 나쁠 때까지 사용한다면, 당신은 언제나 주니어 수준에 머물게 됩니다.
경험이 더 많은 개발자가 문제점을 지적할 때, 그것은 결함을 찾기 위한 것이 아니라 제품을 구하기 위한 것입니다.
The Codebase
최근에 나는 재앙 수준의 코드베이스를 검토했습니다: 수천 줄이 두 파일에 얽혀 있고, 구조가 전혀 없으며, 일종의 “큰 진흙덩어리”와 같았습니다.
나는 다음과 같은 작업을 수행했습니다:
- 코드를 논리적인 그룹으로 분리했습니다.
- 폴더 계층 구조를 도입했습니다.
- 임포트, 로직, 함수들을 분석했습니다.
- 프로젝트를 모듈형 컴포넌트로 리팩터링했습니다.
The Feedback
“이건 필요 없었어요. 원래 코드도 잘 작동했잖아요.”
“그는 우리를 틀리게 보이게 하고 싶어 하는 거예요.”
“당신이 일을 제대로 하면, 나는 몇 시간 걸리던 일을 10분이면 끝낼 수 있어요.”
“그와 함께라면 언제나 ‘수정할’ 무언가가 있어요. 작동한다면 왜 바꾸나요?”
Why Modularity Matters
코드를 모듈로 나누는 것은 자존심이 아니라, 나중에 코드를 읽거나 유지보수해야 하는 사람의 인지 부하를 줄이기 위함입니다.
모듈화를 선택 사항이나 단순히 개인 의견이라고 생각한다면, 당신은 단순함을 마스터한 것이 아니라 게으름과 평범함을 마스터한 것입니다.
구조화된 코드가 왜 강제되는지 이해하기 전까지는 다음 단계에 올라설 준비가 된 것이 아닙니다.
Question for developers
“작동한다”는 이유만으로 2,000줄짜리 파일을 정당화할 수 있을까요?