最近換了份工作豌习,當然還是iOS開發(fā)存谎,感覺自己從程序員到程序猿。從每周的雙休6點下班肥隆,20分鐘路程 到每周8點加班單休既荚,兩個小時的路程。中間一段時間的調(diào)整了心態(tài)栋艳,一段時間算是從新思考了自己的人生(也算是職業(yè)規(guī)劃吧)恰聘。
一直感覺自己的開發(fā)能力還不錯,但是遇到了自己要做開發(fā)組組長的時候變得手無失措吸占,習(xí)慣一個人開發(fā)(前家公司自己獨立完成3個APP開發(fā))晴叨,繼續(xù)再怎么錯都是自己一個人很容易補救的,也不會影響別人的開發(fā)進度矾屯。好吧兼蕊,作為一名程序猿的我確實不善言辭,還是直接上干活吧件蚕。
一孙技、APP設(shè)計模式
現(xiàn)在iOS開發(fā)的設(shè)計模式很多,什么MVVM,MVP等排作,當然最常用的還是MVC牵啦。對于初學(xué)者,理解設(shè)計模式不是很簡單的事情妄痪,相對更簡單的不如去模仿栗子哈雏,去寫demo,然后分模塊在項目中實踐,現(xiàn)在不是也有很多大公司的APP部分使用react native 熱修復(fù)框架拌夏。說了那么多還是說說我自己的項目吧僧著,有人說你的項目中履因,無非什么MVC模式框架障簿,什么masonry afn 和別人的有什么區(qū)別么?
我個人理解的區(qū)別在于栅迄,你在項目的進步站故,什么樣子的目標,什么樣的努力毅舆,就會有什么樣子的結(jié)果西篓。
項目很平常的使用了MVC。項目結(jié)構(gòu)圖如下憋活。
可能很多開發(fā)人員上來就說岂津,這沒什么啊。悦即。吮成。我們就是自己做的橱乱。是的,但是如果理解里面的內(nèi)容粱甫,就是我們自己去思考的了泳叠,有時候我們?yōu)槭裁慈ミ@么創(chuàng)建原因,都是要和小弟們說的(看到不要怪我茶宵,大哥們)危纫。其次,確實對部分還是有一定了解的乌庶,剛開始的時候連續(xù)看到了好多天的代碼規(guī)范類的文章种蝶,下面再聊。到這里APP基本的版圖已經(jīng)出來了瞒大。這里我們要詳細介紹幾個類蛤吓。
1、數(shù)據(jù)操作的類糠赦。如果封裝AFNetworking 其實是一種很講究的事情会傲,封裝過ASI的肯定都是知道的。畫一個簡單的圖吧拙泽。
簡單一點的說淌山,就是如果你不使用ASI了或者AFN了,你需要修改多少東西顾瞻。這個思路不僅僅偏向于簡單的網(wǎng)絡(luò)請求包括數(shù)據(jù)庫操作等泼疑。我們對代碼進行封裝的意義不僅僅是減少代碼量。更多的考慮以后的代碼維護和開發(fā)荷荤,記得領(lǐng)導(dǎo)之前說過一句話退渗,更好的領(lǐng)導(dǎo)者是有更多的預(yù)見性,他比平常人看的更多更遠蕴纳。
2会油、控制器的基類,這部分其實更重要古毛。baseController對控制器進行代碼的二次封裝翻翩。例如導(dǎo)航欄,狀態(tài)欄通知消息等稻薇。第二個webviewbController 是繼承Base的嫂冻。用于項目中H5的交互,包含需要的三方框架
3.預(yù)編譯文件的使用塞椎,其實更多的想一些常用的封裝好的網(wǎng)絡(luò)請求的類桨仿,masonry ,LCP什么的都可以放進去案狠,因為這個真的是用到很多的服傍。
4.其實我個人是比較喜歡pods 簡直不要太方便暇昂,但是出于對代碼的二次開發(fā),加入明年沒人維護cocoapods,像剛升級xcode 8那會伴嗡,各種坑一樣急波。其實為了方便堅持后面的坑,我們是可以減少使用三方庫瘪校。
其實項目中框架相關(guān)的還是很多的阱扬,我們在使用過程中可以根據(jù)自己的開發(fā)需要修改泣懊。這個應(yīng)該是最基礎(chǔ)的的了。
大俠無拍磚麻惶,只適合初學(xué)者馍刮。謝謝。