從事iOS研發(fā)已經(jīng)有七八年了,做過很多項(xiàng)目(涉及金融、越獄、商城、硬件等等),見過很多很多框架,最主流的是MVC和MVVM;但是個(gè)人從事多年來覺得這些架構(gòu)都基本上基于業(yè)務(wù)層面!故記錄個(gè)人項(xiàng)目中的經(jīng)驗(yàn):
如下圖:

個(gè)人喜歡對總共項(xiàng)目分為三個(gè)層次:系統(tǒng)層、業(yè)務(wù)層和交互層;
系統(tǒng)層:網(wǎng)絡(luò)框架、書架處理、本地持久化、和公共組件、硬件交互(硬件項(xiàng)目:比如藍(lán)牙、wifi等);系統(tǒng)層基本上封裝framework,或者建立私有cocoapod;
業(yè)務(wù)層:主要采用MVC或者M(jìn)VVM模式設(shè)計(jì),實(shí)現(xiàn)模塊化或者組件化:(用戶模塊、購物車模塊、交易模塊等);組件化:(訂單組件、用戶組件等等);
交互層:這一層不包含業(yè)務(wù)層的View;主要為自定義控件,例如:自定義鍵盤、自定義表情等;還有包含一些動(dòng)效,例如:水波效果,K線圖等;