階段總結(jié):我開(kāi)發(fā)Android時(shí)學(xué)會(huì)的那些事兒

引:

周末去電影院看了我等了小半年的<君の名は>锰瘸,感觸良多,總結(jié)來(lái)說(shuō)有三點(diǎn):

1昂灵、因?yàn)槲冶臼切潞U\(chéng)的忠實(shí)粉絲避凝。

2、公司是日企眨补,公司不管是滾鍵盤(pán)的還是忽悠人的管削,都要會(huì)日語(yǔ)。

3撑螺、嘿嘿含思,內(nèi)心蠢蠢欲動(dòng),年少輕狂的我難免喜歡這些文藝愛(ài)情片,嘿嘿含潘。

以我對(duì)電影的評(píng)價(jià)饲做,這部電影質(zhì)量還是很不錯(cuò)的,不知道不考慮情懷問(wèn)題遏弱,國(guó)產(chǎn)的什么時(shí)候能達(dá)到這水平盆均。迷茫臉。

不多說(shuō)漱逸,開(kāi)始正文泪姨。

為什么總結(jié)?

不可否認(rèn)的是饰抒,日本人的行事風(fēng)格是極其死板的肮砾,至少日本那邊來(lái)的同事都是這樣〈樱總結(jié)來(lái)說(shuō)仗处,無(wú)論什么情況,都按規(guī)定來(lái)咒彤,這和我們大部分國(guó)人的“隨遇而安”的風(fēng)格格格不入疆柔。但正是這種死板,使得一切都變的井然有序镶柱,所以我開(kāi)始漸漸的接受了這些死板的文化旷档,甚至愛(ài)上了這種死板。其中歇拆,“總結(jié)”鞋屈,就是死板中的一條。公司每天早上上班都有小組會(huì)議故觅,總結(jié)昨天的情況和今天的安排厂庇;項(xiàng)目開(kāi)始準(zhǔn)備階段,需要總結(jié)項(xiàng)目的工數(shù)输吏、人員权旷、開(kāi)發(fā)文檔;項(xiàng)目結(jié)束贯溅,無(wú)論是開(kāi)發(fā)完成還是客觀原因終止開(kāi)發(fā)拄氯,都必須總結(jié)出對(duì)應(yīng)文檔,詳細(xì)到每一個(gè)class中方法的作用它浅。作為后續(xù)進(jìn)來(lái)的維護(hù)人員译柏,都是一件多幸福的事情,但對(duì)我這種作文檔姐霍,分分鐘有點(diǎn)想跳槽走人的沖動(dòng)鄙麦。當(dāng)然典唇,其實(shí)還有非常多的總結(jié),我就不一一列舉了胯府〗橄危總結(jié)來(lái)說(shuō),因?yàn)橹匾私伲钥偨Y(jié)夜牡,因?yàn)榭偨Y(jié),所以一切都變的井然有序侣签。

總結(jié)哪些塘装?

主要是在開(kāi)發(fā)Android 時(shí),一些小經(jīng)驗(yàn)而已影所。其實(shí)沒(méi)什么的蹦肴,哈哈哈哈哈哈。

總結(jié)開(kāi)始咯猴娩?

嗯阴幌!


一、抽基類(lèi)

特別是Activity及Fragment等卷中,一定要在項(xiàng)目初期創(chuàng)建類(lèi)似"BaseActivity.class"的基類(lèi)矛双。這是為何呢?這還要從我進(jìn)公司接觸的第一個(gè)項(xiàng)目說(shuō)起蟆豫。當(dāng)時(shí)那個(gè)項(xiàng)目需求時(shí)议忽,在App退出到后臺(tái)或者鎖屏,再回到App時(shí)要到解鎖頁(yè)面十减,驗(yàn)證通過(guò)后才可以使用App栈幸,同時(shí),在網(wǎng)絡(luò)請(qǐng)求時(shí)帮辟,還需要驗(yàn)證登陸Token失效問(wèn)題速址,如果失效,要?jiǎng)h除登陸信息由驹,自動(dòng)跳轉(zhuǎn)到登陸Activity芍锚。當(dāng)時(shí)項(xiàng)目分工已經(jīng)明確,各自負(fù)責(zé)各自的Activity等蔓榄,等需要解決這需求的時(shí)候闹炉,很自然的想到解決方法,通過(guò)將Activity的引用放到放到Application中润樱,通過(guò)這個(gè)引用來(lái)跳轉(zhuǎn)Activity(還有另外就是Application中另開(kāi)一個(gè)Activity的棧,但后來(lái)總是會(huì)出莫名其妙的問(wèn)題羡棵,就放棄了)壹若。恩,沒(méi)毛病。但真的要做的時(shí)候店展,發(fā)現(xiàn)了养篓,十幾二十個(gè)Activity需要修改(在onResume()把引用設(shè)置到Application中,在onStop()中取消引用)赂蕴,這一點(diǎn)都不符合我們碼農(nóng)的風(fēng)格柳弄,效率太低!我們一群小年輕沒(méi)人愿意干這中無(wú)聊的Ctrl+C&&Ctrl+V概说,所以當(dāng)時(shí)就悔啊碧注,為什么當(dāng)初沒(méi)有抽個(gè)Activity的基類(lèi),在基類(lèi)中實(shí)現(xiàn)這方法糖赔,我只要繼承它萍丐,就什么都不管不問(wèn)了》诺洌可能這一點(diǎn)你還覺(jué)得沒(méi)什么逝变,但我想說(shuō),凡事看遠(yuǎn)點(diǎn)奋构。

二壳影、謹(jǐn)慎選擇開(kāi)源的庫(kù)

我接手項(xiàng)目的時(shí)候,項(xiàng)目已經(jīng)開(kāi)發(fā)了大概弥臼,已經(jīng)上線給客戶使用了宴咧。當(dāng)時(shí)用“Afinal”解決網(wǎng)絡(luò)請(qǐng)求、數(shù)據(jù)庫(kù)操作等功能醋火。這個(gè)庫(kù)不可謂不強(qiáng)大悠汽,集成了很多,很全面芥驳,但是已經(jīng)至少2年沒(méi)有更新維護(hù)了柿冲,效率和其它新的庫(kù)的相比,從測(cè)試數(shù)據(jù)上對(duì)比兆旬,差距還是挺遠(yuǎn)的了假抄。另外,我想換okHttp作為請(qǐng)求的底層丽猬,這和“Afinal”的網(wǎng)絡(luò)請(qǐng)求模塊又重復(fù)了宿饱,我……所以總結(jié)來(lái)說(shuō),對(duì)開(kāi)源庫(kù)的選擇脚祟,注意這幾點(diǎn):

1谬以、選擇開(kāi)源庫(kù)時(shí),要選擇會(huì)持續(xù)維護(hù)由桌。因?yàn)閹?kù)的問(wèn)題導(dǎo)致App突然在某天無(wú)法正常運(yùn)行为黎,難道你打算自己哭著看源碼邮丰,自己解決?

2铭乾、選擇集成功能單一的剪廉。我還是比較提倡一個(gè)庫(kù)解決一個(gè)需求的,如果像“Afinal“一般炕檩,我想換個(gè)網(wǎng)絡(luò)請(qǐng)求同時(shí)不想提升耦合度斗蒋,那工作量有點(diǎn)大。

3笛质、注意庫(kù)的更新日志泉沾。很多人都和我一樣是版本帝,有更新就更经瓷,沒(méi)有原因爆哑,就是想更,不管是修復(fù)Bug還是刪除方法舆吮。刪除方法什么都倒是還好揭朝,編譯時(shí)會(huì)報(bào)錯(cuò)提示。但是方法邏輯變了色冀,那就不好玩了潭袱,你懂的。

4锋恬、注意庫(kù)的體積屯换。在圖片加載的庫(kù)中,有Glide与学,Picasso彤悔,F(xiàn)resco三個(gè)選項(xiàng)。Google自己推薦Glide索守,但Glide的方法數(shù)實(shí)在的有那么一點(diǎn)點(diǎn)的偏多晕窑,同時(shí),Picasso完全可以完美支撐我們的項(xiàng)目卵佛,毫無(wú)疑問(wèn)杨赤,選擇Picasso!就算我是Google腦殘粉截汪,但是疾牲!在理性面前,還是要學(xué)會(huì)低頭的衙解。

三阳柔、多動(dòng)筆

我講真,不要太自我崇拜蚓峦,自己就是一個(gè)敲鍵盤(pán)的而已盔沫。公司主要是Web端医咨,今年才新成立移動(dòng)開(kāi)發(fā)部門(mén)所以測(cè)試時(shí)的一些case,基本和Web端一樣架诞,只有業(yè)務(wù)邏輯測(cè)試。但Android端不同干茉,一個(gè)App的運(yùn)行谴忧,除了業(yè)務(wù)邏輯問(wèn)題,還有非常多意想不到的異常情況角虫,什么鎖屏沾谓、退后臺(tái)、崩潰等等一系列的case都需要考慮戳鹅。如果這些case你一人通過(guò)腦補(bǔ)就能想到正確的邏輯及解決方法均驶,那我服。但是不能枫虏,那還是乖乖的拿出紙筆妇穴,用流程圖什么的,畫(huà)畫(huà)吧隶债。這帶來(lái)的另一個(gè)好處就是腾它,在出現(xiàn)異常case的時(shí)候,你看你當(dāng)時(shí)畫(huà)的流程圖死讹,能更快的想起當(dāng)時(shí)的解決思路瞒滴,更快的定位到問(wèn)題代碼塊,這比注釋效率更高赞警。

四妓忍、規(guī)范命名

我們都知道注釋的重要性,但光有注釋是遠(yuǎn)遠(yuǎn)不夠的愧旦。我認(rèn)為變量的命名更加重要世剖,一個(gè)正確規(guī)范的命名,能使閱讀代碼的效率以幾何倍數(shù)增長(zhǎng)忘瓦。又說(shuō)回接手的那個(gè)項(xiàng)目搁廓。之前是一個(gè)新手負(fù)責(zé)的,所以命名簡(jiǎn)直是不可描述耕皮,’mList,view,textview……"這些變量名就問(wèn)你怕不怕境蜕,這還不關(guān)鍵,關(guān)鍵是凌停,名字叫“mList”粱年,再看對(duì)象,居然特么的是一個(gè)Json的解析實(shí)體罚拟,當(dāng)時(shí)的我整個(gè)人都斯巴達(dá)了台诗。如果換成"mTaskList,mListView,mLoginTV"完箩,有點(diǎn)經(jīng)驗(yàn)的人都知道表示什么了。除了這個(gè)命名拉队,還有常量弊知。將業(yè)務(wù)中的一些標(biāo)識(shí)等,定義為常量粱快,更直觀秩彤,更高效(為何高效,這就是基礎(chǔ)問(wèn)題了事哭,這里不說(shuō))漫雷。舉個(gè)例子吧,我們規(guī)定鳍咱,字段'type'的值降盹,用'0'代表蘋(píng)果,'1'代表梨谤辜。如果你了解這業(yè)務(wù)蓄坏,你當(dāng)然能明白'0'代表什么,但是每辟,如果你不懂業(yè)務(wù)剑辫,你看到這代碼,你能看懂渠欺?所以我們定義為常量'public static final int TYPE_APPLE = 0;'妹蔽,你如果還不懂,那就是你的問(wèn)題了挠将,嗨8炱瘛!舔稀!

五乳丰、多總結(jié)

為什么呢?從頭看本文章吧内贮。


總結(jié):

扯了這么多有的沒(méi)得产园,總結(jié)來(lái)說(shuō)就是,要學(xué)會(huì)死板點(diǎn)夜郁,但不能真的死什燕。公司的死板我都不想再吐槽了,碼代碼時(shí)竞端,注釋的格式屎即,代碼縮進(jìn),空格數(shù)量,都有明文規(guī)定技俐,不合規(guī)定乘陪,算是Bug,記到你的頭上雕擂,開(kāi)會(huì)集體批斗啡邑。這樣帶來(lái)的好處就是,看代碼時(shí)捂刺,好像就是自己寫(xiě)的一樣谣拣,壞處就是,寫(xiě)個(gè)代碼族展,感覺(jué)比寫(xiě)《三體》都難。所以拔鹰,死板要學(xué)仪缸,但不能真的這么死,要靈活列肢。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末恰画,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子瓷马,更是在濱河造成了極大的恐慌拴还,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,816評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件欧聘,死亡現(xiàn)場(chǎng)離奇詭異片林,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)怀骤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)费封,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人蒋伦,你說(shuō)我怎么就攤上這事弓摘。” “怎么了痕届?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,300評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵韧献,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我研叫,道長(zhǎng)锤窑,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,780評(píng)論 1 285
  • 正文 為了忘掉前任蓝撇,我火速辦了婚禮果复,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘渤昌。我一直安慰自己虽抄,他們只是感情好走搁,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著迈窟,像睡著了一般私植。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上车酣,一...
    開(kāi)封第一講書(shū)人閱讀 50,084評(píng)論 1 291
  • 那天曲稼,我揣著相機(jī)與錄音,去河邊找鬼湖员。 笑死贫悄,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的娘摔。 我是一名探鬼主播窄坦,決...
    沈念sama閱讀 39,151評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼凳寺!你這毒婦竟也來(lái)了鸭津?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,912評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤肠缨,失蹤者是張志新(化名)和其女友劉穎逆趋,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體晒奕,經(jīng)...
    沈念sama閱讀 44,355評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡闻书,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了吴汪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惠窄。...
    茶點(diǎn)故事閱讀 38,809評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖漾橙,靈堂內(nèi)的尸體忽然破棺而出杆融,到底是詐尸還是另有隱情,我是刑警寧澤霜运,帶...
    沈念sama閱讀 34,504評(píng)論 4 334
  • 正文 年R本政府宣布脾歇,位于F島的核電站,受9級(jí)特大地震影響淘捡,放射性物質(zhì)發(fā)生泄漏藕各。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評(píng)論 3 317
  • 文/蒙蒙 一焦除、第九天 我趴在偏房一處隱蔽的房頂上張望激况。 院中可真熱鬧,春花似錦、人聲如沸乌逐。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,882評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)浙踢。三九已至绢慢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間洛波,已是汗流浹背胰舆。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,121評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蹬挤,地道東北人缚窿。 一個(gè)月前我還...
    沈念sama閱讀 46,628評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像焰扳,于是被迫代替她去往敵國(guó)和親滨攻。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評(píng)論 2 351

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