Laravel

Laravel Packages

Phát triển package, service provider, facade, asset có thể publish, cấu hình, migration, package discovery

20 câu hỏi phỏng vấn·
Senior
1

Sự khác biệt chính giữa phương thức register() và boot() của một Service Provider là gì?

Câu trả lời

Phương thức register() được dùng để bind các service vào IoC container mà không phụ thuộc vào các service khác, vì chúng chưa khả dụng. Phương thức boot() được gọi sau khi tất cả provider đã được đăng ký, cho phép truy cập tất cả service đã đăng ký và cấu hình các tính năng phụ thuộc vào chúng như route, view hoặc event.

2

Cấu trúc cơ bản được khuyến nghị cho một package Laravel là gì?

Câu trả lời

Một package Laravel có cấu trúc tốt chứa thư mục src/ cho mã nguồn PHP bao gồm Service Provider, thư mục config/ cho các file cấu hình, một composer.json với metadata và autoload PSR-4, cùng các thư mục tùy chọn cho resource như database/, resources/ và routes/. Cách tổ chức này giúp dễ bảo trì và tuân theo các quy ước của cộng đồng.

3

Package discovery hoạt động như thế nào trong Laravel?

Câu trả lời

package discovery sử dụng phần extra.laravel trong composer.json của package để tự động khai báo các provider và alias. Trong quá trình cài đặt qua Composer, Laravel đọc metadata này và tự động đăng ký các service mà không cần chỉnh sửa thủ công config/app.php. Tính năng này đơn giản hóa việc cài đặt package và giảm lỗi cấu hình.

4

Làm thế nào để một file cấu hình có thể publish được trong một package Laravel?

5

Phương thức mergeConfigFrom() trong Service Provider của package dùng để làm gì?

+17 câu hỏi phỏng vấn

Nắm vững Laravel cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí