Chọn Laravel Module cho dự án của mình

Khi bắt đầu tiến hành 1 ứng dụng, phần mềm bằng Laravel thì một trong những quyết định quan trọng là chúng ta cần phải xác định xem có chia source thành các module không ?
Khi mới đầu join vào các dự án của công ty, ở cá nhân mình thấy nó khá loằng ngoằng và mất thời gian. Đó là thay vì phải sử dụng command mặc định của Laravel thì một số đã bị thay đổi và phải thực hiện theo docs của Laravel Module. Nhưng sau khi sử dụng một thời gian thì thấy nó khá tiện dụng.

Ưu điểm của nó rất là hay ho khi mà nó chia source tách biệt về logic. Đặc biệt ở thời điểm team của mình đang quản lý khác nhiều service khác nhau, phải chạy theo nhiều thị trường, phục vụ, chạy đua với tốc độ phát triển của xã hội.

Trong đợt vừa rồi team mình đã làm service Tool và Tiktok Affiliate Partner (TAP) trong cùng 1 source. Sau dự án to dần và có những nghiệp vụ khác nhau nên cần phải tách ra. Thật may có Laravel module đã chia dự án thành các module khác nhau nên việc tách ra cực kì dễ dàng và nhanh chóng.

Dự án mình dùng Laravel module của trang nwidart

Trang giới thiệu Laravel module: nwidart

Cài đặt

Cài đặt như các package thông thường

composer require nwidart/laravel-modules

Publish cài đặt

php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"

Chạy command tạo module Product

php artisan module:make Product

Source sẽ có dạng:

Trông rất giống 1 source Laravel thông thường đúng không ạ. Laravel Module cung cấp sẵn cho chúng ta khá nhiều command sẵn để chúng ta có thể thao tác dễ dàng giống 1 source code laravel gốc.

Các bạn có thể tham khảo thêm tại artisan-commands nhé.

Related Posts