So habe ich dieses ProtokollGibt es eine Möglichkeit, eine Standardimplementierung für ein Protokoll auf Swift vorzunehmen?
protocol Syncable {
func sync()
}
dann will ich ein anderes Protokoll erstellen, die die erste implementiert, sondern gibt auch andere Funktionen wie folgt umzusetzen:
protocol Repository:Syncable {
func propagateTop()
func propagateLow()
override func sync() {
propagateTop()
propagateLow()
}
}
So auf diese Weise diejenigen, die implementieren Repository
müssen die beiden Funktionen implementieren, ohne die sync
eines kennen oder implementieren zu müssen.
Gibt es trotzdem, um dies zu erzwingen?
Ich habe versucht, Repository
eine Klasse und machen Unterklassen davon für jede Repository
Ich will, aber das bedeutet nicht, dass jede Unterklasse diese 2 Methoden implementieren sollte.
Die Swift-Programmiersprache hat einen [schönen und prägnanten Abschnitt über Protokollerweiterungen] (https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Protocols.html#//apple_ref/ doc/uid/TP40014097-CH25-ID521) (und Protokolle im Allgemeinen), die ich definitiv empfehlen würde, zu lesen. – Hamish