سؤال

هل هناك قاعدة عامة من الإبهام كيفية العديد من دروس, واجهات الخ يجب أن تذهب إلى اسم معين الفضاء قبل البنود التي يجب أن تكون كذلك classfied في اسم جديد الفضاء ؟ مثل أفضل الممارسات أو المجتمع الأفضلية ؟ أو هو كل هذا تفضيل شخصي ؟

namespace: MyExample.Namespace
 interface1
 interface2
 interface3
 interface4
 interface5
 interface6
 interface7
 interface8
 interface9

أو

namespace: MyExample.Namespace.Group1
 interface1
 interface2
 interface3
namespace: MyExample.Namespace.Group2
 interface4
 interface5
 interface6
namespace: MyExample.Namespace.Group3
 interface7
 interface8
 interface9
هل كانت مفيدة؟

المحلول

أنا لم أر أي قاعدة الإبهام في أي مصدر موثوق ولكن هناك عدد قليل المشتركة التفضيلات التي لم ينظر إليها بينما كان يعمل مع معظم المطورين.هناك عدد قليل من الأشياء التي تساعدك على جعل مساحات الأسماء.

  1. المجال الطبقة
  2. هو فئة أو واجهة (لقد رأيت بعض المطورين يفضلون مساحات مثل ShopApp.نموذج.واجهات ).يعمل بشكل جيد حقا إذا واجهات بعض الخدمات أو بيانات العقد.
  3. لا تملك مساحات الأسماء التي هي عميقة جدا ، 3 (.) هو بما فيه الكفاية.أكثر من أن يمكن الحصول على مزعج.
  4. تكون مفتوحة إلى تنظيم مساحة الاسم إذا كان في أي وقت u يشعر أنه أصبح من غير المنطقي أو من الصعب إدارتها.
  5. لا تخلق مساحات فقط من أجل ذلك.

سعيد الترميز!!!

نصائح أخرى

إذا بناء مكتبة أو وحدة نمطية، فمن الأفضل عموما لاستخدام فقط مساحة واحدة، لأن الوظيفة الأساسية لمساحة لتجنب الاصطدامات اسم ولديك السيطرة على ما يحصل تعيين أسماء الطبقات والواجهات.

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

وأنا أزعم أن التسلسل الهرمي مساحة الاسم يجب gouverned فقط لاعتبارات التصميم والتسلسل الهرمي من طراز / API.

إذا مساحة واحدة الرياضية عدد كبير من فئات لا علاقة لها، إعادة النظر في التصميم الخاص بك.

وعلى عكس ما قال أندرو، وأود أن <م> لا تقلق بشأن النطاقات التي تحتوي على فئات قليلة - على الرغم من انها بالطبع صحيح أن التسلسل الهرمي يجب فقط كما الحبيبات غرامة حسب الحاجة للتعبير عن تصميم

من ناحية أخرى، أجد أنه من المعقول تماما لمساحة لاحتواء فئة واحدة فقط خاصة للغاية، أو ربما مجرد مجموعة صغيرة جدا من أنواع، منها واحدة بترميز المهمة وغيرها توفر API (الاستثناءات، تتضمن التعدادات لحجج ...).

وكمثال على ذلك، واتخاذ System.Text.RegularExpressions (في .NET). منحت، أكثر قليلا من فئة واحدة، ولكن فقط فقط.

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

وأود أن أقترح عليك أن كسر الطبقات إلى مساحات منطقية كما يجري معقول وعملي ممكن. ولكن إذا كنت في نهاية المطاف مع الطبقات واحد فقط أو اثنين في مساحة الاسم فإنك قد تكون كسر أكثر من اللازم وينبغي أن نفكر في توطيد.

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