Trong bài viết này, chúng ta sẽ thực hành xây dựng một ứng dụng Laravel sử dụng Dependency Injection để quản lý phụ thuộc và tạo cấu trúc mã nguồn dễ bảo trì hơn. Chúng ta sẽ tạo một ví dụ đơn giản về việc quản lý danh sách sản phẩm trong một cửa hàng.
Bước 1: Chuẩn bị
Trước hết, hãy đảm bảo rằng bạn đã cài đặt Laravel trên máy tính của mình. Bạn có thể sử dụng Composer để tạo một dự án Laravel mới:
Sau khi tạo xong, di chuyển vào thư mục dự án:
Bước 2: Tạo Service và Interface
Chúng ta sẽ bắt đầu bằng việc tạo một service để quản lý danh sách sản phẩm. Tạo một interface và một class implement interface này:
Tạo file app/Contracts/ProductServiceInterface.php
:
Tạo file app/Services/ProductService.php
:
Bước 3: Đăng ký Service Container
Mở file app/Providers/AppServiceProvider.php
và thêm vào hàm register
:
Bước 4: Sử dụng Dependency Injection
Trong controller, bạn có thể sử dụng Dependency Injection để tiêm ProductService vào:
Kết Luận
Bằng cách sử dụng Dependency Injection và Service Container trong Laravel, chúng ta đã xây dựng một ứng dụng quản lý danh sách sản phẩm. Việc này giúp mã nguồn trở nên dễ bảo trì hơn và giảm sự phụ thuộc giữa các thành phần của ứng dụng.
Hãy thực hành và tùy chỉnh dự án theo nhu cầu của bạn để tìm hiểu sâu hơn về cách sử dụng Dependency Injection trong Laravel.