
Laravel Packages
Phát triển package, service provider, facade, asset có thể publish, cấu hình, migration, package discovery
1Sự khác biệt chính giữa phương thức register() và boot() của một Service Provider là gì?
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.
2Cấu trúc cơ bản được khuyến nghị cho một package Laravel là gì?
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.
3Package discovery hoạt động như thế nào trong Laravel?
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.
Làm thế nào để một file cấu hình có thể publish được trong một package Laravel?
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
Các chủ đề phỏng vấn Laravel khác
Cơ bản về PHP
Kiến thức cơ bản về OOP trong PHP
Composer & Autoloading
Kiến thức cơ bản về Laravel
Routing trong Laravel
Blade Templates
Request & Response
Kiến thức cơ bản về Eloquent ORM
Eloquent Relationships
Migrations & Schema Builder
Xác thực và Form
Xác thực
Phân quyền và Policies
API Resources & Authentication
Middleware
Service Container & DI
Queues & Jobs
Events & Listeners
Thông báo & Mail
File Storage
Testing & PHPUnit
Caching
Livewire & Inertia
Eloquent Advanced
Repository Pattern
Performance Optimization
Security Best Practices
Laravel Octane
Laravel Distributed Systems
Observability & Monitoring
Deployment & DevOps
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í