2016年干貨小結(jié)

16年過來,進(jìn)了傳說中的某廠闯狱,福利不錯~~技術(shù)知識方面也有一些其他的收獲,總結(jié)如下抛计,對比一下技術(shù):
總體上來說扩氢,新東家程序員不用關(guān)心底層,只需關(guān)注業(yè)務(wù)邏輯和ui就好爷辱。
老東家需要自己定義的地方比較多

1. 架構(gòu)上:

新東家 mvvm + DataBinding
豬廠那邊則是傳統(tǒng)mvc录豺,比較笨重,一個Activity中代碼上1000行饭弓,業(yè)務(wù)邏輯全糅雜在里面了双饥。

2. 三方庫:

新東家其實(shí)很少直接使用三方庫,一般都進(jìn)行了些優(yōu)化借鑒參考或改寫弟断,老東家直接拿來使用咏花。

分情況說:

a. 網(wǎng)絡(luò)請求

新東家自己做了封裝了一套傳輸協(xié)議,比較高大上阀趴,平時寫代碼幾乎可以不用關(guān)心數(shù)據(jù)傳輸問題昏翰。網(wǎng)路請求只是個體力活,之間的封裝刘急,抽象性均較高棚菊。朋友們可能注意到我使用的是幾乎不,是的叔汁,這里我就遇到一些坑统求,比如圖片,音頻上傳需求時就遇到過据块,一次灰度版本也遇到過改動底層協(xié)議的命名出現(xiàn)一個比較嚴(yán)重的大范圍crash码邻,所以封裝程度高也有缺點(diǎn),在做邏輯或修改時另假,不小心會踩坑像屋。

前東家,恩边篮,網(wǎng)絡(luò)框架整個借鑒流程己莺。先AsyncHttpClient奏甫,然后引入Volley, 15年時引入okhttp + Gson(嚴(yán)格算和前面兩個不是同一類型)篇恒,這里做的很不好的地方扶檐,雜糅太多框架,可擴(kuò)展性較差胁艰,初次的架構(gòu)沒考慮到以后款筑,替換框架成本較大。離職的時候都還有前面兩個框架在里面腾么,還準(zhǔn)備引入retrofit也是醉了奈梳。

b 圖片框架

新東家,這里還是自己寫了一個圖片庫解虱,使用較簡單攘须,可配置性較高,然后同事添加上 DataBinding的bingdingAdapter后殴泰,簡單的圖片都不需要寫請求代碼于宙,xml配置就好。復(fù)雜點(diǎn)使用配置屬性悍汛,就可以搞定捞魁。當(dāng)然,databinding 也帶來些坑离咐∑准螅可以參照之前文章http://www.reibang.com/p/d82bb995db4d 綜上,能滿足所有的要求宵蛀,支持配置昆著,使用較簡單。

老東家术陶,圖片庫與網(wǎng)絡(luò)請求類似凑懂,Imageloader 然后部分替換Glide,替換和使用過程也遇到一些坑瞳别。 Glide還是很強(qiáng)大的征候,支持gif,代碼量不大(居中Fresco>Glide>Picasso)祟敛。 Picasso 優(yōu)勢在于可以選擇將網(wǎng)絡(luò)請求的緩存部分交給了okhttp實(shí)現(xiàn),Square的全家桶兆解。Fresco天生缺點(diǎn)太大了馆铁。可參見這篇的思路改造下: http://mp.weixin.qq.com/s?__biz=MzI2OTQxMTM4OQ==&mid=2247484509&idx=1&sn=0cd5005e1d8137cdba01315552bf49f3&chksm=eae1f10fdd9678198a15ba0938f7dc8909a7e2c2d16c58bc4c72e70c4e8b7ff50fb6bb7f68ed#rd

c 異步
這個兩家公司類似锅睛,參考Asycktask自己寫了一個埠巨,解決其版本不一致導(dǎo)致的串行和并行問題历谍,以及請求數(shù)不操過128問題。

d 組件間 消息通知

新東家辣垒,這里也有兩個庫雜糅在一起望侈,EventCenter ,LocalBroadcastManager勋桶。 第一個是參考Event bus 的脱衙,接口基本一致,但是優(yōu)化方面做的沒有Event bus 好例驹。

老東家直接Event bus捐韩。

e 緩存

這里基本上一直 DB + sp及內(nèi)存級

新東家DB 自己采用ORM + 注解封裝了下,注解消耗一定性能鹃锈,但代碼量小和使用上較簡單荤胁。

老東家DB 自己寫sqlite helper,配置較高屎债,可優(yōu)化較高仅政,但實(shí)際工程中,需要優(yōu)化的地方不多盆驹。

f 混合框架

新東家自家的混合框架

老東家 ydk圆丹,JsBridge http://www.reibang.com/p/fce3e2f9cabc

g 一些其他的:

新東家,框架mvvm + DataBinding 框架召娜,再加上抽象运褪,基本上Activity代碼不超過10行,在fragment層級中進(jìn)行處理玖瘸。性能優(yōu)化方面秸讹,老東家確實(shí)不如,比如anr分析雅倒,traceView卡慢監(jiān)聽璃诀,代碼規(guī)范,內(nèi)存泄漏等蔑匣。 技術(shù)上劣欢,這邊多了些:比如換膚,熱修復(fù)裁良,進(jìn)程痹浣活、jni編程价脾。代碼混淆牧抵、自動化打包、持續(xù)集成(自己的)、項(xiàng)目管理svn(比較坑些)犀变。

老東家:
dex分包另起進(jìn)程加載優(yōu)化啟動速度妹孙,android-priority-jobqueue 線程管理 自動化打包、持續(xù)集成jenkins获枝、項(xiàng)目管理git蠢正。

另外談?wù)劄槁锊灰隦xJava

15年起,RxJava文章遍地走省店,其實(shí)我覺得其大而不當(dāng)嚣崭,能力不專。最核心能力就是異步并發(fā)萨西, 流式處理上有鹿,這個確實(shí)強(qiáng)大。一般而言谎脯,公司都形成了自己的異步框架葱跋。實(shí)際項(xiàng)目中多個線程的同步, android-priority-jobqueue這個庫基本可以滿足要求源梭。其他網(wǎng)上的擴(kuò)展的組件消息傳遞與EventBus性能上還是一定差距娱俺。至于其擴(kuò)展的RxBinding, DataBinding基本上能替代废麻。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末荠卷,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子烛愧,更是在濱河造成了極大的恐慌油宜,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件怜姿,死亡現(xiàn)場離奇詭異慎冤,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)沧卢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進(jìn)店門蚁堤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人但狭,你說我怎么就攤上這事披诗。” “怎么了立磁?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵呈队,是天一觀的道長。 經(jīng)常有香客問我唱歧,道長掂咒,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任迈喉,我火速辦了婚禮绍刮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘挨摸。我一直安慰自己孩革,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布得运。 她就那樣靜靜地躺著膝蜈,像睡著了一般。 火紅的嫁衣襯著肌膚如雪熔掺。 梳的紋絲不亂的頭發(fā)上饱搏,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天,我揣著相機(jī)與錄音置逻,去河邊找鬼推沸。 笑死,一個胖子當(dāng)著我的面吹牛券坞,可吹牛的內(nèi)容都是我干的鬓催。 我是一名探鬼主播,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼恨锚,長吁一口氣:“原來是場噩夢啊……” “哼宇驾!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起猴伶,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤课舍,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后他挎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體筝尾,經(jīng)...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年雇盖,在試婚紗的時候發(fā)現(xiàn)自己被綠了忿等。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡崔挖,死狀恐怖贸街,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情狸相,我是刑警寧澤薛匪,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站脓鹃,受9級特大地震影響逸尖,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一娇跟、第九天 我趴在偏房一處隱蔽的房頂上張望岩齿。 院中可真熱鬧,春花似錦苞俘、人聲如沸盹沈。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽乞封。三九已至,卻和暖如春岗憋,著一層夾襖步出監(jiān)牢的瞬間肃晚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工仔戈, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留关串,地道東北人。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓杂穷,卻偏偏與公主長得像悍缠,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子耐量,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,513評論 25 707
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫飞蚓、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,029評論 4 62
  • 晚安廊蜒,聽我講個故事趴拧。 已經(jīng)記不起來是在16年11月中旬以后的哪一天,毅然決然地把網(wǎng)名換成了阿貓阿狗山叮,就一直用...
    宋寶木閱讀 960評論 0 0
  • 1 飛燕在如畫的春色里翻騰著榴,時而向空中竄上一丈有余,就停止了作為屁倔,張開了雙翅在成片的稻田上空滑翔脑又,尋覓著往下墜去,...
    郭劼閱讀 553評論 2 4
  • 生活中锐借,大多數(shù)的交流對話過程中问麸,你不果斷回答“是”,或者“不是”钞翔,在你與對話者你一句我一句的過程中严卖,對話者會當(dāng)做你...
    喜妞閱讀 304評論 0 0