PHP/Laravel

Laravel : 라라벨 프레임워크 구조

제주도 조랑말 2023. 4. 5. 13:39
728x90

1. 라라벨 프레임워크의 구조

라라벨 8.0 버전 기준 프레임워크 구조 (  tests 그냥 만든거다.)

대략 구조는 이러하다. 중요한 부분만 설명하겠다.

 

app에는 백엔드 소스코드가 담겨져 있는 컨트롤러가 존재한다. 이 부분을 통해 비즈니스 로직을 구현하게 된다. 또한 Model이라는 폴더가 포함되어져 있다. MVC패턴 중에 M과 C가 모두 이 폴더에 들어있는 것이다. 모델이란 데이터베이스의 테이블명과 기본키등의 간략한 정보를 입력한 후, 나중에 컨트롤러를 통해 모델을 호출하게 되면 입력한 정보들을 바탕으로 해당 테이블의 내용을 불러오는 기능을 한다. 쉽게 말하면 모델파일에 테이블명과 기본키를 기술한 후, 컨트롤러에서 해당 모델을 호출할 경우, 그에 따른 테이블 select, update, delete, insert 등으 테이블 조작을 할 수 있는 것이다. 

 

config에는 인증, 세션 등의 애플리케이션 설정파일들이 존재한다.

 

database에는 DB마이그레이션의 내용이 존재한다. php파일에 테이블명, 컬럼명 등을 기술한 후, 실행하게 되면 해당되는 내용을 기반으로 테이블이 생성되고 수정되는 기능을 한다. 마이그레이션을 통해 데이터베이스의 테이블 버전 관리를 진행할 수 있으므로 유용한 기능이 탑제되어 있다고 볼 수 있다. 

 

public에는 js, css, font 등의 정적 파일들이 존재한다.

 

resources에는 public과 마찬가지로 js, css, font 등의 파일을 보관할 수 있으나 가장 중요한 view가 포함되어져 있다는 점이 다르다. MVC패턴 중에서 View를 담당하는 내용이 이 폴더에 포함되어져 있다. 라라벨에서 지원하는 템플릿 엔진인 블레이드 템플릿으로 뷰파일이 구성되어져 있다.

 

route에는 URL링크에 컨트롤러 함수를 부여하거나 화면 URL를 직접적으로 부여할 수 있다. route안에는 web.php라는 파일이 존재한다. 이동하는 URL 주소들을 정의한 후, 콜백함수를 등록하여 해당되는 컨트롤러의 함수를 실행할 수 있도록 하는 기능을 한다. 즉, 페이지 이동, 게시글 작성 등의 URL이동 작업이 필요하거나 API를 호출하는 등의 행동을 할 때, 이 라우트를 거친 후 함수가 실행되게 된다. 즉 컨트롤러와 뷰를 연결해주는 매개체 역할을 한다고 할 수 있다.

 

 

라라벨 프레임워크의 구조에 대해 간략하게 살펴보았다. 라라벨 프레임워크를 관통하는 MVC패턴에 대한 내용을 학습한 후, 프레임워크의 흐름을 이해하면 쉽게 개발을 진행할 수 있다. 이러한 것이 바로 프레임워크의 장점이자 매력이다.

 

 

https://phsun102.tistory.com/17

 

Laravel Framework의 구조

1. 프레임워크를 사용하는 이유는??? 다양한 프로그래밍 언어를 사용하다보면 체계적인 구조를 잡고, 추후에 유지보수를 쉽게하기 위해 프레임워크를 사용하곤 한다. 그 중에서 PHP라는 언어를

phsun102.tistory.com

개발일기, Flashback님의 글

728x90