모놀리식은 모든 저장소가 분리없이(=모듈화 없이) 하나의 레포지토리에 구현된 형태를 말한다.
DB커넥트, Back-End, Front-End가 모두 한 레포에 있다.
장점으로는 빠른개발이 가능하다.
단점으로는 리펙토링 어려움, 모든 코드를 배포해야함, 오류나면 전체오류
현재 가장 많이 사용하는 방법. 어플리케이션을 관심사별로 모듈화하여 개발. 각 레포가 따로 존재하여 따로개발, 따로빌드, 따로 배포해야함.
장점으로는 일부만 배포가능. 일부오류나도 다른 서비스는 정상.
단점으로는 관리포인트증가, 레포가 분리될경우 중복코드 발생
여러 프로젝트를 하나의 레포로 관리함. 모노레포의 단점을 커버해줌.
모놀리식과는 다르게 일부만 묶어서 관리함.
같은 플랫폼의 PC, Mobile을 지원하는 서비스라면 모노레포구조에서 빛을 볼 수있음(중복된 기능, 소스 많아서)
단점은 배포느림, 공통된 부분 수정 시 영향받는 소스가 많음
(패키지매니저에서 설명한 것처럼 Front에서는 yarn berry와 pnpm이 모노레포를 지원함)