<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Android程序員提高編程效率之九議

Android程序員提高編程效率之九議

作者: 時(shí)間:2017-10-12 來(lái)源:網(wǎng)絡(luò ) 收藏

  作為一個(gè)熱愛(ài)文學(xué)的程序員,我堅信古往今來(lái)最遺憾的戰略就是辛棄疾的《九議》,連辛棄疾的敵人滅亡南宋后都感慨:“使宋果用之,吾安得至此?”。盡管我沒(méi)有帶著(zhù)一大堆種樹(shù)書(shū)穿越回去改寫(xiě)“卻將萬(wàn)字平戎策,換得東家種樹(shù)書(shū)”的歷史的機會(huì ),但我可以為廣大程序員策劃了九條提高編程效率的方案,讓大家在提高編程效率的路上少走幾步彎路。

本文引用地址:http://dyxdggzs.com/article/201710/369934.htm

    

1.jpg

 

  【圖: Studio的界面】

  一、精良的開(kāi)發(fā)工具

  所謂“工(程師)欲善其事,必先利其(編譯)器”,想要提高寫(xiě)代碼的效率,必須先改良自己寫(xiě)代碼的工具,所謂工具包括但不限于可以摸的機械鍵盤(pán)、人體工學(xué)座椅、程序員鼓勵師(好像有什么奇怪的東西混進(jìn)來(lái)了),更重要的是IDE、AVD和VCS等軟件。

  只要不是在特別坑爹的團隊,Android開(kāi)發(fā)的IDE一定是Android Studio,而同樣使用Android Studio的程序員的編程效率的差距就體現在“File->Setting”上,給Android Studio設置大點(diǎn)的字號和柔和點(diǎn)的顏色能給你的眼睛一個(gè)舒服的開(kāi)發(fā)環(huán)境。Android Studio也有豐富的插件,比如,合理利用這些插件能讓你的編程工作事半功倍。

  即使在一個(gè)崗位只有一個(gè)人的小團隊,VCS也是不可或缺的。VCS的意義不止代碼備份和共享那么簡(jiǎn)單,版本分支的管理也離不開(kāi)它。目前最常見(jiàn)的VCS是Git,如果你是一個(gè)懷舊的程序員,也可以選擇SVN。

  二、寫(xiě)代碼之前的準備工作

  在寫(xiě)代碼之前,盡可能排除妨礙編程效率的不穩定因素也是提高編程效率的因素之一。

  開(kāi)始編程之前最重要的準備工作就是和產(chǎn)品經(jīng)理溝通,明確需求,排除不靠譜的需求。如果遇到必須要在需求不靠譜的情況下立即開(kāi)始開(kāi)發(fā)的情況,比如RecyclerView的item左拉既是翻到下一個(gè)tab又是拉開(kāi)右邊“刪除”和“收藏”的抽屜(和iOS保持一致)的操作等不靠譜需求要盡可能拖著(zhù),拖到最后說(shuō)不定就不用做了。

  開(kāi)始編程之前準備工作的第二步就是要準備好一些技術(shù)難題的前期調查和解決方案,比如自動(dòng)填寫(xiě)短信驗證碼如何繞過(guò)權限驗證、利用ThreadPool分批上傳大文件如何斷點(diǎn)續傳等,這些問(wèn)題不要等到開(kāi)始編程的時(shí)候才去想。

  開(kāi)始編程之前最后一項準備工作就是寫(xiě)出偽代碼,不要嫌寫(xiě)兩份幾乎一模一樣的代碼麻煩,不提前發(fā)現自己眼高手低更降低編程效率。

  三、設計模式和架構

  設計模式是一套被反復使用、多數人知曉的、經(jīng)過(guò)分類(lèi)編目的、代碼設計經(jīng)驗的總結,強調的是針對單一問(wèn)題的解決方法。。盡管使用設計模式能提高開(kāi)發(fā)效率,但因為很多設計模式都是犧牲運行性能換取開(kāi)發(fā)效率的,所以必須謹記不要濫用設計模式。

  架構是高層次的針對體系結構的一種設計思路,多種設計模式的合理組合就成了架構。目前Android最流行的架構是MVP,當然小而美的App可以選擇更簡(jiǎn)單的MVC架構,而功能齊全的百科全書(shū)式App則要選擇條理更清晰的MVVM架構。

  四、清晰的注釋

  好的注釋是不一定要長(cháng),但一定要精。一目了然、簡(jiǎn)明扼要的注釋能大大提高明天(或者下個(gè)月,反正是未來(lái)時(shí)間)的編程效率;而不好的注釋卻能讓你維護自己寫(xiě)的爛代碼時(shí)感受到一股跨越時(shí)空的惡意。注釋不是萬(wàn)能的,比如“以下所有left代表右,所有right代表左”的注釋肯定不如把left和right重新定義一遍對編程效率的益處大。

  五、開(kāi)源代碼和第三方服務(wù)

  GitHub上Android的開(kāi)源框架和工具類(lèi)數量?jì)H次于JavaScript,浩如煙海的開(kāi)源代碼不但可以讓程序員的編程效率提高,學(xué)習開(kāi)源代碼的原理和變化更是一個(gè)提高自身能力的過(guò)程。

  很多常見(jiàn)的功能,比如推送、短信驗證碼、第三方登錄、社交分享、LBS、IM、Crash分析、移動(dòng)廣告等都是第三方服務(wù)的用武之地,公司不大到一定規模誰(shuí)也不會(huì )自己搭建IM服務(wù)器吧!第三方SDK魚(yú)龍混雜,有些第三方SDK能讓你三天兩頭遇到莫名其妙的bug,但更多的第三方SDK能助你提高開(kāi)發(fā)的效率。

  六、老代碼的大規模重構

  所謂重構,就是改進(jìn)已經(jīng)寫(xiě)好的軟件的設計。最常見(jiàn)的原因就是隨著(zhù)依賴(lài)的庫的版本的更新,老的代碼變得不合時(shí)宜,比如OkHttp 3.5以后的版本的WebSocket操作就不需要插件實(shí)現了,我們在依賴(lài)OkHttp 3.7的時(shí)候就要改寫(xiě)OkHttp 3.4.1時(shí)候的WebSocket有關(guān)的代碼。

  大規模重構的另一個(gè)原因是前任程序員水平的問(wèn)題,很多“面向百度編程”的程序員離職后交給現任程序員的是一個(gè)千瘡百孔的爛攤子。我見(jiàn)過(guò)同一個(gè)App同時(shí)依賴(lài)Glide和Fresco的情況,因為前任實(shí)現圖片的模糊特效只會(huì )用Fresco,實(shí)現圖片的多點(diǎn)觸摸只會(huì )用Glide。重構這些代碼不僅能解決App臃腫的問(wèn)題,也能提高我們接下來(lái)工作中的編程效率。

  七、培養新人

  在IT社區分享開(kāi)源代碼,是幫助陌生的同行;在團隊里培養新人,是幫助比你工作年限短的同事。不常用的異常解決方案分享給同事,自己的記憶也會(huì )變得越發(fā)深刻;反之如果生怕同事的技術(shù)水平超過(guò)自己而不肯培養新人,那么請牢記這個(gè)典故:外國的希臘火、我國的黑火藥都在不同的歷史時(shí)期多次被“重新發(fā)明”,生怕別人知道,保密保得連自己都忘了。

  培養新人還有一個(gè)好處,就是把簡(jiǎn)單、重復但手生就容易出錯的工作讓新人去坐,既能讓他牢記layout_gravity和gravity的區別,又能給你自己騰出研究如何實(shí)現dex差量替換和gc原理的時(shí)間,是一個(gè)一舉兩得之舉。

  八、保持身體健康

  身體是革命的本錢(qián),好身體是好的工作、學(xué)習狀態(tài)的基礎。程序員是大腦發(fā)達、四肢簡(jiǎn)單的腦力工作者,身體常常處于亞健康狀態(tài),對編程效率有嚴重的負面影響。為了坐在辦公的條件下保證身體健康,我們可以多喝水,既能改善血液循環(huán),又能增加起身上廁所的次數;在屏幕前擺一盆多肉植物,既能吸收讓皮膚變得暗淡油膩的輻射,又能緩解視覺(jué)疲勞。

  九、無(wú)憂(yōu)熊編程法

  所謂無(wú)憂(yōu)熊編程法,就是在辦公桌或者電腦機箱上擺一只憨態(tài)可掬的無(wú)憂(yōu)熊,當你遇到bug或者瓶頸的時(shí)候,你把你的每一行代碼的作用或者每一行logcat的問(wèn)題都和它說(shuō)說(shuō),很可能它就會(huì )發(fā)動(dòng)神奇的技能,讓你一下子恍然大悟。這不是封建迷信,如果你上學(xué)時(shí)候曾經(jīng)是學(xué)霸,你一定有過(guò)這樣的經(jīng)歷:暗戀的女生請教你一個(gè)問(wèn)題,你手舞足蹈給她講解:第一遍她沒(méi)懂,第二遍她沒(méi)懂,第三遍你自己懂了。



關(guān)鍵詞: Android

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>