visual studio ناطق ما هو شعورك حول طي التعليمات البرمجية؟




قاموس عربي انجليزي ناطق مجاني (20)

@ توم

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

بالنسبة لأولئك منكم في بيئة فيسوال ستوديو، كيف تشعر حول التفاف أي من التعليمات البرمجية الخاصة بك في #regions؟ (أو إذا كان أي إيد آخر لديه شيء مماثل ...)


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

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


أنا لست من محبي الطبقات الجزئية - أحاول تطوير الفصول الدراسية بحيث كل فئة لديها واضحة جدا، قضية واحدة التي هي المسؤولة. وتحقيقا لهذه الغاية، لا أعتقد أن شيئا مع مسؤولية واضحة ينبغي تقسيم عبر ملفات متعددة. هذا هو السبب في أنني لا أحب الطبقات الجزئية.

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


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


أجد عموما أنه عند التعامل مع التعليمات البرمجية مثل الأحداث في C # حيث هناك حوالي 10 أسطر من التعليمات البرمجية التي هي في الواقع مجرد جزء من إعلان الحدث (فئة إيفنتارغس إعلان المفوض وإعلان الحدث) وضع منطقة من حولهم ومن ثم طيها من الطريق يجعلها أكثر قليلا للقراءة.


أنا شخصيا استخدام #Regions في كل وقت. أجد أنه يساعدني على الحفاظ على الأشياء مثل الخصائص، والإعلانات، الخ فصل بعضها عن بعض.

هذا هو على الارجح جوابا جيدا، أيضا!

ترميز الرعب

تحرير: دانغ، بات ضربتني إلى هذا!


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


وقد تحدث هذا عن ترميز الرعب .

اعتقادي الشخصي هو أن تكون مفيدة، ولكن مثل أي شيء الزائد يمكن أن يكون أكثر من اللازم.

يمكنني استخدامه لترتيب كتل بلدي التعليمات البرمجية في:
التعدادات
الإعلانات
الصانعين
أساليب
معالجات الأحداث
الخصائص


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


التعدادات

الخصائص

.ctors

أساليب

معالجات الأحداث

هذا كل ما يمكنني استخدام المناطق ل. لم يكن لدي أي فكرة يمكنك استخدامها داخل الطرق.

يبدو وكأنه فكرة فظيعة :)


أنا حقا لم يكن لديك مشكلة مع استخدام #region لتنظيم التعليمات البرمجية. شخصيا، عادة ما أقوم بإعداد مناطق مختلفة لأشياء مثل الخصائص ومعالجات الأحداث والطرق العامة / الخاصة.


في بعض الأحيان قد تجد نفسك تعمل على فريق حيث يتم تشجيع #regions أو المطلوبة. إذا كنت مثلي وكنت لا يمكن أن يقف العبث مع رمز مطوية يمكنك إيقاف مخطط ل C #:

  1. خيارات -> محرر النص -> C # -> متقدمة التبويب
  2. قم بإلغاء تحديد "إدخال وضع الخطوط العريضة عند فتح الملفات"

نهجي مشابه لعدد قليل من الآخرين هنا، وذلك باستخدام المناطق لتنظيم كتل التعليمات البرمجية في منشئ، خصائص، أحداث، الخ.

هناك مجموعة ممتازة من وحدات الماكرو VS.NET التي كتبها رولاند ويجيلت المتاحة من بلوق دخوله، أفضل دعم لوحة المفاتيح ل #region ... #endregion . لقد تم استخدام هذه لسنوات، تعيين كترل +. لانهيار المنطقة الحالية و كترل ++ لتوسيعه. تجد أنه يعمل بشكل أفضل بكثير أن وظيفة VS.NET الافتراضي الذي طيات / تتكشف كل شيء.


إكليبس يفعل بعض هذا في جافا (أو فب مع الإضافات) من تلقاء نفسها. يسمح لك لأضعاف وظائف ومثل هذه. أنا أميل إلى مثل ذلك. إذا كنت أعرف ما وظيفة لا وأنا لا تعمل على ذلك، وأنا لا تحتاج إلى النظر في ذلك.


أنا أفضل الطبقات الجزئية بدلا من المناطق.

استخدام واسع من المناطق من قبل الآخرين أيضا تعطيني الانطباع بأن شخصا ما، في مكان ما، ينتهك مبدأ مسؤولية واحدة ويحاول أن تفعل أشياء كثيرة جدا مع كائن واحد.


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

قبل التحقق في I مجموعة أساليب / حقول منطقيا بحيث يبدو موافق بعد كترل + M + O. إذا كنت بحاجة المناطق لديك لخطوط كثيرة في صفك. وأجد أيضا أن هذا أمر شائع جدا.

المنطقة ثيلوكسليك ويلورغانيزدكوديبيكوسوسريجيونس

// مجموع القمامة، لا هيكل هنا

endregion


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

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

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


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

أنا أبدا استخدامه لإخفاء ل حلقة، إذا بيان أو ما شابه ما لم تظهر التعليمات البرمجية لشخص آخر حيث سوف إخفاء رمز رأيت لتجنب إظهار نفس الرمز مرتين.


بينما أنا أفهم المشكلة أن جيف، وآخرون. الله. مع المناطق، ما لا أفهم لماذا ضرب كترل + M ، كترل + L لتوسيع جميع المناطق في ملف من الصعب جدا التعامل معها.


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

استخدام المناطق لوضع علامة على الممتلكات العامة (على سبيل المثال) هو سيء مثل إدخال تعليق زائدة لا يضيف شيئا إلى ما هو بالفعل يمكن تمييزها من التعليمات البرمجية نفسها.

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





folding