Kotlin Multiplatform Academy · درس

@ObjCName وواجهات API الملائمة لـ Swift

تشكيل الصادرات كي تُقرأ مواضع الاستدعاء في Swift بشكل طبيعي

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

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

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

Make Swift Devs Happy

Your shared API should read naturally in Swift. A few annotations and habits make the bridge feel native, not bolted on.

Rename with @ObjCName

The @ObjCName annotation lets you give a type or function a different name on the Swift side without renaming the Kotlin one.

@ObjCName("UserService")
class UserRepository

Cleaner Method Names

Use @ObjCName on functions too, so a verbose Kotlin name becomes a short, idiomatic Swift call site that reads well.

@ObjCName("load")
fun loadUserData()

Avoid Name Clashes

Kotlin allows overloads that Obj-C cannot express. Renaming with @ObjCName prevents the mangled names Swift would otherwise see.

Hide with @HiddenFromObjC

Mark internal helpers with @HiddenFromObjC so they never appear in the framework, keeping the Swift surface small and clean.

@HiddenFromObjC
fun internalCache()

Default Arguments Vanish

Kotlin default arguments do not cross the bridge, so Swift sees one full signature. Provide overloads if Swift needs choices.

Favor Simple Types

Expose plain data classes and primitives at the boundary. Deep generics and sealed hierarchies get awkward for Swift callers.

Watch Property Names

A Kotlin isActive boolean reads great in Swift, but odd getter names can look clumsy, so name properties with Swift in mind.

Document for iOS

Add KDoc on exported members. Some of it surfaces in Xcode, helping iOS devs use your shared API without guessing.

Test the Call Sites

Open the generated header or a Swift file and actually read how your API looks. If it feels clunky, refine the annotations.

A Polished Bridge

Thoughtful naming and hiding turn shared Kotlin into an API Swift devs enjoy, making cross-team work smooth and friendly.

Quick Check

Let us check what @ObjCName is for.

Recap

Shape exports with @ObjCName and @HiddenFromObjC, favor simple types, and read the real Swift call sites. A friendly bridge wins. 🎉

البدء مجانًا

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

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

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

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

هل درس «@ObjCName وواجهات API الملائمة لـ Swift» مجاني؟

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

ماذا ستتعلم في «@ObjCName وواجهات API الملائمة لـ Swift»؟

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

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

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

كم من الوقت يستغرق درس «@ObjCName وواجهات API الملائمة لـ Swift»؟

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

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

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

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

  1. كيفية تحويل Kotlin إلى Objective-C
  2. دوال Suspend باعتبارها Swift async
  3. جمع Flows من Swift
  4. @ObjCName وواجهات API الملائمة لـ Swift
← العودة إلى Kotlin Multiplatform Academy