인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

열심인 참새님의 프로필 이미지

작성한 질문수

웹소켓/STOMP 채팅서비스(spring, vue, redis)

순수웹소켓-백엔드

강사님 프로젝트 디렉토리 구조에 대해서 질문있어요!

작성

·

48

0

보통 contoller service repository
이렇게 폴더 두고
그 안에서 여러개의
MemerConroller
ChatController
이런식으로 나누는 것만 봐서
chat과 member 디렉토리를 나누고
그 안에서 다시 controller 디렉토리하고 만드는
방법을 처음 써보는데요~
저는 강사님 방법이 더 좋은데 보통 어떻게 사용하나요? 특별히 강사님 처럼 디렉토리 나눈 이유가 있을까요 ??

답변 2

0

bradkim님의 프로필 이미지
bradkim
지식공유자

controller에 모든 컨트롤러를 집어 넣는것은 프로그램이 단순할때는 문제가 없지만, 서비스가 좀만 커져도 코드 찾거나 분류하는게 어려워집니다. 일반적인것은 우리 수업에서 사용한것과 같은 서비스단위로 폴더를 나누는것이라고 생각하시면 될것 같습니다.

열심인 참새님의 프로필 이미지

감사합니다!

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 열심인 참새님.

디렉토리 구조는 프로젝트 관리와 코드 유지보수를 용이하게 하기 위해 매우 중요합니다. 강사님의 방법은 모듈화된 접근법으로, 각 기능별 혹은 도메인별로 디렉토리를 나누어 관리하는 것을 의미합니다. 이는 대규모 애플리케이션에서 특히 유리하며, 다음과 같은 이점이 있습니다:

  1. 모듈성: 코드가 기능별로 잘 분리되어 있기 때문에, 특정 기능을 수정하거나 추가할 때 다른 부분에 미치는 영향을 최소화할 수 있습니다.

  2. 유지보수성: 한눈에 각 기능이나 도메인에 관련된 모든 파일을 파악할 수 있어서 유지보수가 쉬워집니다.

  3. 협업: 대규모 팀에서 작업할 때 각 팀원이 특정 모듈에 집중할 수 있게 하여 병합 충돌을 줄일 수 있습니다.

요즘 많은 개발자들은 프로젝트의 복잡성과 규모에 따라 이러한 모듈화된 접근법을 많이 채택하고 있으며, 특히 마이크로서비스 아키텍처를 활용할 경우 유리합니다.

아래 링크를 통해 디렉토리 구조와 관련된 유사 질문을 확인하실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.