프로젝트 구조 변경에 대해
경력은 2년차 정도 되었고, 오늘 신규 기능 개발 중 프로젝트 구조에 관해서 호되게 많이 혼났습니다.
저희 회사는 바닐라 PHP로 개발 하고 있고, htdocs를 엔드포인트로 대분류 → 중분류 → 소분류로 디렉토리를 관리하고 있습니다.
예를 들어 사용자 서비스는 User폴더 → 하위 로그인, 사용자 페이지 등등이 있고, Order 폴더 → 주문, 장바구니 같은 중분류 주제로 나누고 있습니다.
제가 코드를 보았을 때 주관적일 수도 있습니다만, 디렉토리 컨벤션은 그나마 괜찮지만, 개별 기능을 까보면 사실상 서로간에 결합이 매우 강하게 이루어져 있습니다.
이런 구조적 문제로 책임 분산이 되어 있지 않고 하나의 클래스 마다의 단위에 강하게 책임을 위임하고 있습니다.
이 책임으로 인해 유지보수성이 떨어진다 느껴, 이번에 신규 기능 개발 시에 신규 개발(대분류는 사용자 서비스에 종속)되는 기능에 대해 하나의 디렉토리로 묶어 관리 하려고 했습니다.
즉, 이 기능에 대해서 단독으로 사용하는 비즈니스 로직에 대해서는 타 클래스에 의존을 하지 않게 하기 위함이었습니다.
제가 실수한 부분은 우선 대분류가 존재하는 상황이고, 사용자 서비스라는 중분류에 속하는 기능을 htdocs 최상위 디렉토리로 뺀건 맞습니다. 이건 저도 간과한 부분이라 느낍니다.
위의 팀장님이 지적한 문제는 이렇게 기존 컨벤션을 지키지 않고 기능이 추가될 때 마다 디렉토리를 추가하면 나중에는 어떻게 할것인가 와 프로젝트 디렉토리 구조 변경에 대해 깊게 생각을 안했다는 지적을 받았습니다.
사수나 윗 직급분들에게 조언을 안구하고 제 개인적인 판단으로 구조를 분리 시도한 게 가장 큰 지적의 원인으로 사실 느끼고 있습니다.
한번 갑자기 크게 혼나고 나니 조금 가슴이 철렁철렁하네요.. 2년이라는 시간을 달려와서 조금은 주관이 보이는 것 같았는데, 아직 개발은 어려운 것 같습니다.
추가로 프로젝트의 구조 수정에 대해 저의 생각에 대한 조언도 주시면 달게 받아보고 싶습니다.
긴 글 조금 감정을 추스리지 않고 작성하여 두서가 없습니다. 읽어주셔서 감사합니다.