폴더 구조 변경 #85
Closed
lybell-art
started this conversation in
General
Replies: 2 comments 1 reply
-
이렇게 폴더를 세분화하면, 개발 단계에서 코드가 번거로워질 수 있으므로(이전에는 @/scroll/scrollTo.js로 구분되었던 것이 @/mainPage/shared/scroll/scrollTo.js로 이동해야 함), 다음의 alias를 추가로 제시하는 것을 제안합니다.
|
Beta Was this translation helpful? Give feedback.
1 reply
-
폴더 구조 격변은 근간을 바꿔놓는 작업이기 때문에, 리팩토링 도중에는 개인 작업이 불가능하고, 둘이서 같이 진행해야 합니다.
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
논의 배경
저희 프로젝트는 피처 기반 폴더 구조를 채용하고 있어요. 저희가 피처 기반 폴더 구조를 채용한 이유는 다음과 같아요.
하지만, 피처 기반 폴더 구조를 채용하면 개발하면서 루트 src 폴더 내에 폴더가 매우 많이 증식하기 때문에, 최상단 폴더 관리가 어려워지는 단점이 있어요. 특히, common에 해당하는 요소들이 각각의 피처 폴더와 동일한 계층에 있기 때문에, common 폴더를 찾기가 매우 어렵다는 문제가 있었어요.
추가로, 저희가 어드민 페이지의 개발을 앞두고 있는 상황에서, 실제 서비스 페이지의 feature와 어드민 페이지에서 쓰이는 feature가 동일한 위계에 있으면 혼동이 올 수 있을 것이라고 생각했어요.
제안 사항
common 폴더를 찾기 매우 어렵다는 점을 보완하기 위해, 그리고 어드민 페이지 관리에 대응하기 위해, 사용되는 범위에 따라, 폴더를 세 분류로 그룹화했어요. common, (페이지) / shared, (페이지) / features가 그것이에요.
common 폴더와 각 피처로 나뉘기 때문에, 루트 폴더에 파일의 수가 적어져서 common 기능을 찾기 쉬울 것이라고 생각했어요. common 폴더 역시 연관된 features로 묶이며, feature로 묶이지 않는 것들은 utils라는 폴더로 묶어서 관리할 예정이에요.
페이지 폴더는 shared, features로 나눌 예정이에요. shared 폴더나 common 폴더는 여태까지 그래왔듯 같은 계층의 다른 섹션을 참조할 수 있지만, features 폴더는 다른 features 폴더의 내용을 참조할 수 없어요. 만약 features 폴더가 다른 features 폴더의 것을 참조한다면, 참조되는 내용은 2개의 features가 참조하는 별도의 기능이기 때문에, 참조된 기능을 shared 폴더로 옮겨야 해요.
이렇게, feature 기반 폴더 구조의 장점을 살리면서, common 폴더를 쉽게 찾고, 보다 외부인이 볼 때 구조적으로 편안하게 볼 수 있도록 구성해 보았어요.
Beta Was this translation helpful? Give feedback.
All reactions