Laravel | Laravel 시작 및 프로젝트 생성 | Laravel 프로젝트 구성

만든 프로젝트 폴더를 열어 보면 살펴 보자. 많은 폴더가 있을 것이다. 여기서 대략 적은 설명을 하겠다

  • app 폴더 : 어플리케이션의 본체 부분이다. 응용 프로그램 개발을 할 때 여기에 PHP 프로그램을 배치하고 있다.

  • bootstrap 폴더 : 어플리케이션의 부트스트랩 프로그램이다. 기동을 하고 각종 처리가 준비되어 있다.

  • config 폴더 : 어플리케이션의 각종 설정 정보 파일이 있는 폴더이다.

  • database 폴더 : 데이터베이스 관련 파일을 정리된 폴더이다.

  • public 폴더 : 공개 폴더이다. MVC 아키텍처를 사용하지 않는 일반 HTML 파일 등은 여기에 배치한다.

  • resources 폴더 : 어플리케이션에서 사용하는 리소스 파일을 두는 폴더이다. MVC의 뷰(화면)의 템플릿 파일 등은 여기에 놓는다.

  • storage 폴더 : 데이터 저장을 위한 폴더이다. 세션 및 캐시 등의 저장 파일이 작성된다.

  • tests 폴더 : 단위 테스트 관련 파일의 폴더이다.

  • vendor 폴더 : 공급 업체가 만드는 프로그램등이 모와둔 폴더이다.

이 밖에 파일들도 여러가지 저장되어 있지만, 우리가 작업해야 하는 것은 특별히 없으므로 생략한다. 많이 있지만, 중요한 것은 app, config, public, resources 정도 일것이다.

app는 실제 프로그래밍을 할 때마다 사용한다. config는 예를 들어 사용하는 데이터베이스를 설정할 때 사용한다. public은 보통의 HTML 파일 등을 설치하는데 사용하는 것이다. resources는 화면 표시를 위한 템플릿을 설치하는데 사용한다.

이것 외에는 즉시 사용하지 않으므로 일단은 기억해 두지 않아도 된다. 우선, 이 4 개의 폴더의 역할 정도는 대충 기억한다.

app 폴더

프로젝트에 포함되어 있는 폴더 중에서 가장 중요한 것이 app 폴더 것이다. 이 폴더는 Laravel 응용 프로그램의 주요 부분을 배치하는 곳이다.

이 app 폴더 안에는 여러 폴더가 포함되어 있다. 정리하면 다음과 같다.

  • Console 폴더 : 콘솔 프로그램(명령 프로그램)을 모와둔 폴더이다.

  • Events 폴더 : 이벤트의 프로그램이 모와둔 폴더이다.

  • Exceptions 폴더 : 예외 처리의 핸들링에 관한 프로그램을 모와둔 폴더이다.

  • Http 폴더 : HTTP 액세스할 때의 처리에 관한 것을 모와둔 폴더이다. 응용 프로그램에서 만드는 기본적인 프로그램은 여기에 포함된다.

  • Jobs 폴더 : 큐에 추가하고 실행되는 프로그램(작업)을 모와둔 폴더이다.

  • Listeners 폴더 : 이벤트 리스너 프로그램을 모와둔 폴더이다.

  • Policies 폴더 : “정책"이라는 인증 처리 프로그램을 모와둔 폴더이다.

  • Providers 폴더 - 서비스 제공자라는 프로그램을 모와둔 폴더이다.

이 중에 잘 모르는 것도 많이 있겠지만, 당분간은 사용하지 않는 것이 많기에 모두 기억할 필요는 없다. 우선 여기서 꼭 기억해야 할 것은 “Http"폴더이다. 실제로 프로그래밍을 시작하면 알겠지만 Laravel 프로그램은 먼저 이 Http 폴더에 “컨트롤러"라는 프로그램을 설치부터 시작한다. 그러므로, 이 “Http"폴더라는 것만은 기억해 두도록 한다.

Http 폴더

가장 중요한 Http 폴더 안에는 더욱 여러 폴더와 파일이 있다. 이도 대충 정리하면 다음과 같다.

  • Controllers 폴더 : 컨트롤러라는 프로그램을 모와두는 폴더이다.

  • Middleware 폴더 : 미들웨어는 소위 필터와 같은 역할을 하는 프로그램을 모와두는 폴더이다.

  • Requests 폴더 : 요청에 대한 프로그램을 모와두는 폴더이다.

  • Kernel.php : HTTP 커널이라는 Http 액세스 미들웨어가 되는 프로그램을 모와두는 폴더이다.

  • routes.php : 액세스 한 주소에 대해 처리를 할당 라우팅 프로그램을 모와두는 폴더이다.

우선, Controllers 폴더와 routes.php은 실제 프로그래밍에 들어가면 바로 사용해야 하기에, 이 2가지 내용은 기억해 두도록 하자.

이것으로 프로젝트의 대략적인 구성에 대해서 살펴 봤다. 다음에는 실제 프로그래밍을 시작해 보도록 하겠다.