التجريبية والعمل في برنامج C ++ 14 مُعد لمكتبة Contity-Component-Component-System فقط.
يتطلب التطوير الناجح للتطبيقات والألعاب المعقدة في الوقت الفعلي نظام إدارة كيان مرن وفعال. عندما يصبح المشروع أكثر تعقيدًا ، من الأهمية بمكان إيجاد طريقة أنيقة لتكوين كائنات من أجل منع تكرار التعليمات البرمجية وتحسين النموذج وفتح إمكانيات التحسين القوية.
تم تصميم النمط المعماري لنظام العناصر المعمارية للمؤسسة لتحقيق الفوائد المذكورة أعلاه ، من خلال فصل البيانات عن المنطق.
يمكن أن تتألف الكيانات من مكونات صغيرة وقابلة لإعادة الاستخدام والعامة.
يمكن تخزين المكونات في مناطق الذاكرة المتجاورة ، وبالتالي تحسين موقع البيانات وذاكرة التخزين المؤقت.
يمكن موازاة منطق التطبيق بسهولة وتجريدها بعيدًا عن الكائنات نفسها وسياسات التخزين الخاصة بهم.
يمكن تسلسل حالة التطبيق ومشاركتها عبر الشبكة بأقل جهد.
قاعدة كود أكثر وحدات وعامة وسهلة الاختبار.
تم تطوير "ECST" كمشروع التخرج من BCS.
بناء التعليمات
عينة الكود
رخصة
أطروحة مرافقة
الشرائح
الكيانات: تعريف آدم مارتن (انظر أطروحة) بأنها "لبنات بناء مفاهيمية أساسية" للنظام ، الذي يمثل OB-Objects. ليس لديهم بيانات خاصة بالتطبيق أو منطق.
المكونات: صغيرة ، قابلة لإعادة الاستخدام ، الأنواع التي تشكل الكيانات. مرة أخرى ، نقلاً عن آدم مارتن في (انظر أطروحة) ، وهو نوع مكون "يصف كيانًا على أنه يمتلك جانبًا معينًا". المكونات تخزين البيانات ولكن لا تحتوي على أي منطق.
الأنظمة: مزودي منطق التنفيذ للكيانات التي تمتلك مجموعة محددة من أنواع المكونات.
التوازي الخارجي: المصطلح المستخدم في ECST والذي يحدد مفهوم تشغيل أنظمة متعددة لا تعتمد على بعضها البعض بالتوازي. سيتم تحليل تفاصيل التنفيذ في الفصل 10 (انظر الأطروحة) . من الناحية المفاهيمية ، يتم إنشاء رسم بياني حقيقي موجه في وقت الترجمة بفضل معرفة تبعيات النظام. يتم التعامل مع تنفيذ DAG الضمني بواسطة نوع جدولة النظام المحدد خلال تعريف الإعدادات.
التوازي الداخلي: الآخر الذي تشغيل أنظمة منفصلة بالتوازي ، يدعم ECST تقسيم نظام واحد إلى مهام فرعية متعددة ، والتي يمكن تنفيذها على مؤشرات ترابط منفصلة. لا تحتوي العديد من الأنظمة ، مثل الأنظمة التي تمثل عمليات النقية الوظيفية ، على آثار جانبية تعدل حالتها أو التي تحدد التفاعلات بين الكيانات المشتركة: هذه أمثلة أولية للحسابات "المتوازية بشكل محرج".
"أين يمكنني العثور على وثائق لواجهة برمجة التطبيقات؟"
"هل يمكن أن يكون لدينا مكونات غير قابلة للبناء؟"
"أحاول القراءة/الكتابة إلى/من مكوني ، لكنني أحصل على خطأ في التجميع. ماذا يحدث؟ "
"هل من الممكن التكرار على المكونات المرتبطة بالكيانات ، دون أن تكون داخل وظيفة عملية النظام؟"
"كيف يتحكم في ما إذا كان نظامي يعمل بالتوازي ، أو كخيط واحد؟ "
"ما هو الفرق بين جعل النظام الخاص بي واحد يتخلى مقابل تعطيل الظهارة الداخلية؟"