Kotlin Multiplatform Academy · درس

قواعد الأعمال كدوال صِرفة

الحفاظ على قابلية اختبار المنطق بتجنب تأثيرات المنصة الجانبية

الدرس 3 من 413 خطوة

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

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

What Is a Pure Function

A pure function returns the same output for the same input and touches nothing outside itself. That makes it perfect for shared code.

No Hidden Side Effects

Pure means no logging, no network, no saving to disk. The function just takes values in and gives a result back.

fun shippingFee(weight: Double): Double = if (weight > 5) 9.0 else 4.0

Why Purity Wins in KMP

Pure functions have no platform dependencies, so they compile and behave identically on Android, iOS and desktop. 🎯

Easy to Test

With no hidden state, a test is just input in, expected output checked. No mocks, no setup, no flaky surprises.

assertEquals(9.0, shippingFee(6.0))

Rules as Small Functions

Express each business rule as its own tiny function. Small pieces compose into bigger logic without tangling.

fun isFreeShipping(total: Double) = total >= 50.0

Compose the Rules

Combine small rules to make decisions. Each part stays pure, so the whole composition stays predictable and testable.

fun finalShipping(total: Double, weight: Double) =
  if (isFreeShipping(total)) 0.0 else shippingFee(weight)

Pass Time as a Parameter

Reading the clock makes a function impure. Instead, pass the current time in so the rule stays deterministic.

fun isPeakHour(hour: Int): Boolean = hour in 17..20

Avoid Global Mutable State

Reading or changing a global variable breaks purity. Keep all the data a rule needs in its parameters.

Return Values, Not Mutations

Instead of editing the input, return a new value. This avoids surprises when the same object is used elsewhere.

fun withDiscount(price: Double, off: Double) = price * (1 - off)

Pure Logic, Impure Edges

Keep your rules pure at the core, and let the edges of the app handle effects like saving or showing results.

Logic Never Drifts

Because pure rules live once in shared code, a change updates both apps at once. Business logic can never drift apart again.

Quick Check

Which trait makes a function pure and ideal for shared KMP code?

Recap: Keep It Pure

You wrote business rules as small, side-effect-free functions that test easily and run the same on every target. ✅

البدء مجانًا

تعلم Kotlin مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
30
الدروس
120

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

هل درس «قواعد الأعمال كدوال صِرفة» مجاني؟

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

ماذا ستتعلم في «قواعد الأعمال كدوال صِرفة»؟

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

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

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

كم من الوقت يستغرق درس «قواعد الأعمال كدوال صِرفة»؟

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

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

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

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

  1. حاسبة مشتركة للأسعار والضرائب
  2. تنسيق العملات والأرقام
  3. قواعد الأعمال كدوال صِرفة
  4. إبعاد الواجهة عن التعليمات البرمجية المشتركة
← العودة إلى Kotlin Multiplatform Academy