
สถาปัตยกรรม Symfony
Hexagonal architecture, DDD, CQRS, repositories, DTOs, value objects, bounded contexts
1ใน hexagonal architecture บทบาทหลักของ ports คืออะไร?
ใน hexagonal architecture บทบาทหลักของ ports คืออะไร?
คำตอบ
ports คืออินเทอร์เฟซที่กำหนดสัญญาระหว่างโดเมนธุรกิจกับโลกภายนอก primary ports (หรือ driving ports) ช่วยให้ตัวกระทำภายนอกสามารถกระตุ้นการกระทำในโดเมนได้ ในขณะที่ secondary ports (หรือ driven ports) ช่วยให้โดเมนโต้ตอบกับโครงสร้างพื้นฐานภายนอก เช่น ฐานข้อมูลหรือบริการของบุคคลที่สาม การทำให้เป็นนามธรรมนี้ช่วยให้เปลี่ยนการอิมพลีเมนต์ได้โดยไม่กระทบต่อโดเมนธุรกิจ
2adapter ใน hexagonal architecture ของ Symfony คืออะไร?
adapter ใน hexagonal architecture ของ Symfony คืออะไร?
คำตอบ
adapter คือการอิมพลีเมนต์ที่เป็นรูปธรรมของ port ซึ่งเชื่อมโลกภายนอกเข้ากับ domain ตัวอย่างเช่น DoctrineUserRepository เป็น adapter ที่อิมพลีเมนต์ port UserRepositoryInterface ในฝั่ง primary นั้น controller ของ Symfony เป็น adapter ที่ปรับ HTTP request ให้เข้ากับ use case ของ domain การแยกส่วนนี้ช่วยให้ทดสอบ domain ได้อย่างเป็นอิสระจาก infrastructure
3ใน Domain-Driven Design คุณลักษณะหลักของ Value Object คืออะไร?
ใน Domain-Driven Design คุณลักษณะหลักของ Value Object คืออะไร?
คำตอบ
Value Object ถูกกำหนดด้วยแอตทริบิวต์ของมัน ไม่ใช่ด้วยตัวระบุ Value Object สองตัวที่มีค่าเหมือนกันจะถือว่าเท่ากัน พวกมันเป็น immutable: การแก้ไขใด ๆ จะสร้างอินสแตนซ์ใหม่ ตัวอย่างเช่น ออบเจ็กต์ Email หรือ Money เป็น Value Object ทั่วไป ความ immutable นี้รับประกันความสอดคล้องของข้อมูลและทำให้การวิเคราะห์โค้ดในระบบที่ซับซ้อนง่ายขึ้น
บทบาทของ Aggregate Root ใน DDD คืออะไร?
DTO (Data Transfer Object) คืออะไร และเมื่อใดควรใช้ใน Symfony?
+21 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Symfony อื่นๆ
PHP สมัยใหม่ (8.1+)
พื้นฐาน Symfony
Routing & Controllers
Twig & Templates
พื้นฐาน Doctrine ORM
ฟอร์ม Symfony
การตรวจสอบความถูกต้องของข้อมูล
Dependency Injection & Services
Security & Authentication
Doctrine ขั้นสูง
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache & ประสิทธิภาพ
Workflow Component
Testing Symfony
Mailer Component
การแปลและ i18n
EasyAdmin Bundle
ประสิทธิภาพและการเพิ่มประสิทธิภาพ
ความปลอดภัยขั้นสูง
Custom Bundles
Microservices ด้วย Symfony
Real-time & WebSockets
Deployment & DevOps
เชี่ยวชาญ Symfony สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี