01/10/2018, 15:35

Bài 2: Laravel – Cấu Trúc Ứng Dụng

Hay nói dể hiểu là cấu trúc của mã nguồn Laravel, từng thư mục của chúng có ý nghĩa và làm nhiệm vụ gì. Như tôi đã đề cập trong bài đầu giới thiệu Laravel, nó là một framework thiết kế theo pattern là MVC, do vậy để cho đơn giản lập trình viên chỉ cần quan tâm đến các thư mục MVC là chủ yếu, ...

Hay nói dể hiểu là cấu trúc của mã nguồn Laravel, từng thư mục của chúng có ý nghĩa và làm nhiệm vụ gì.

Như tôi đã đề cập trong bài đầu giới thiệu Laravel, nó là một framework thiết kế theo pattern là MVC, do vậy để cho đơn giản lập trình viên chỉ cần quan tâm đến các thư mục MVC là chủ yếu, vì sao? Vì lập trình viên sẽ viết thêm code xử lý của mình ở 3 nơi đó là Controler, Model và View. Còn tuyệt đối không được đá động đến thư mục core của nó.

Rồi bầy giờ chúng ta mở dự án Laravel5 mà chúng ta đã download và cài đặt từ bài 1 ra:

folder_laravel5

Root Directory

Khi các bạn mở thư mục chứa dự án ra, các file và thư mục nằm ở cấp đầu tiên được gọi là thư mục Root. Như hình trên thì các file và thư mục đang ở vị trí root.

  • app – thư mục này chứa đựng core code của laravel
  • bootstrap – thư mục này chứa script bootstrapping của ứng dụng
  • config – thư mục này chứa đựng các file cấu hình của ứng dụng
  • database – thư mục này chứa đựng database của bạn
  • public – đây là nơi bắt đầu ứng dụng laravel. Nó cũng chứa đựng tài nguyên của ứng dụng như là javascript, images, css …
  • resource – thư mục này chứa đựng như là các file LESS, Sass (cái đám này hổ trợ viết CSS,nếu các bạn chưa biết thì có thể tìm hiểu sau), các file ngôn ngữ, và template để render ra HTML(View)
  • storage – thư mục này chứa đựng App storage, như file upload … Framework storage (cache), và bản logs.
  • test – thư mục này chứa đựng test cases.
  • vendor – thư mục chứa đựng composer dependencies.

App Directory

bai2_structure

Đây là thư mục của ứng dụng. Nó chứa đựng một số thư mục được mô tả như sau:

  • Console – tất cả lệnh mà chúng ta chạy từ thủ công, command được lưu trữ trong này.
  • Exceptions – thư mục này chứa đựng cá xử lý ngoại lệ của ứng dụng
  • Http – thư mục này chứa đựng controllers, filters và requests (bạn sẽ viết các controller trong thư mục này)
  • Providers – thư mục này chứa đựng các dịch vụ provider

 

Với phiên bản khác thì có thể có thêm nhiều thư mục hơn như Event, Jobs, Listeners, Policies, tuy nhiên chúng ta đang cài đặt phiên bản cao nhất cho thời điểm thực hành tutorial này là Laravel 5.3.6, do vậy một số thư mục đã được lượt bỏ và thay bằng những phần code ở nơi khác.

Bài học này chỉ cho các bạn tham khảo và làm quen cấu trúc của Laravel trước khi chúng ta bắt đầu viết code cho ứng dụng. Các bạn cơ bản ban đầu chỉ cần nắm đó là thư mục Controller trong Http, thư mục Routes để chúng ta đăng ký controller và view, và thư mục Resource nới chứa View để display HTML.

Các phần khác khi luyện tập sẽ được thực hành và các bạn sẽ biết nó một cách tự động, đừng cố nhớ chi nặng đầu, hãy thư giản khi đọc bài này.

0