라우트 그룹
- 개발자가 웹 애플리케이션의 라우트(경로)를 논리적으로 그룹화 할 수 있게 해주는 기능
- 이것은 URL 경로 구조에 영향을 주지 않으면서 관련 라우트를 하나로 묶을 수 있음

예를 들어 register, login, forgot-password를 하나의 라우트로 그룹화 시키고자 한다
위와 같이 폴더 구조를 만들면 /register, /login, /forgot-password 경로에 라우트되는데

이와 같이 auth 폴더 밑으로 만들어주면 되긴 한다. 실제로 이건 좋은 방법이다 하지만 이렇게 하면 URL이 /auth/register와 같이 된다. URL에 auth가 들어가는건 인증 라우트라는 걸로 받아들여 질 수 있지만 마케팅이나 분석과 같은 다른 그룹에는 적합하지 않을 수 있다. 그래서 라우트 그룹 개념이 필요하다

이와 같이 auth 폴더의 폴더명을 소괄호로 감싸주면

이와 같이 라우트 경로에 auth를 없앨 수 있다.
라우트 그룹을 쓰는 이유
- 코드의 구성 정리 : 코드 구성을 깔끔하게 정리하고 관리 가능, 라우트를 찾기 쉽고 유지보수에 도움
- 중복 제거 : 경로의 공통 부분을 한번만 작성하고 그룹 내의 모든 라우트에 대해 이를 재사용할 수 있음
- 미들웨어 적용 : 특정 그룹의 라우트에 공통된 미들웨어(예: 인증, 로깅, 에러 처리 등)을 적용하기 용이함
- 보안 강화 : 특정 라우트 그룹에 대한 접근 제한이나 권한을 쉽게 과닐 가능
- 라우트 관리의 용이성 : URL 구조를 변경하거나 새로운 라우트를 추가할 때 더 적은 노력으로 이를 관리할 수 있음, 또한 API 버전 관리나 서브도메인 관리에도 유용