سؤال

لقد خرجت للتو من اجتماع تصميم و كان سؤال لي حول من أين حصلت على واحدة من أفكاري حول كيفية هيكلة بعض .dlls المشروع ؟ أن نكون صادقين أنا لا أعرف أين هذه "الفكرة" جاءت من بدا المعرفة الطبيعية لي.ومع ذلك فإنه من المفيد إذا كنت يمكن أن يرجع هذه الآراء مع بعض توثيق التحليل.

لا أحد يعرف من أي الموارد التي explicity مناقشة آليات مختلفة لتنظيم الجمعيات/modules/المصدر ؟

تحديث:

حسنا الفكرة كانت شيء خاص.كنا نناقش طبقة تجريد بعض الأجهزة وبالتالي فإن "التطبيق" الذي يستهلك هذه الخدمات يمكن أن تكون (من نوع) منصة مستقلة.سابقا كان لدينا واجهات .dll أن يعلن واجهات يتطلب التطبيق و التنفيذ .dll التي تنفذ لهم على منصة واحدة لدينا حتى الآن.الآن لدينا اثنين من منصات لكنها متشابهة جدا.لمنع الواجهات .dll من كونها ملوثة أو بعض البشعة السيناريو حيث تطبيقات مرجع واحد آخر أنا مجرد اقترح علينا خلق آخر .dll أن يجلس بين واجهات specificplatform.dll حيث المشتركة مجردة تطبيقات يمكن أن يعيش.

هل كانت مفيدة؟

المحلول

إذا كان لديك فرصة إلقاء نظرة على كتاب روبرت C.مارتن:

رشيقة المبادئ الأنماط والممارسات في C# (هذا هو نسخة جديدة تستهدف على وجه التحديد .صافي)

هناك فصل مخصص مكون التصميم الذي (ربما) يجيب عن سؤالك.

في ملخص, وبعد قراءة هذا الكتاب, أنا دائما يوصي فصل المكونات عن طريق هذه المعايير:

  • الجمعيات أو الوحدات أو إعادة استخدامها:إذا كان هناك دروس يجب أن تستخدم جنبا إلى جنب, يذهبون في نفس الجمعية.

  • الجمعيات وحدات من التغيير:إذا كانت هناك فئات لا تضطر إلى تغيير لنفس السبب, أنها ربما لا ينبغي أن يكون في نفس الجمعية.

  • الجمعيات وحدات من النشر:إذا كان هناك دروس يجب أن يكون جسديا نشر في نفس المكان ، ربما يجب أن تذهب في نفس الجمعية.

بالطبع هذه ليست سوى الاستدلال وليس وصفات.في نهاية المطاف تحتاج إلى أن تقرر كم من كل واحد من هؤلاء الثلاثة التصميم الاستدلال تحتاج على أساس المعمارية أهداف التطبيق الخاص بك (على وجه التحديد المعمارية أهداف النشر و التطور/تعديل).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top