自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

差距在哪里,你與開發(fā)高手的距離有多遠(yuǎn)?

原創(chuàng)
開發(fā)
為什么只有少數(shù)人能成為開發(fā)高手和專家級(jí)程序員?一般程序員與開發(fā)高手的差距在哪里?在我們的調(diào)查中,入門級(jí)程序員與開發(fā)高手給出了不同的答案。

【51CTO觀察】開發(fā)者的技術(shù)成長是個(gè)永恒的話題。最近,51CTO又有一篇與此相關(guān)的文章受到網(wǎng)友們的廣泛關(guān)注——《如何成為一個(gè)專家級(jí)的開發(fā)者》 。文中雖然界定了專家的概念和開發(fā)者成長為專家級(jí)的一般路徑,但卻忽視了一個(gè)問題:為什么只有少數(shù)人能成長為開發(fā)高手和專家級(jí)程序員?一般程序員與開發(fā)高手的差距在哪里?

事實(shí)上,我們一直在關(guān)注這一問題,并就此進(jìn)行了數(shù)月的調(diào)查走訪,受訪的十幾位技術(shù)專家對(duì)此問題的回答有些出乎我們的意料,也與眾多入門級(jí)開發(fā)者所想象的“差距”大不相同。

入門者 說

我們?cè)陂_發(fā)頻道QQ群(50677317)和身邊的一些具有1-2年開發(fā)經(jīng)驗(yàn)的程序員就“你與開發(fā)高手的差距在哪里”的問題進(jìn)行調(diào)查,得到的答案大致可以歸納為以下幾種:

 ◆項(xiàng)目經(jīng)驗(yàn)。多數(shù)入門級(jí)程序員認(rèn)為,大量的項(xiàng)目經(jīng)驗(yàn)是提高自身技術(shù)水平的關(guān)鍵;高手們往往具有更多的項(xiàng)目經(jīng)驗(yàn),解決問題有更廣泛的思路和方法。

 ◆對(duì)語言和平臺(tái)的理解掌握。有相當(dāng)一部分人覺得自己的技術(shù)積累還不夠,很多語法和API并不熟悉,甚至有人還要翻看語法手冊(cè)才能完成一段代碼的編寫。而高手們對(duì)語言和平臺(tái)早已爛熟于心,很多東西都到了“信手拈來”的境界。

 ◆良師高徒。少數(shù)開發(fā)者抱怨沒有高手和主程序員代領(lǐng),無法獲得好的項(xiàng)目實(shí)操技能和指導(dǎo)。而高手們往往一開始就有好的機(jī)遇得到更好的經(jīng)驗(yàn)傳授。

 ◆努力程度。一些開發(fā)者覺得自己不夠努力,很多知識(shí)沒有深入學(xué),很多項(xiàng)目沒有用心做。他們認(rèn)為,高手們的技術(shù)水平與勤奮刻苦的技術(shù)積累有必然的關(guān)系。

這些差距的確存在,且?guī)в幸欢ǖ钠毡樾浴5屑?xì)想來,卻多少有些主觀:同樣的項(xiàng)目,同一個(gè)團(tuán)隊(duì),為什么有人可以獲得更多的經(jīng)驗(yàn)并逐漸成長;同一個(gè)SDK同樣的IDE,為什么高手就可以“信手拈來”;一個(gè)主程代領(lǐng)3-5名程序員,為什么有人會(huì)脫穎而出?這也從另一個(gè)角度印證了新浪微博技術(shù)經(jīng)理?xiàng)钚l(wèi)華所提到的:為什么5%的技術(shù)人員開發(fā)效率是其他95%的20倍?

高手 說

“差距在哪里”的問題在受訪的專家級(jí)開發(fā)高手看來有不一樣的答案。這些答案多是指向技術(shù)內(nèi)涵和開發(fā)者本身。

代碼的“斟”與“酌”

高手在編程效率方面可能并不比普通程序員快多少,因?yàn)樗麄儠?huì)吝嗇自己敲下的每一行代碼。這種“吝嗇”有兩方面的含義,一是項(xiàng)目的架構(gòu)性和整體性考量,二是從性能和優(yōu)化的角度進(jìn)行Coding。其實(shí),這里所映射的是一個(gè)開發(fā)者的技術(shù)視野。

有多位技術(shù)專家強(qiáng)調(diào)項(xiàng)目執(zhí)行時(shí)的全局觀。面對(duì)一個(gè)項(xiàng)目,即使是團(tuán)隊(duì)中的普通一員,也要力求從項(xiàng)目整體架構(gòu)的角度審視開發(fā)需求,對(duì)各個(gè)模塊、接口和通信做最優(yōu)化的預(yù)想和配置。這樣可以從全局審視整個(gè)項(xiàng)目的技術(shù)布局,預(yù)判可能出現(xiàn)的問題。

在確定了整體之后,落實(shí)到具體的模塊實(shí)現(xiàn),每一行代碼不但有上下文的考量與規(guī)劃,還要具備模塊間的整體布局。這是模塊內(nèi)的技術(shù)視野,比如接口的定義、注釋的可讀性、代碼的執(zhí)行效率等。當(dāng)你寫下一行代碼前,要考慮它是否會(huì)對(duì)整個(gè)系統(tǒng)造成影響,是否方便其他接口進(jìn)行調(diào)用,這些都是一個(gè)開發(fā)高手的“技術(shù)潛意識(shí)”。

據(jù)一些經(jīng)常帶領(lǐng)入門級(jí)開發(fā)者的技術(shù)經(jīng)理介紹,多數(shù)人只考慮自己所負(fù)責(zé)的模塊進(jìn)行開發(fā),缺乏一個(gè)全局性的技術(shù)視野和對(duì)代碼性能苛刻的態(tài)度,這樣雖然能按交付日期完成項(xiàng)目,卻對(duì)項(xiàng)目質(zhì)量和開發(fā)者的自我提高有很大阻礙。

喜歡大麻煩

一般開發(fā)者對(duì)工作中的一些技術(shù)問題相當(dāng)排斥,每個(gè)人都希望手里的項(xiàng)目可以順利進(jìn)行,一旦遇到問題就會(huì)有負(fù)面情緒。而我們所看到的一些開發(fā)高手對(duì)待技術(shù)問題則是一種非常積極的態(tài)度。

問題、難點(diǎn)是提高的機(jī)會(huì)。解決一個(gè)問題,能力就提升一點(diǎn);解決一個(gè)大問題,能力就提升一大截。很多技術(shù)高手喜歡大麻煩,如果開發(fā)工作可以順利進(jìn)行當(dāng)然是好事,但沒有難度就沒有高度;高手們會(huì)認(rèn)為沒有技術(shù)挑戰(zhàn)性,很難讓高手們?cè)陧?xiàng)目中發(fā)揮應(yīng)有的激情。

同樣有技術(shù)經(jīng)理反映,用一個(gè)開放的態(tài)度迎接問題、解決問題,這是目前入門級(jí)程序員所缺乏的心態(tài)。“喜歡大麻煩”的態(tài)度也是程序員向開發(fā)高手進(jìn)階的必備心里素質(zhì)。

代碼閱讀者

開發(fā)高手是代碼閱讀者。大多數(shù)技術(shù)專家的代碼閱讀量是普通程序員的百倍,代碼閱讀的時(shí)間比寫代碼的時(shí)間要長得多?!?a target="_blank" >Java編程思想》的作者Bruce Eckel對(duì)閱讀代碼的好處做出兩種說明:

 ◆代碼被閱讀的時(shí)間比寫代碼的時(shí)間要長,這有助于你的代碼被人理解,并改善或者修改其中的Bug。

◆ Code Review是最有成效的改善軟件缺陷的方法,但在我們卻經(jīng)常“沒有時(shí)間來考慮它”。

關(guān)注代碼的可讀性有助于團(tuán)隊(duì)的其他同事幫助你修正技術(shù)問題,而技術(shù)問題的修正可以使你不再犯同樣的錯(cuò)誤。Code Review可以讓你有更高的視角來審視已完成的項(xiàng)目,這樣做,往往能有意外的收獲——你發(fā)現(xiàn)同樣一個(gè)項(xiàng)目,你可以做的更好。

除了自己和團(tuán)隊(duì)中的代碼,高手們還愿意花大量的時(shí)間研究“代碼大全”,從別人的代碼中吸收不同的技術(shù)思想并與自己的技術(shù)風(fēng)格融匯貫通。而普通程序員多數(shù)只閱讀與自己項(xiàng)目相關(guān)的程序代碼,很少分配精力閱讀優(yōu)秀代碼。

其他“差距”

◆參與開源項(xiàng)目。高手們往往都會(huì)參加2-3個(gè)開源項(xiàng)目,從頭到尾完成一個(gè)項(xiàng)目的實(shí)現(xiàn)和后期升級(jí)。開源項(xiàng)目可以與世界各地的優(yōu)秀程序員接觸,協(xié)同完成工作,學(xué)習(xí)和應(yīng)用最前沿的技術(shù);并得到更多人對(duì)你的技術(shù)反饋。

◆技術(shù)探索者。專家級(jí)開發(fā)者往往是技術(shù)探索者和新技術(shù)的布道者。高手們往往對(duì)現(xiàn)有技術(shù)并不滿足(而且經(jīng)常抱怨這些技術(shù)的不足之處),能清晰看到現(xiàn)有技術(shù)的缺陷。與開源社區(qū)的結(jié)合讓高手們有更多機(jī)會(huì)接觸到最前沿的技術(shù)和應(yīng)用理念,這些技術(shù)往往是解決現(xiàn)有技術(shù)缺陷的最佳方案。高手們還會(huì)把新發(fā)現(xiàn)的技術(shù)帶到國內(nèi)加以推廣和應(yīng)用,成為這門新技術(shù)的專家。

與之前入門者的答案想對(duì)比,你是否想到了什么?

技術(shù)與夢想

事實(shí)上,在“高手 說”的部分我們還有一個(gè)答案沒有列出——技術(shù)熱情。雖然受訪的幾位開發(fā)高手給出的答案雖各有側(cè)重,但卻幾乎同時(shí)提到了這一點(diǎn),“要有足夠的技術(shù)熱情”。

多數(shù)程序員只把程序開發(fā)當(dāng)成一份工作,他們?cè)诤跗脚_(tái)的前景、語言的優(yōu)劣、報(bào)酬的高低;他們不愿為一個(gè)技術(shù)點(diǎn)反復(fù)鉆研,不愿為一個(gè)bug精心測試,不愿為自身技術(shù)水平的提高多花時(shí)間。而開發(fā)高手往往具有單純的技術(shù)夢想,愿意為技術(shù)付出自己全部的時(shí)間

歸根結(jié)底,這還是技術(shù)與夢想的話題:你想用技術(shù)成就怎樣的夢想?在你的夢想中,技術(shù)占到幾分?

這個(gè)比例,才是你與開發(fā)高手的真正“差距”,也是你與開發(fā)高手的最大“距離”。

 

【更多關(guān)于程序員成長的話題】

  1. 尋找成為開發(fā)高手的密匙
  2. 充滿荊棘的專家程序員之道
  3. 技術(shù)總監(jiān)談好的程序員如何寫代碼
  4. 架構(gòu)師最怕程序員知道的十件事
責(zé)任編輯:佚名 來源: 51CTO.com
相關(guān)推薦

2017-09-20 13:52:26

新手大牛bug

2010-07-08 09:59:51

企業(yè)級(jí)項(xiàng)目開發(fā)

2021-01-23 23:27:13

人工智能深度學(xué)習(xí)數(shù)據(jù)

2014-07-29 10:49:39

2016-08-03 15:35:14

云計(jì)算云計(jì)算發(fā)展趨勢

2016-07-20 13:08:59

云計(jì)算

2018-01-17 10:01:38

程序員高手菜鳥

2020-09-10 09:30:03

鴻蒙安卓操作系統(tǒng)

2012-03-24 20:31:59

移動(dòng)游戲

2010-11-12 09:00:38

2012-05-10 13:31:48

程序員開發(fā)者

2015-04-08 15:38:17

程序員程序員差距

2014-08-14 09:12:50

2022-02-24 17:32:38

程序員互聯(lián)網(wǎng)公司離職率

2023-09-25 12:32:25

2020-05-27 11:29:29

GDPR數(shù)據(jù)安全數(shù)據(jù)泄露

2012-09-24 01:18:32

程序員androidhtml5

2012-06-14 14:19:17

軟件測試員

2017-06-22 10:39:06

Android開發(fā)者未來

2015-10-09 09:11:39

html5原生App區(qū)別
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)