0Pricing
Android Academy · درس

تدفّق التحكم

استخدم تعبيرات if/else وعبارات when وحلقات for وwhile للتحكم في منطق البرامج في Kotlin.

تدفّق التحكم درس مجاني في Android Academy على CoddyKit. هذا هو الدرس 3 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Android Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Android Academy 3 دروس في المجموع.

نظرة عامة على تدفق التحكّم

يتيح تدفق التحكّم لبرنامجكم اتخاذ القرارات وتكرار الإجراءات.

  • if/else — الاختيار بين مسارين
  • when — مطابقة قيمة مع حالات متعددة
  • for — التكرار على نطاق أو مجموعة
  • while — التكرار ما دام الشرط صحيحًا

if/else كتعبير

في Kotlin، تُعدّ if/else تعبيرًا — فهي تُعيد قيمة، ولذلك يمكنكم إسنادها مباشرةً:

fun main() {
    val score = 75

    // Traditional style
    if (score >= 60) {
        println("Pass")
    } else {
        println("Fail")
    }

    // Expression style
    val grade = if (score >= 90) "A"
                else if (score >= 75) "B"
                else if (score >= 60) "C"
                else "F"
    println("Grade: $grade")
}

تعبير when

تُعدّ when بديلًا قويًا في Kotlin عن switch/case:

  • تطابق أي قيمة، وليس الأعداد الصحيحة فقط
  • يمكن استخدامها كتعبير (فتُعيد قيمة)
  • يتعامل فرع else مع كل الحالات الأخرى

when أثناء العمل

استخدموا when للتعامل مع حالات متعددة بوضوح:

fun main() {
    val day = 3

    val name = when (day) {
        1 -> "Monday"
        2 -> "Tuesday"
        3 -> "Wednesday"
        4, 5 -> "Thu or Fri"   // multiple values
        6, 7 -> "Weekend"
        else -> "Unknown"
    }
    println(name)  // Wednesday

    // when with a range
    val temp = 28
    val feel = when {
        temp < 10 -> "Cold"
        temp < 25 -> "Comfortable"
        else -> "Hot"
    }
    println(feel)  // Hot
}

حلقات for

استخدموا for للتكرار على النطاقات والقوائم والمجموعات الأخرى:

  • 1..5 — نطاق من 1 إلى 5 (شاملًا)
  • 1 until 5 — نطاق من 1 إلى 4 (النهاية غير شاملة)
  • 10 downTo 1 — العد التنازلي
  • 1..10 step 2 — تخطّي كل قيمة ثانية

أمثلة على حلقات for

كرّروا على النطاقات والمجموعات:

fun main() {
    // Range
    for (i in 1..5) print("$i ")  // 1 2 3 4 5
    println()

    // Until (excludes end)
    for (i in 0 until 3) print("$i ")  // 0 1 2
    println()

    // Step
    for (i in 0..10 step 3) print("$i ")  // 0 3 6 9
    println()

    // List
    val fruits = listOf("Apple", "Banana", "Cherry")
    for (fruit in fruits) println(fruit)
}

while وdo-while

تكرّر while ما دام الشرط صحيحًا. أما do-while فتنفّذ الجسم مرة واحدة على الأقل قبل التحقّق من الشرط.

مثال على حلقة while

أجروا عدًا تنازليًا باستخدام while:

fun main() {
    var count = 5
    while (count > 0) {
        println("Count: $count")
        count--
    }
    println("Done!")

    // do-while runs body first
    var x = 0
    do {
        println("x = $x")
        x++
    } while (x < 3)
}

break وcontinue

تحكّموا في تنفيذ الحلقة باستخدام:

  • break — الخروج من الحلقة فورًا
  • continue — تخطّي التكرار الحالي والانتقال إلى التالي

تدعم Kotlin أيضًا أوامر break ذات التسميات للحلقات المتداخلة: break@outer.

اختبار سريع

ماذا ينتج عن 1 until 5؟

مراجعة: تدفق التحكّم

أصبحتم تعرفون الآن كيفية التحكّم في تدفق البرنامج في Kotlin:

  • if/else كتعبير — إسناد النتائج مباشرةً
  • when — بديل واضح عن switch/case
  • for مع النطاقات وuntil وstep وdownTo
  • while وdo-while

التالي: الميزة الأهم في Kotlin — أمان null.

الأسئلة الشائعة

هل درس «تدفّق التحكم» مجاني؟

نعم — نص درس «تدفّق التحكم» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Android Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Android Academy 3 دروس في المجموع.

ماذا ستتعلم في «تدفّق التحكم»؟

استخدم تعبيرات if/else وعبارات when وحلقات for وwhile للتحكم في منطق البرامج في Kotlin. تتمرن على Android Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Android Academy؟

لا تُشترط خبرة سابقة. Android Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 3.

كم من الوقت يستغرق درس «تدفّق التحكم»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Android Academy هذا؟

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

جميع الدروس في هذه الدورة

  1. المتغيرات وأنواع البيانات
  2. الدوال وLambdas
  3. تدفّق التحكم
← العودة إلى Android Academy