Swift Academy · درس

بروتوكول View وخصيصة Body

تعرّفوا إلى ما يجعل النوع View في SwiftUI، وكيف تحدد body التسلسل الهرمي لواجهة المستخدم.

الدرس 1 من 412 خطوة

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

مرحبًا بكم

SwiftUI هو إطار عمل تعريفي لبناء واجهات المستخدم. كل عنصر مرئي هو `View` — وهو نوع قيمة خفيف الوزن تصف خاصية `body` من خلاله واجهة المستخدم.

بروتوكول View

```swift protocol View { associatedtype Body: View; var body: Body { get } } ``` يتطلب الالتزام بـ `View` وجود خاصية محسوبة باسم `body` تُرجع قيمة `View` أخرى.

مرحبًا بالعالم

```swift struct ContentView: View { var body: some View { Text("Hello, SwiftUI!") } } ```

نوع الإرجاع المعتم: some View

تخفي `some View` نوع الإرجاع الفعلي عن المستدعين، مع إبقائه معروفًا للمترجم — وهذا ضروري لأن `body` يمكن أن تُرجع أشجارًا معقدة ومتداخلة من العروض.

تركيب العروض

```swift struct ContentView: View { var body: some View { VStack { Text("Title").font(.title) Text("Subtitle").foregroundColor(.gray) } } } ```

هوية العرض ودورة حياته

تستخدم SwiftUI نوع العرض وموضعه في التسلسل الهرمي لتحديد هويته — وعندما تتغير الهوية، يُعاد إنشاء العرض. أما عندما تظل مستقرة، فلا يُعاد تقييم سوى `body`.

العروض الفرعية

استخرج الأجزاء القابلة لإعادة الاستخدام: ```swift struct Header: View { var title: String var body: some View { Text(title).font(.largeTitle) } } ```

بدائيات الرسم

أنواع العروض المضمنة: • `Text` و`Image` و`Button` و`Label` • `Rectangle` و`Circle` و`Ellipse` • `Color` و`Spacer` و`Divider`

عروض الحاويات

تدير عروض الحاويات التخطيط: • `VStack` و`HStack` و`ZStack` • `List` و`ScrollView` و`LazyVStack` • `Group` و`Section`

العروض هي هياكل — ومنخفضة التكلفة

عروض SwiftUI هي أنواع قيم يُعاد إنشاؤها عند كل عملية عرض. وتكلفة حساب `body` منخفضة، أما العرض الفعلي فتتولاه آلية العرض الأساسية التي تقارن الفروق بين العروض.

تحقق سريع

ما الخاصية المطلوبة في بروتوكول `View`؟

خلاصة

أهم النقاط: • يتطلب بروتوكول `View` وجود `body: some View` • الهياكل منخفضة التكلفة — ويُعاد إنشاؤها كثيرًا • تخفي `some View` نوع الإرجاع المعقد • استخرج العروض الفرعية لإعادة استخدامها • تستخدم SwiftUI النوع والموضع لتحديد هوية العرض التالي: @State.
البدء مجانًا

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

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

الدورات
122
الدروس
409

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

هل درس «بروتوكول View وخصيصة Body» مجاني؟

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

ماذا ستتعلم في «بروتوكول View وخصيصة Body»؟

تعرّفوا إلى ما يجعل النوع View في SwiftUI، وكيف تحدد body التسلسل الهرمي لواجهة المستخدم. تتمرن على Swift Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

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

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

كم من الوقت يستغرق درس «بروتوكول View وخصيصة Body»؟

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

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

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

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

  1. بروتوكول View وخصيصة Body
  2. ‏@State: الحالة المحلية القابلة للتعديل في العروض
  3. معدِّلات العرض: التسلسل والمعدِّلات المخصّصة
  4. المعاينات وPreview Provider
← العودة إلى Swift Academy