عرض عملي: فرض الحدود باستخدام ArchUnit
في هذا الدرس 3 موضوعات
هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
في هذا الدرس
make a forbidden dependency fail the build; prepares MID-010-LAB1.
تفاصيل المخطط المبدئي
خطوة بخطوة
- In Shop API, define feature packages:
orders,catalog,payments. - Add an ArchUnit test: classes in
orders..must not depend onpayments.internal... - Run it; it passes on the clean codebase.
- Planned mistake: import a
paymentsinternal class fromorders. The test fails with a readable violation. Fix: call the public API ofpaymentsinstead. - Add a layering rule (controllers do not access repositories directly); verify the ArchUnit version for the API.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.