? ? ? ?采用純Swift的改革派方式;
? ? ? ?采用純Objective-C的保守派方式;
? ? ? ?采用Swift調用Objective-C的左傾改良派方式;
? ? ? ?采用Objective-C調用Swift的右傾改良派方式。
? ? ? ?從技術上講,無論是否采用分層架構設計,都可以用上述4種方式來選擇語言。也就是說,可以在同一層中采用單一語言和混合搭配,也可以在不同層之間采用單一語言和混合搭配。但是從設計規范上講,一般不會在同一層中使用混合搭配,在不同層之間可以混合搭配。基于圖1進行分層,如果只考慮業務邏輯層和數據持久層采用相同語言的情況下,那么可以混合搭配出4種模式,具體如下。
iOS平臺中信息處理應用的分層架構設計圖?
? ? ? ?ObjC-ObjC-ObjC,縮寫為OOO:用Objective-C語言實現表示層,用Objective-C語言實現業務邏輯層,用Objective-C語言實現數據持久層。
? ? ? ?Swift-Swift-Swift,縮寫為SSS:用Swift語言實現表示層,用Swift語言實現業務邏輯層,用Swift語言實現數據持久層。
? ? ? ?Swift-ObjC-ObjC,縮寫為SOO:用Swift語言實現表示層,用Objective-C語言實現業務邏輯層,用Objective-C語言實現數據持久層。
? ? ? ObjC-Swift-Swift,縮寫為OSS:用Objective-C語言實現表示層,用Swift語言實現業務邏輯層,用Swift語言實現數據持久層。
? ? ? ?另外,如果考慮到代碼的組織形式,可以分為如下3種組織方式:
? ? ? ?同一工程的分層,用P(Project)表示;
? ? ? ?基于靜態鏈接庫實現的同一個工作空間不同工程的分層,用WL(Workspace Library)表示;
? ? ? ?基于自定義框架實現的同一個工作空間不同工程的分層,用WF(Workspace framework)表示。
? ? ? ?因此,經過組合,可以得到表1所述的結果。
表1
? ? ? ?關于IOS開發中的10種分層模式就先介紹到這里,如果還有哪些不明白的地方,可隨時來電咨詢,百恒網絡將專業為您解答!