كيفية تعريف الطرق الاختيارية في بروتوكولات Swift؟
مرحبًا بالجميع! أنا مبتدئ في Swift وأحاول فهم البروتوكولات. لدي بروتوكول `MyDelegate` يحتوي على عدة طرق. أريد أن تكون بعض هذه الطرق اختيارية للتنفيذ — أي أن الفئة التي تتبنى البروتوكول يمكنها عدم تنفيذها إذا لم تكن ضرورية.
في Objective-C كنت أستخدم `@optional` ببساطة، لكن هذا لا يعمل في Swift. على سبيل المثال، لدي هذا الكود:
```swift
protocol MyDelegate {
func didStartTask()
func didFinishTask()
func didFailWithError(error: Error) // أريد جعل هذه الطريقة اختيارية
}
```
عندما أحاول كتابة `@optional` قبل الطريقة، يشتكي المترجم: "الطرق الاختيارية مدعومة فقط في بروتوكولات @objc". لا أريد استخدام `@objc` لأن فئتي لا ترث من NSObject.
كيف يمكن تعريف الطرق الاختيارية في بروتوكول Swift دون الارتباط بـ Objective-C runtime؟ هل هناك طريقة Swift لجعل الطريقة اختيارية؟ أم يجب استخدام...