成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

【IT觀察】Android程序員提高編程效率之九議

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

【51CTO.com原創稿件】作為一個熱愛文學的Android程序員,我堅信古往今來最遺憾的戰略就是辛棄疾的《九議》,連辛棄疾的敵人滅亡南宋后都感慨:“使宋果用之,吾安得至此?”。盡管我沒有帶著一大堆種樹書穿越回去改寫“卻將萬字平戎策,換得東家種樹書”的歷史的機會,但我可以為廣大Android程序員策劃了九條提高編程效率的方案,讓大家在提高編程效率的路上少走幾步彎路。

Android Studio的界面

【圖:Android Studio的界面】

一、精良的開發工具

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

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

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

二、寫代碼之前的準備工作

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

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

開始編程之前準備工作的第二步就是要準備好一些技術難題的前期調查和解決方案,比如自動填寫短信驗證碼如何繞過權限驗證、利用ThreadPool分批上傳大文件如何斷點續傳等,這些問題不要等到開始編程的時候才去想。

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

三、設計模式和架構

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

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

四、清晰的注釋

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

五、開源代碼和第三方服務

GitHub上Android的開源框架和工具類數量僅次于JavaScript,浩如煙海的開源代碼不但可以讓程序員的編程效率提高,學習開源代碼的原理和變化更是一個提高自身能力的過程。

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

六、老代碼的大規模重構

所謂重構,就是改進已經寫好的軟件的設計。最常見的原因就是隨著依賴的庫的版本的更新,老的代碼變得不合時宜,比如OkHttp 3.5以后的版本的WebSocket操作就不需要插件實現了,我們在依賴OkHttp 3.7的時候就要改寫OkHttp 3.4.1時候的WebSocket有關的代碼。

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

七、培養新人

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

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

八、保持身體健康

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

九、無憂熊編程法

 

所謂無憂熊編程法,就是在辦公桌或者電腦機箱上擺一只憨態可掬的無憂熊,當你遇到bug或者瓶頸的時候,你把你的每一行代碼的作用或者每一行logcat的問題都和它說說,很可能它就會發動神奇的技能,讓你一下子恍然大悟。這不是封建迷信,如果你上學時候曾經是學霸,你一定有過這樣的經歷:暗戀的女生請教你一個問題,你手舞足蹈給她講解:第一遍她沒懂,第二遍她沒懂,第三遍你自己懂了。

【51CTO原創稿件,合作站點轉載請注明原文作者和出處為51CTO.com】

責任編輯:何星 來源: 51CTO
相關推薦

2021-03-26 11:52:50

Debug效率運行

2011-09-30 11:13:31

51CTO博客一周熱門程序員

2021-07-19 05:53:32

程序員工作效率效率

2012-07-16 00:51:36

程序員效率

2018-04-02 11:19:20

MacAppleScript代碼

2011-01-28 10:53:18

程序員

2016-04-20 09:39:33

程序員提高開發技能

2025-05-13 00:05:00

CursorMCP工具

2020-12-11 10:00:17

工具代碼Windows

2019-11-27 10:08:36

程序員技能開發者

2014-07-14 11:28:41

2016-06-01 10:38:22

開源程序員編程技能

2012-08-30 10:05:40

編程編程語言程序員

2013-11-14 10:05:25

程序員職業轉型

2017-03-21 09:11:21

Android開發效率TemplateBui

2012-06-21 16:19:30

程序員

2015-11-24 16:33:05

程序員思考分享

2020-06-15 08:01:33

CRUD程序員代碼

2013-05-30 13:30:00

代碼效率程序員

2021-06-02 05:47:32

程序員編程開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一级毛片视频 | 亚洲一区二区在线播放 | 99在线资源 | 欧美一级二级在线观看 | 日韩在线中文 | 亚洲精品视频免费观看 | 国产第一亚洲 | 国产精品自拍视频网站 | 综合五月婷 | 成人免费淫片aa视频免费 | 日日夜夜免费精品视频 | 欧美一区二区免费 | 97精品国产 | 亚洲电影一区二区三区 | 久久久精品国产 | 伊人成人免费视频 | 亚洲欧美在线免费观看 | 日韩中文字幕av | 国产精品国产三级国产aⅴ中文 | 日本福利视频 | 国产成人精品久久二区二区91 | 一级做a爰片性色毛片16美国 | 国产欧美精品区一区二区三区 | 日本视频中文字幕 | 日韩精品一区二区三区视频播放 | 国产精品国产三级国产aⅴ无密码 | 亚洲影音 | 欧美性久久久 | 久久影院一区 | 99视频免费看 | 亚洲综合天堂 | 国产激情精品视频 | 国产一区影院 | 二区在线视频 | 欧美激情一区二区 | 欧美国产一区二区 | 黄色片在线看 | 99免费在线观看视频 | 国产一区二区三区在线 | 黄色精品| 一区二区福利视频 |