سؤال

أنا أعمل على أول مشروع حقيقي لـ ASP.NET MVC ولاحظت أن وحدة التحكم التي كنت أعمل فيها أصبحت كبيرة إلى حد ما. هذا يبدو أنه يتعارض مع أفضل الممارسات المتمثلة في الحفاظ على وحدات التحكم الخاصة بك رقيقة.

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

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

هل من الضروري إعادة توحيد وحدة تحكم مع عدد كبير من الإجراءات الرقيقة؟ إذا كان الأمر كذلك ، فما هي أفضل طريقة للقيام بذلك؟

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

المحلول

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

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

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

نصائح أخرى

سؤال جيد.

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

خيار هيكلي آخر لديك هو تقديم فصول جزئية للتجمعات المنطقية من الإجراءات. واستخدام شيء مثل VScommands لتجميع الملفات معًا.

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

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