프로젝트에 Laravel을 활용하면서 정리한 내용입니다.
01. Root 디렉토리
Root
├─app ---------------- 애플리케이션 핵심 코드가 들어있음
├─bootstrap ---------- 프레임워크의 부트스트래핑을 담당하는 app.php파일 포함
├─config ------------- 애플리케이션 설정 파일 포함
├─database ----------- 데이터베이스 마이그레이션, 모델 팩토리, 시딩 파일 포함
├─public ------------- 애플리케이션에 진입하는 모든 request-요청들에 대한 진입점 역할과
│ 오토로딩을 설정하는 index.php 파일 포함
│ (이미지, 자바스크립트, CSS와 같은 asset파일들을 포함)
│
├─routes ------------- 애플리케이션에서 정의된 모든 라우트 포함
├─storage ------------ 컴파일된 블레이드 템플릿, 파일 기반 세션, 파일 캐시
│ 그리고 기타 프레임워크에서 생성된 파일들을 포함
├─tests -------------- 자동화된 테스트가 포함, PHPUnit 테스트 예제 제공
└─vendor ------------- Composer 의존성 폴더
02. App 디렉토리
애플리케이션의 대부분의 파일들은 app디렉토리 안에 보관됩니다.
└─app
├─Console ---------------- 애플리케이션의 모든 사용자 아티즌 명령어들을 포함, make:command명령어로 생성 가능
│
├─Events ----------------- 기본적으로 존재하지 않지만 event:generate명령어로 생성 가능
│ 이벤트는 옵저버 구현을 제공하여 애플리케이션에서 발행하는 다양한 이벤트에 대해 리스닝할 수 있게 합니다.
│
├─Exceptions ------------- 애플리케이션의 예외 핸들러를 포함
│
├─Http ------------------- 애플리케이션으로 들어오는 request를 처리하는 대부분의 로직이 위치해 있음
│ ├─Controllers
│ └─Middleware
│
└─Listeners -------------- 이 디렉토리는 기본적으로 존재하지 않지만,
│ event:generate나 make:listener 아티즌 명령어를 실행하는 경우 생성
│ 이벤트를 처리하는 클래스들을 포함
│
└─Providers -------------- 애플리케이션의 모든 서비스 프로바이더 파일 포함,
서비스 프로바이더는 애플리케이션에서 필요한 서비스들을 컨테이너에 바인딩하고,
이벤트를 등록, 애플리케이션 유입 request들을 처리하기 위해 준비되어야 하는 작업을 수행
- 참고:
'Web > Laravel' 카테고리의 다른 글
[Laravel] Basic route 이해하기 (0) | 2020.08.10 |
---|---|
[Laravel] 프로젝트 시작하기 설치 및 세팅 (0) | 2020.08.10 |