Swift-style-guide: إذا كان مقابل حارس

تم إنشاؤها على ٢٥ أكتوبر ٢٠١٨  ·  3تعليقات  ·  مصدر: raywenderlich/swift-style-guide

دليل النمط الحالي واضح فيما يتعلق باستخدام guard بدلاً من تضمين if ، ولكن يمكن أن يُظهر مثالاً عندما يجب استخدام if بدلاً من guard ، ويعرف أيضًا باسم عندما لا يكون هناك حاجة لفك العناصر الاختيارية:

يفضل:

if !success { return false }

غير مفضل:

guard success else { return false }

أفضل وصف هنا: https://www.natashatherobot.com/swift-when-to-use-guard-vs-if/

التعليق الأكثر فائدة

أكاد أقول إن قسم حراس الفشل يغطي هذا:
Guard statements are required to exit in some way.

... أو كما قالت مدونة ناتاشا:
think of guard as a lightweight Assert

لذلك يجب عليك القيام بما يلي:

guard success else { return false }

فائدة guard هنا هي أن المترجم سيضمن الخروج. مثال:

// This compiles fine and a bug risks going unnoticed
if !success {
  // Some code here
  // Forgot the return statement
}

// Compiler error, you are required to return and the bug is prevented
guard success else {
  // Some code here
  // Forgot the return statement
}

ال 3 كومينتر

أكاد أقول إن قسم حراس الفشل يغطي هذا:
Guard statements are required to exit in some way.

... أو كما قالت مدونة ناتاشا:
think of guard as a lightweight Assert

لذلك يجب عليك القيام بما يلي:

guard success else { return false }

فائدة guard هنا هي أن المترجم سيضمن الخروج. مثال:

// This compiles fine and a bug risks going unnoticed
if !success {
  // Some code here
  // Forgot the return statement
}

// Compiler error, you are required to return and the bug is prevented
guard success else {
  // Some code here
  // Forgot the return statement
}

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

agirault - نعم ، إما هذا أو أنك ببساطة تطلب الخروج (سواء كان ذلك بسبب فشل أم لا).

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات