*協(xié)議
Swift 是一門面向協(xié)議 (POP) 開發(fā)的語言
Swift 的核心是面向協(xié)議編程
面向協(xié)議的編程的核心是抽象(Abstraction)和簡化(Simplicity)
協(xié)議的高級使用是協(xié)議的延展
協(xié)議(protocol) + 結(jié)構(gòu)體(struct) > 類(class)
面向?qū)ο笈c面向協(xié)議比較
- 面向?qū)ο笫且粋€很古老的軟件開發(fā)模式,通過類來實現(xiàn)
- 面向協(xié)議是蘋果在 swift 中主推的,通過協(xié)議和結(jié)構(gòu)體,可以代替類
- Swift 中的很多對象都改成了結(jié)構(gòu)體和協(xié)議
- 并不是所有的類都可以被協(xié)議+結(jié)構(gòu)體替代,但大多數(shù)是可以被替換的
- 面向協(xié)議使代碼更加靈活,類似于組件化開發(fā),符合工廠方法模式