我之前在百度知道組建團(tuán)隊幫人回答問題的時候炼吴,碰到一個我很感興趣的話題,如何成為一個偷懶又高效的Android開發(fā)人員 就是今天的主題疫衩,問題特別好硅蹦,但當(dāng)時回答的太片面,其實一直都有在思考這個問題的答案闷煤,隨著經(jīng)歷的增長童芹,也有了不同的看法。
人生就是一個不斷接受新的思想而推翻過去的一個過程鲤拿,和軟件開發(fā)一樣假褪,唯一不變的就是變化
先分析分析這問題,不知道有沒有人會覺得很矛盾近顷,或者將他曲解為投機(jī)取巧生音,反正我是這樣理解的
利用先進(jìn)的工具,方法窒升,快速而保質(zhì)保量的完成自己的工作
先從最好理解的“工具”開始講解
工欲善其事必先利其器缀遍,首先,作為android開發(fā)者饱须,我不建議再使用eclipse作為開發(fā)工具域醇,android studio是很好的選擇,有時候選擇比努力重要,身邊有些培訓(xùn)經(jīng)歷的同事告訴我他的培訓(xùn)老師說“真正的大牛是用的記事本編程的”歹苦,我只想說過過嘴癮吹吹牛還是可以的青伤,千萬不要正的聽進(jìn)去,另外呢殴瘦,我也不會純嘴皮子說說狠角,了解到大多數(shù)android開發(fā)者從eclipse轉(zhuǎn)android studio的困難和疑惑后我寫了幾篇關(guān)于android studio方面一些文章,我的文集android studio
熟悉開發(fā)工具很重要蚪腋,很多時候能幫你快速解決一些多而繁瑣的事情丰歌,能夠讓你騰出精力做自己真正想要做的事情
再來講講“方法”
任何事情都必有其規(guī)律可循,了解他屉凯,熟悉它立帖,從而做出聰明的決定,在糊涂的情況人很容易做出愚蠢的決定悠砚,我很欣賞一些做錯事情敢于糾正自己的人晓勇,有個別較為迂腐,明明錯了灌旧,卻一味固執(zhí)己見绑咱,一錯到底,甚至還有一些我將其稱之為小人枢泰,為什么這么說呢描融?不僅不承認(rèn)錯誤,還將做出錯誤決定的后果一味推卸給他人衡蚂,說多了窿克,話題有些跑偏了,我要說的方法是有關(guān)于軟件工程的毛甲。
軟件因需求而存在年叮,因此軟件的生命周期必然和需求息息相關(guān),理解好需求遠(yuǎn)遠(yuǎn)比急著寫代碼重要丽啡,不然你花費精力卻做了一個客戶不需要的產(chǎn)品谋右,這是大家都不想看到的結(jié)局。
如何理解客戶所說的需求呢补箍?其實這方面比較無奈改执,大多數(shù)客戶都不能好好描述自己的需求,作為開發(fā)者只能發(fā)掘和帶一些猜測來實現(xiàn)客戶的需求坑雅,作為開發(fā)者最崩潰的消息就是需求又改了辈挂,我覺得這個問題不能一概而論,存在兩方面裹粤,一是客戶真的要改需求终蒂,還有就是我們壓根就沒有理解客戶真正的需求。
說了那么多無奈,說點我們開發(fā)者力所能及的事情拇泣,做好前期的設(shè)計工作(軟件設(shè)計)和開發(fā)過程中的調(diào)整(代碼重構(gòu))讓自己開發(fā)的軟件趨向完善(滿足需求):
軟件設(shè)計
以夠用為原則噪叙,結(jié)合實際需求設(shè)計軟件,不要上來就寫代碼霉翔,也不要過度設(shè)計(有些需求純粹是自己想出來的)睁蕾,制定一個目前切實可行的方案,在開發(fā)的過程中通過重構(gòu)來逐漸完善债朵。代碼重構(gòu)
優(yōu)化設(shè)計子眶,調(diào)整代碼結(jié)構(gòu)層次,等等序芦,隨著開發(fā)的深入臭杰,對需求的理解也會相對跟深刻,重構(gòu)需要每天做谚中,而不是等到開始的設(shè)計不行的時候再做渴杆,這時候為時已晚。
說說怎么樣快而高質(zhì)量的完成工作
快還不簡單藏杖,復(fù)制粘貼不就行了将塑,想要做什么功能網(wǎng)上都有現(xiàn)成的輪子,如果你要完全這樣想蝌麸,那么,恭喜你艾疟,你的編程水平還處于程序員搬磚級別(碼農(nóng)来吩,和工作時間無關(guān)),為什么我會這樣說蔽莱,這樣的“快”是顯而易見的弟疆,體現(xiàn)在編碼階段,可以省去不少工作量盗冷,但其實開發(fā)只占了軟件生命周期的一小部分(舉一個不恰當(dāng)?shù)睦拥√Γ帽热松⒆樱_發(fā)階段相當(dāng)于生小孩的過程仪糖,而維護(hù)階段相當(dāng)于養(yǎng)小孩的過程柑司,對于目前國內(nèi)許多只開發(fā)不維護(hù)的軟件就像那有人生沒人養(yǎng)的孩子,很容易夭折的)锅劝,真正的快是體現(xiàn)在軟件的維護(hù)階段攒驰,其實代碼重構(gòu)的作用就是讓軟件變得更容易維護(hù)和擴(kuò)展的一個持續(xù)的過程。
說的比較抽象故爵,接下來說細(xì)一點玻粪,怎么讓自己寫的代碼達(dá)到“容易維護(hù)和可擴(kuò)展的”的要求
- 首先,了解軟件的生命周期,深刻理解軟件
- 學(xué)習(xí)設(shè)計模式劲室,幫助理解和解決一些通用的問題和設(shè)計出良好的軟件架構(gòu)
- 理解代碼重構(gòu)的必要性伦仍,重要的事情說三遍(代碼重構(gòu),代碼重構(gòu)很洋,代碼重構(gòu))
- 習(xí)慣閱讀源碼和閱讀別人寫的代碼呢铆,這是程序員提高編程水平的重要途徑,不容忽視蹲缠,很多人覺得這件事情很好理解但做起來很困難棺克,這里說幾句我閱讀源碼的經(jīng)驗“走馬觀花,帶著問題去閱讀”
- 了解嘗試最新的技術(shù)线定,保持初學(xué)者的姿態(tài)娜谊,切不可工作5年卻只有1年的實際工作經(jīng)驗,終身學(xué)習(xí)才能讓自己保鮮
- 珍惜生命斤讥,遠(yuǎn)離無節(jié)操的加班纱皆,尊重生命基本的規(guī)律,吃飯芭商,休息派草,睡覺,運(yùn)動铛楣,陪親人近迁,愛人,孩子簸州,朋友……
- 不要浮躁鉴竭,急于求成,一步一個腳印岸浑,穩(wěn)扎穩(wěn)打
最后帶給還在學(xué)習(xí)中迷茫的同學(xué)一碗雞湯
不要怕自己學(xué)的技術(shù)沒用搏存,只怕自己不會用,不夠用
不要怕比自己先入門的師哥師姐矢洲,你想想后面還有學(xué)弟學(xué)妹呢璧眠?
想想那些比我們優(yōu)秀卻比我們還努力的人,你還有多少時間迷茫和揮霍呢读虏?
人生沒有捷徑责静,努力吧,少年>蚱泰演!
最后
轉(zhuǎn)載請注明原文鏈接