Alex Kalh ⁄ Create with the <3 build with the mind

Alex Kalh
by Alex Kalh
March 5, 2023
in Laravel : Architecture Concepts

Laravel – Service Container – 1. Basic

Giới thiệu

Công cụ để quản lý các class phụ thuộc, và thực hiện hành vi “inject” khi triển khai Dependency Injection Pattern.

Binding Basics

Là hành vi đăng ký ràng buộc cho các class phụ thuộc, tại các `Service Provider`. Hành động này cung cấp một sơ đồ mapping cho `Service Container` thực hiện inject.

Simple Binding

Sử dụng method `bind()`: đăng ký $abstract như là một string (interface, class, or any-thing), sẽ return về một instance object được tạo hoặc khai báo bởi $concrete.
Nếu tham số $shared === true, thì $concrete sẽ tạo ra một singleton instance.

Binding Instances

Bạn có thể đăng ký $concrete trực tiếp là một instance object.

Binding Primitives
  • Sử dụng khi muốn inject giá trị cụ thể (int, string, object) cho một class, (thông thường sẽ inject một instance object thông qua interface).
  • Tham số $abstract phải là tên một class, chứ ko phải interface (custom string).
  • Có thể kết hợp với `Binding Interface`.

Created by

Alex Kalh

Sự tiến bộ của công nghệ là vô hạn. Đổi thay diễn ra hàng ngày, hàng giờ. "Đó là niềm hạnh phúc, cũng là bi ai của một lập trình viên!"

Leavea comment

Your email address will not be published. Required fields are marked *