關(guān)于新公司項目代碼的吐槽

最近入職了新公司农曲,刷新我從業(yè)以后對于iOS代碼的觀念社搅。從項目設(shè)計模式的框架、代碼量乳规、內(nèi)存管理罚渐,耦合度等等都見識了技術(shù)層面的下限(也許是我見識淺薄??)。故此總結(jié)一下驯妄,自警避免重蹈覆轍荷并。

項目介紹

項目是非常規(guī)功能性App,個人理解老板的愿景是構(gòu)建一個物聯(lián)網(wǎng)平臺青扔,后期可以應(yīng)用到寫字樓顯示屏以及用戶個人設(shè)備上源织,實現(xiàn)天氣翩伪、交通、股票谈息、購物等等各種民生服務(wù)可視化缘屹。首頁為地圖背景,由后臺返回環(huán)境元素素材侠仇,模擬用戶周邊環(huán)境轻姿,機器人問答檢索用戶輸入信息并反饋。

代碼槽點

最讓我驚詫的“無”設(shè)計模式

項目結(jié)構(gòu)主要是一個主控制器逻炊,不同頁面以新建UIView類頁面(個人理解應(yīng)該以childVC形式)互亮,且只有兩個分頁面的模型。也就代表主控制器承載了數(shù)據(jù)解析余素、邏輯判斷豹休、事件監(jiān)測等所有任務(wù),數(shù)據(jù)的輸入輸出大部分也是以字典關(guān)鍵詞進(jìn)行索引桨吊。

堅持就是勝利的代碼量

主頁面有一萬五千行代碼威根,其余分視圖也有幾百到幾千行代碼不等,一個方法幾千行代碼视乐,一個if判斷跨越幾百行代碼洛搀,if判斷一個套一個,連綿不絕佑淀。

隨遇而安的內(nèi)存管理

內(nèi)存管理雜亂無章姥卢,很多block隨機self弱引用(部分是局部變量的block),大部分頁面沒有delloc方法的釋放處理渣聚。最主要的問題是AFN沒有采用單例模式独榴,導(dǎo)致大量的內(nèi)存泄露(經(jīng)過幾天排查以及查資料才找到)。

設(shè)備適配靠慧眼

視圖的適配基本是寫死的固定數(shù)值奕枝,以及復(fù)雜的系數(shù)乘除法棺榔。使用Masonry也基本是固定數(shù)值,且大量約束沖突隘道。

冗余余余余余余代碼

所有頁面伴隨大量冗余代碼症歇,譬如氣泡元素十?dāng)?shù)個挨個創(chuàng)建和約束,難道一個for循環(huán)不香嗎谭梗????♀?忘晤,再比如一段局部代碼,在一個文件內(nèi)重復(fù)N次激捏,復(fù)制和單寫一個方法一行代碼解決哪個更簡單设塔????♀?

千絲萬縷的耦合度

文件內(nèi)充斥大量的無參方法和巨量的全局變量,以及視圖之間互相引用(更甚之远舅,該頁面的邏輯會寫到其他頁面中)

重復(fù)啰嗦的幫助類

估計該項目應(yīng)該經(jīng)過多人手闰蛔,大量命名不規(guī)范且無法復(fù)用的幫助類痕钢。單一功能性的擴展(我真害怕有runtime置換個原生方法,那就欲哭無淚了)序六。項目目錄也很雜亂任连,幫助類隨意放置。

這一次真的是刷新iOS從業(yè)以來的技術(shù)認(rèn)知下限例诀,但是也是警醒自己在項目框架以及細(xì)節(jié)處理上要吸收經(jīng)驗随抠,避免自己的代碼被人接手后大喊傻逼。代碼這東西很抽象繁涂,可能真正踩過坑拱她,才會意識到代碼規(guī)范和架構(gòu)的重要性。入職至今將近一個月爆土,老板不斷地催促開發(fā)新功能,舊代碼也并沒有完全理順诸蚕,但也是一個成長的過程步势,以此記錄和總結(jié)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末背犯,一起剝皮案震驚了整個濱河市坏瘩,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌漠魏,老刑警劉巖倔矾,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異柱锹,居然都是意外死亡哪自,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進(jìn)店門禁熏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來壤巷,“玉大人,你說我怎么就攤上這事瞧毙‰驶” “怎么了?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵宙彪,是天一觀的道長矩动。 經(jīng)常有香客問我,道長释漆,這世上最難降的妖魔是什么悲没? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮男图,結(jié)果婚禮上檀训,老公的妹妹穿的比我還像新娘柑潦。我一直安慰自己,他們只是感情好峻凫,可當(dāng)我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布渗鬼。 她就那樣靜靜地躺著,像睡著了一般荧琼。 火紅的嫁衣襯著肌膚如雪譬胎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天命锄,我揣著相機與錄音堰乔,去河邊找鬼。 笑死脐恩,一個胖子當(dāng)著我的面吹牛镐侯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播驶冒,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼苟翻,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了骗污?” 一聲冷哼從身側(cè)響起崇猫,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎需忿,沒想到半個月后诅炉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡屋厘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年涕烧,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汗洒。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡澈魄,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出仲翎,到底是詐尸還是另有隱情痹扇,我是刑警寧澤,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布溯香,位于F島的核電站鲫构,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏玫坛。R本人自食惡果不足惜结笨,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧炕吸,春花似錦伐憾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至瀑罗,卻和暖如春胸嘴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背斩祭。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工劣像, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人摧玫。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓耳奕,卻偏偏與公主長得像,于是被迫代替她去往敵國和親诬像。 傳聞我的和親對象是個殘疾皇子屋群,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,947評論 2 355