
엄격한 아키텍처 없이도 파일의 영향 범위를 명확히 규정하는 초경량 재귀적 폴더 설계법
대규모 항공 서비스 구축 과정에서 직면한 컴포넌트 관리와 의존성 문제를 심플한 '폴더 접두어 규칙' 하나로 우아하게 해결한 실무 중심의 아키텍처 노하우입니다. 무겁고 복잡한 Feature-Sliced Design(FSD) 대신, 누구나 1초 만에 이해하는 세 가지 기호만으로 사람과 AI가 모두 편안한 개발 환경을 구축한 생생한 경험을 소개합니다.
복잡한 아키텍처 패턴을 팀에 학습시킬 시간이 부족하거나, 파일 삭제와 컴포넌트 재사용성 판단에 매번 병목을 겪는 모든 프론트엔드 개발 조직에게 이 직관적인 규칙을 추천합니다.
프로젝트 규모가 커짐에 따라 특정 컴포넌트 파일의 영향 범위와 전용 여부를 직관적으로 파악하기 어려워, 파일 삭제나 재사용 판단에 매번 불필요한 분석 시간이 소요되는 비효율이 발생했습니다. 이를 해결하고자 Feature-Sliced Design(FSD) 도입을 검토했으나, 엄격한 레이어 구분 기준을 합의하는 데 따르는 인지 비용과 촉박한 개발 일정 때문에 실무 적용이 어려웠습니다.
복잡한 아키텍처 대신 파일의 전용 및 공유 범위를 폴더 접두어 기호로 구분하는 3가지 규칙(전체 공유 'shared/', 계층 내 공유 '_이름/', 특정 파일 전용 '+이름/')을 수립하여 재귀적으로 적용했습니다. 공용 요소는 데이터 바인딩 여부에 따라 값을 화면에 그리기만 하는 'ui'와 스스로 필요한 데이터를 가져오는 'widget'으로 역할을 분담했습니다.
폴더 구조와 이름만으로 파일의 영향 범위를 명확히 알 수 있어 안전하고 신속한 코드 삭제 및 수정이 가능해졌으며, 새로 합의할 규칙이 줄어 인지 과부하가 해소되었습니다. 또한 사람이 명시적인 가이드를 주지 않아도 AI 도구가 주변 폴더 구조를 파악해 스스로 올바른 위치에 파일을 생성하는 성과를 거두었습니다.
Trade-off
폴더명과 파일명의 짝을 오직 네이밍 규칙에만 의존하기 때문에, 리팩토링 시 파일명만 바꾸고 폴더명을 수정하지 않아 일관성이 깨지는 현상이 소수 발생했습니다. FSD와 달리 규칙 준수 여부를 자동으로 검사해 주는 Linter나 컴파일러의 경고 시스템을 기본으로 탑재하지 못해, 수동 셸 스크립트 작성 등의 보완책이 필요합니다.
코드를 레이어, 슬라이스, 세그먼트 형태의 명확한 계층으로 분류하고, 단방향 의존성 흐름을 강제하여 프론트엔드 프로젝트의 결합도를 제어하는 아키텍처 설계론입니다.
폴더명 앞의 기호(+, _)를 사용해 하위 요소의 활용 범위를 명시적으로 표현하는 단순한 디렉토리 네이밍 규칙입니다.
컴포넌트가 스스로 내부 상태와 데이터 요청을 제어하는 주체인지(Smart) 혹은 오직 데이터전달(Prop)을 받아 화면만 그리는지(Dumb)에 따라 설계를 분리하는 기법입니다.




