0Pricing
Swift Academy · درس

التحكم في الوصول

التحكم في الوصول

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

مقدمة

مرحبًا،

يحدّ التحكم في الوصول من إمكانية وصول التعليمات البرمجية إلى بعض تعليماتكم البرمجية الموجودة في ملفات مصدر أو وحدات أخرى.

الوحدة: الوحدة هي وحدة توزيع لإطار عمل أو تعليمات برمجية لتطبيق /

تحتوي الوحدة على عدة ملفات من التعليمات البرمجية المصدرية.

ملف المصدر:

ملف المصدر هو ملف واحد من ملفات التعليمات البرمجية المصدرية داخل الوحدة.

مستوى الوصول

إذا عُرّف AL (مستوى الوصول) لنوع ما على أنه private، فسيكون مستوى الوصول لجميع العناصر التابعة لذلك النوع هو private.

متابعة

إن محدد الوصول private، الموضوع قبل المتغير أو الأسلوب أو غيره، يجعله متاحًا بالكامل ضمن النطاق.

الغرض من محدد الوصول fileprivate هو إتاحة الوصول إلى المتغير من فئة أخرى أو امتداد آخر معرّف في الملف نفسه، باستثناء النطاق الذي عُرّف فيه المتغير.

خصوصًا عند تعريف الامتداد في ملف المصدر نفسه، لا يمكنكم الوصول إلى الكائنات المعرّفة على أنها private، بينما يُعد استخدام fileprivate خيارًا جيدًا لذلك.

public

يمكن الوصول إلى محدد الوصول public على مستوى الوحدة بأكملها، لكنه قد يكون مقيّدًا في الفئات الفرعية والنطاقات عند استخدام وحدتين.

وقد لا تتمكنون من الوصول إلى المتغيرات والأساليب التي تعرّفونها باستخدام محدد الوصول public.

open

لا يمكن إنشاء فئة فرعية في وحدة أخرى من فئة معرّفة باستخدام public (أي لا يمكن تمديدها)، كما أنها لا تسمح بتجاوز الأساليب التي تحتوي عليها.

لذلك نحتاج إلى محدد وصول أكثر مرونة من public.

باختصار، يمكننا القول إن محدد الوصول open «أوسع من public».

متابعة

لذلك، إذا كنتم ستستخدمون وحدتين وتريدون الوصول إلى المتغيرات والأساليب في إحدى الوحدتين من الوحدة الأخرى، فما عليكم سوى: إضافة محدد الوصول open في بداية الفئة التي عيّنتموها كفئة أساسية،

وبالمثل، يكفي تعريف الأسلوب الذي تريدون تجاوزه.

internal

في الأنواع الأخرى غير التعداد، إذا عُرّف النوع على أنه public، تكون العناصر تلقائيًا internal. أما إذا عُرّف نوع Enum على أنه public، فستكون عناصر Enum هي public.

public enum Direction { case North, South, East, West } 
//each case is also has public access level.

إنشاء فئة فرعية

إنشاء فئة فرعية

يمكننا إنشاء فئة فرعية من أي فئة. ويكفي أن تكون الفئة متاحة من السياق المعني.

لا يمكن للفئة الفرعية أن تتمتع بمستويات وصول أكثر من فئتها العليا، لأن الفئة العليا تغلف الفئة الدنيا.

يمكن أن يكون الأسلوب المتجاوز أكثر إتاحة من الأسلوب الذي يتجاوزه في الفئة العليا.

public class ClassA {

//method private tanimlanmis
private func aPrivateMethod() {}

internal func anInternalMethod() {}

}

internal class ClassB: ClassA {

// The overridden method is defined internally. Access level has increased even more.
override internal func anInternalMethod() {}

}

مستوى وصول الثوابت والمتغيرات والخصائص والفهارس الفرعية

مستوى وصول الثوابت والمتغيرات والخصائص والفهارس الفرعية

لا يمكن أن يتطلب ثابت أو متغير أو خاصية مستوى وصول أقل تقييدًا من النوع المرتبط به. فالخاصية public مثل الفئة public.

كما أن getter وsetter للثوابت والمتغيرات والخصائص والفهارس الفرعية لها مستوى الوصول نفسه لنوعها، كما هو الحال مع الثوابت أو المتغيرات.

تهانينا

تهانينا 🎉

تعلّمنا في هذا الدرس التحكم في الوصول في Swift.

لقد أتممنا الآن دورة Swift للمبتدئين.

لنبدأ الاختبار ونحصل على شهادتنا. 🌟

التحكم في الوصول — رسم توضيحي 10

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

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

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

ماذا ستتعلم في «التحكم في الوصول»؟

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

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

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

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

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

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

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

← العودة إلى Swift Academy