التكنولوجيا
البرمجة
الفعاليات
تطوير البرمجيات
هندسة البرمجيات
تصميم الواجهة الرسومية
أنظمة معقدة
نمذجة اللغة الموحدة
عاصفة الأحداث
نموذج الممثل
استعلامات
أوامر
تكامل النظام
طبقات متعددة
DDD
CQRS
إدخال الأحداث
لما تحلل نظام حاول تشوفه من 3 جوانب , إما Nouns انه فيه منتجات و عملاء و طلبات تتحول كلاسات عندها UML هي خيارك كأداة. و ممكن تشوفه كـCommands عندها ممكن UML او Event Storming و ممكن تشوف النظام كـEvents عندها Event Storming او الActor Model ( سلسلة صغيرة )
موقع مثل امازون واجهته مخيفه لكن لاحظ ان عبارة عن Queries و الQueries ما تعطيك حجم تعقيد النظام, الEvents أهم و الEvents تحتاج Commands تنتجها. هذا غير انظمة كبيرة مثل هذي هي في الاصل مجموعة انظمة مختلفة تماماً وحدتها الUI لك و اعطتك وهم انها نظام واحد.
اختيارك للArchitecture المناسبة تعتمد على محددات غير تقنية, مثل عدد الtransactions في الثانية , اذا مئات روح N-Layers اذا الاف روح DDD مع CQRS اذا ملايين في الثانية روح DDD مع Event Sourcing و استخدم streaming platform مثل Kafka او RabbitMQ.
التكلفة مهمة و من غير المنطقي تستثمر في Architecture مكلفة و انت لسا في البداية, ايضاً مراعاة الفريق و خبرته و اعطائهم دعم و وقت للتعلم لانهم بالنسبة لك هم Domain Experts لا يمكن تعويضهم بسهولة بواسطة الOut sourcing.
جاري تحميل الاقتراحات...