EasyIOS敏捷開發框架,基于MVVM的IOS開發框架
全新基于MVVM(Model-View-ViewModel)編程模式架構,開啟EasyIOS開發函數式編程新篇章。
EasyIOS 2.0類似AngularJs,最為核心的是:MVVM、ORM、模塊化、自動化雙向數據綁定、等等
關于有疑問什么是MVVM,以及為什么IOS開發需要MVVM思想編程的,請看文章用Model-View-ViewModel構建iOS App有詳細介紹.
EasyIOS 2.0是基于MVVM編程思想進行構建的,封裝了Scene,SceneModel,Model,Action四種模型來對IOS進行開發,4種模型的定義解決了IOS開發中ViewController承擔了過多角色而造成的代碼質量低下,使得結構思路更加清晰。
-
1.其中Scene就是ViewController的子類,負責僅僅負責界面的展示邏輯
</li> -
2.Model數據模型,父類實現了ORM,可以實現json、object、sqlite三者之間的一鍵轉換,
</li> -
3.SceneModel 視圖-數據模型,主要負責 視圖與模型的綁定工作,其中binding的工作交給了ReactiveCocoa。
</li> -
4.SceneModel包含Action成員,Action類主要負責網絡數據的請求,數據緩存,數據解析工作
</li> </ul>
EasyIOS 以提升開發效率為宗旨-
代碼分離 -Model-View-ViewModel- 分離ViewController中的大量邏輯代碼,解決ViewController承擔了過多角色而造成的代碼質量低下。增加視圖與模型的綁定特性。
</li> -
自動持久化 -Model to Db– 我再也不想思考如何實現持久化了。在我的想法里,將模型對象直接扔到一個bucket里,然后它就能自動的對數據進行存儲、緩存、合并以及唯一化。我應當關注于描述對象間的屬性和聯系,以及我希望它們分組的方式。其他的實現細節都應該是不可見的。
</li> -
自動RESTful API –Json to Model- 一旦我給程序發出指令,將一個API響應對應到一個數據對象,網絡和JSON轉換應該被自動完成。我只想關注如何將JSON中那些項目展示給用戶。
</li> -
有表現力的觸發器和響應 -ReactiveCocoa– 我想用源于響應意圖(Intent)的語法來描述事件的響應和觸發器,我不關心它們間的連接是如何實現的,并且這些連接也不應該在重構時出錯。
</li> -
簡潔明了的網絡請求 -Action and Request- 對于簡單的GET、POST請求,可以進行對象化操作,我只想告訴程序,鏈接在哪里,有哪些參數,接下來就自動拉取到想要的數據,順便幫我把緩存也做齊了,也是極好的。
</li> -
便捷的UI布局 – FLKAutolayout-更加便捷的進行autolayout布局,不管你使用springs & struts或者AutoLayout,每種方法都需要你明確相關視圖如何排列。你需要花大量的時間編寫和修正這些排列,特別是現在有這么多設備需要適配 的情況下。沒有什么是自動寫好的,UI布局依賴于對細節的不斷調整。推薦開發期間Debug工具FLEX,pod 'FLEX', '~> 1.1.1'需要手動集成,發布release版本時請刪除。
</li> - 友好的線程控制 -GCDObjC-
- 便捷的正則匹配
- 富文本的Label
- and so on…… </ul>
github主頁:https://github.com/zhuchaowe/EasyIOS -