問題
這兩天工作相對(duì)平靜地回,準(zhǔn)備將一些項(xiàng)目中常用的工具類整理出來,放到github上平夜,以后開始項(xiàng)目直接就能拿來用蛹磺。整理工具類的過程中發(fā)現(xiàn)了一些問題,所以記錄一下短荐。順便把上次上線遇到的問題也記錄一下
TIPs
1、項(xiàng)目中原來是有一個(gè)庫叫做 base64 叹哭,用于做base64 解編碼忍宋,但是在ios7 之后,系統(tǒng)已經(jīng)提供了风罩,stackoverflow上有問題 http://stackoverflow.com/questions/19088231/base64-decoding-in-ios-7
2糠排、在整理代碼中發(fā)現(xiàn)了一些槽點(diǎn)。A超升、對(duì)工具類的命名入宦,真的是醉了。作為一個(gè)工具類室琢,合適的命名乾闰,也就是一看名字就知道這個(gè)類可以用來干嘛,那么后邊再來的人重復(fù)造輪子的概率會(huì)極大的降低盈滴,很多時(shí)候涯肩,后來的人是真的很難找到你已經(jīng)寫好了的那個(gè)方法,故而以為沒有巢钓,所以自己才去寫一個(gè)病苗。這就要求我們自己寫工具類的時(shí)候,對(duì)工具類的命名最好能明確表示它的意義症汹,比如 NSStringURLUtil硫朦,NSString+MD5 通過名字就能知道它的功能。同時(shí)烈菌,在我們自己準(zhǔn)備寫一個(gè)工具類的時(shí)候阵幸,先看看是否已經(jīng)有現(xiàn)成的方法,避免自己重復(fù)造輪子芽世。B挚赊、工具類,顧名思義济瓢,它應(yīng)該就是一個(gè)獨(dú)立的東西荠割,拿過來就可以用。在項(xiàng)目中,我發(fā)現(xiàn)部分工具類還依賴其他的類蔑鹦,沒法做到獨(dú)立夺克,別人拿過去,就不能用啦嚎朽。從代碼封裝的角度來說铺纽,這應(yīng)該是很失敗的,或許是作者趕時(shí)間哟忍,還沒來得及修改狡门,又或許是后來的人慢慢就寫亂了。所以從自身出發(fā)锅很,我們自己寫這些跟業(yè)務(wù)毫無關(guān)系的類時(shí)候其馏,應(yīng)該做到獨(dú)立,不要引入其他依賴(大環(huán)境不算爆安,比如 UIKit叛复、Foundation等)。如果無法避免需要引入扔仓,那就放到業(yè)務(wù)層去褐奥,不要放在工具類一起。C 当辐、不要把各個(gè)不相干的工具類放在一起抖僵。因?yàn)槲野l(fā)現(xiàn)項(xiàng)目中有一個(gè)工具類里雜合了好多其他功能,簡直就是雜貨店缘揪,處理圖片的、清除緩存的义桂、 顏色處理的找筝。想象一下,你家有一個(gè)超大工具箱慷吊,你要用一套扳手休單車袖裕,也要把整個(gè)工具箱拿過來,而不是拿扳手套裝溉瓶,那你會(huì)有多煩人急鳄。所以不要怕分得太細(xì),如果分類分層合適堰酿,再細(xì)也不會(huì)顯得復(fù)雜疾宏。
3、項(xiàng)目審核不通過触创,原因是提供的截圖坎藐,在APP中沒有發(fā)現(xiàn)。我們提供的截圖中有4張都是引導(dǎo)圖,只會(huì)顯示一次岩馍,所以可能審核人員都忘了有這圖了碉咆。這也算是坑,所以別去踩蛀恩。
4疫铜、回憶上次項(xiàng)目提審那一天,我們我們把原本支持ipad和iPhone改為只支持iPhone双谆。導(dǎo)致提交的時(shí)候壳咕,一直出錯(cuò)。查找官方的QA佃乘,原來是只能增量支持設(shè)備囱井,不能減量。不然會(huì)造成已經(jīng)安裝了ipad應(yīng)用的用戶無法使用更新包趣避。所以要求我們在項(xiàng)目開始時(shí)候庞呕,就確定一個(gè)方向,避免出現(xiàn)上面的問題程帕。
總結(jié)
碰到不好的代碼住练,我們可以一邊抱怨,但同時(shí)愁拭,也別忘了去修正讲逛,讓它變得美好。