هل توجد معدّلات وصول في Swift؟ (public, private, internal)
مرحباً بالجميع! لقد بدأت للتو في تعلم Swift، وانتقلت من Java وC++، ويقلقني سؤال واحد. في Java اعتدت على تحديد `public`، `private`، `protected` بوضوح قبل كل class أو method أو field. لكن في Swift أرى أن أمثلة الكود غالباً لا تكتب شيئاً قبل التصريح، ومع ذلك يعمل. على سبيل المثال:
```swift
class MyClass {
var name = "John"
func sayHello() {
print("Hello")
}
}
```
ويمكنني الوصول إلى هذا class وطرقه من ملف آخر في نفس المشروع. هل يعني هذا أن كل شيء افتراضياً هو `public`؟ أم أن هناك معدّل وصول افتراضي آخر؟ وكيف أجعل شيئاً مخفياً تماماً داخل الملف أو داخل class؟ سمعت عن `fileprivate` و `open`، لكنني لا أفهم متى أستخدمها. اشرح لي، من فضلك، ما هي معدّلات الوصول الموجودة في Swift، وكيف تختلف عن Java، وكيفية تطبيقها بشكل صحيح في المشاريع الحقيقية. سأكون ممتناً لأمثلة مع شروحات!