從事iOS研發(fā)已經(jīng)有七八年了撞叽,做過很多項(xiàng)目(涉及金融、越獄插龄、商城愿棋、硬件等等),見過很多很多框架均牢,最主流的是MVC和MVVM糠雨;但是個人從事多年來覺得這些架構(gòu)都基本上基于業(yè)務(wù)層面!故記錄個人項(xiàng)目中的經(jīng)驗(yàn):
如下圖:
個人喜歡對總共項(xiàng)目分為三個層次:系統(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腐宋;主要為自定義控件紊服,例如:自定義鍵盤檀轨、自定義表情等;還有包含一些動效欺嗤,例如:水波效果参萄,K線圖等;