iOS應(yīng)用開(kāi)發(fā)之十大坑隊(duì)友

之前做Indie Dev都是自己坑自己,兩三年也沒(méi)坑出來(lái)多少花樣深感慚愧。最近功力大增但不敢獨(dú)享,給大家?guī)?lái)天下碼農(nóng)之《iOS應(yīng)用開(kāi)發(fā)之十大坑隊(duì)友》。博主最近不太會(huì)說(shuō)人話,找到點(diǎn)《大腕》中瘋?cè)嗽旱臓顟B(tài)。小朋友請(qǐng)?jiān)诩议L(zhǎng)指導(dǎo)下選擇性觀看,看完了別忘記微博at我分享心得。

PS: 建議播放音樂(lè)以達(dá)到最佳閱讀效果。

第十名:SCM Attack

適用于使用各種類(lèi)型的SCM,或者干脆不用。以git舉例。只提交編譯錯(cuò)誤的代碼,或者保證App一打開(kāi)就crash,不幫忙改了bug別想繞過(guò)去;不正確設(shè)置gitignore文件,彰顯個(gè)性;每個(gè)commit至少幾十個(gè)文件,突顯代碼量;Log永遠(yuǎn)是瀟灑的bug fix或者fix bug,只可意會(huì)不可言傳;別人用rebase咱就用merge或者反過(guò)來(lái),總之要有自己的特色;喜歡code reivew的速來(lái)接招。

難度指數(shù):6 殺傷指數(shù):6 綜合評(píng)定:6

第九名:Coding Style Attack

此類(lèi)型攻擊覆蓋范圍之廣,無(wú)人出其右。頭文件不寫(xiě)注釋?zhuān)A粢欢延肋h(yuǎn)不會(huì)完成的TODO/FIXME,再穿插著保留600行間歇注釋掉的有模有樣兒的代碼;咱是.NET背景所有property一律get/set整齊劃一;偶爾再來(lái)個(gè)downloadFile/downloadFile2這樣寫(xiě)意的命名,一細(xì)看還真的不一樣兒;每行代碼都寫(xiě)幾個(gè)magic number除了你沒(méi)人懂什么意思;代碼風(fēng)格的辨識(shí)度高,以至于blame view都是多余的。

難度指數(shù):6 殺傷指數(shù):7 綜合評(píng)定:6.5

第八名:Multi Threading Attack

本著不過(guò)度優(yōu)化的原則將運(yùn)算塞滿主線程,反正負(fù)責(zé)優(yōu)化的多數(shù)不是自己;各種Mutable對(duì)象線程間傳來(lái)傳去,for循環(huán)中改改更健康;sleep/dispatch_after活學(xué)活用問(wèn)題搞不定全靠它;單件就有5種寫(xiě)法完爆茴字(老板來(lái)壺黃酒)。

難度指數(shù):6 殺傷指數(shù):8 綜合評(píng)定:7

第七名:Header Attack

Coding Style Attack的進(jìn)化;500行的header如家常便飯,管它private還是public的直接往這里扔;除了沒(méi)注釋還不提供初始化方法,暴露幾十個(gè)property,其中的5個(gè)要是特定值某個(gè)無(wú)參方法就沒(méi)法工作;最后再把一堆有關(guān)無(wú)關(guān)的header都往Prefix.pch里扔,編譯時(shí)咱就拼硬件。

難度指數(shù):7 殺傷指數(shù):8 綜合評(píng)定:7.5

第六名:OO Attack

此門(mén)技藝博大精深,屬無(wú)招勝有招的范疇;能繼承就不用組合,繼承層次小于3層出門(mén)不好意思跟人打招呼,基類(lèi)永遠(yuǎn)只有一個(gè)唯一子類(lèi)。if/else嵌套個(gè)六、七層不嫌多,一對(duì)大括號(hào)保證你一屏看不完,讓鼓吹多態(tài)的學(xué)院派一邊涼快去;調(diào)用super咱就隨機(jī)位置隨機(jī)call,姿勢(shì)隨心情而定。

難度指數(shù):7 殺傷指數(shù):9 綜合評(píng)定:8

第五名:View Hierarchy Attack

此類(lèi)適用于使用自定義的“容器類(lèi)”那票朋友。甭管View Controller的生命周期,App啟動(dòng)時(shí)一并創(chuàng)建并稱(chēng)之為預(yù)加載,然后每個(gè)VC貼幾十上百個(gè)視圖上去,使用Reveal/Xcode View Debugging時(shí)給人一種小朋友看火車(chē)的感覺(jué),感嘆自己的屏幕不夠?qū)?;再?duì)View hierarchy各種深度廣度遍歷,對(duì)第n層某個(gè)view來(lái)個(gè)強(qiáng)制轉(zhuǎn)換。圖片一定要拉伸,所有視圖全透明,像素一定不能對(duì)齊;種種招數(shù)保證了iPhone 5S最多跑到30FPS,瞬間充滿對(duì)iPhone 6的期待。

難度指數(shù):7 殺傷指數(shù):10 綜合評(píng)定:8.5

第四名:Massive Attack

此招集六大門(mén)派之精華,單一使出來(lái)都不夠帶感。Massive VC打頭陣,View Controller 5000行起;基類(lèi)有什么塞什么,方法的caller count為1最好;再來(lái)幾十個(gè)singleton或者工具類(lèi),頭文件塞上幾百個(gè)類(lèi)方法,最好還都沒(méi)有參數(shù)和返回值;有一種恢弘大氣的感覺(jué)就對(duì)了。

難度指數(shù):9 殺傷指數(shù):9 綜合評(píng)定:9

第三名:Dynamic/Typeless Attack

充分利用Objective-C的動(dòng)態(tài)性,能用id咱就不用具體類(lèi)型;API response/NSNotification/db里面數(shù)以百計(jì)的key/value飛來(lái)飛去;同一個(gè)東西在不同的地方類(lèi)型和名字一定要有差異;諸如此類(lèi)我們稱(chēng)之為了解代碼熟悉業(yè)務(wù),需要掛debugger說(shuō)明代碼不熟或者你太弱了;重構(gòu)工具就是擺設(shè),因?yàn)槟愀居貌涣恕?/p>

難度指數(shù):9 殺傷指數(shù):10 綜合評(píng)定:9.5

第二名:Runtime Attack

+Load里面各種黑魔法,黑得小伙伴沒(méi)人敢動(dòng);Catetory中搞些同名方法再加詭異的method swizzling。這類(lèi)招數(shù)殺傷力極強(qiáng),很可能數(shù)小時(shí)也定位不了問(wèn)題所在,又能提升逼格,強(qiáng)烈推薦。

難度指數(shù):10 殺傷指數(shù):10 綜合評(píng)定:10

第一名:Cross Dimension Attack

最能坑你的永遠(yuǎn)不是隊(duì)友這種同一維度的生物,你懂的

難度指數(shù):??? 殺傷指數(shù):??? 綜合評(píng)定:???

轉(zhuǎn)載,侵刪

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,790評(píng)論 25 709
  • 原文: iOS應(yīng)用架構(gòu)談 view層的組織和調(diào)用方案 iOS應(yīng)用架構(gòu)談 開(kāi)篇 iOS應(yīng)用架構(gòu)談 網(wǎng)絡(luò)層設(shè)計(jì)方案 i...
    難卻卻閱讀 1,373評(píng)論 0 7
  • top是Linux較為常用的命令,可以監(jiān)控服務(wù)器的CPU、內(nèi)存、進(jìn)程的運(yùn)行情況,話不多說(shuō),直接操作。 輸入top即...
    大閑人柴毛毛閱讀 2,044評(píng)論 0 2
  • 近日,看了一部電影------?天才少女?,心中頗有幾分感想,但因文筆粗淺,多有不足之處,還望見(jiàn)諒。 01 影片的...
    劉不慌閱讀 258評(píng)論 0 0
  • 說(shuō)姑姑神奇,是因?yàn)樗臀覀兗易宓钠渌硕即蟛灰粯印T谖覀冋麄€(gè)家族中,從祖輩到父輩,再到我們這一輩,每個(gè)人雖然性格各...
    親愛(ài)的小魚(yú)啊閱讀 388評(píng)論 5 0

友情鏈接更多精彩內(nèi)容