色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

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

  開(kāi)發(fā)者的技術(shù)成長(zhǎng)是個(gè)永恒的話題。《如何成為一個(gè)專家級(jí)的開(kāi)發(fā)者》文中雖然界定了專家的概念和開(kāi)發(fā)者成長(zhǎng)為專家級(jí)的一般路徑,但卻忽視了一個(gè)問(wèn)題:為什么只有少數(shù)人能成長(zhǎng)為開(kāi)發(fā)高手和專家級(jí)程序員?一般程序員與開(kāi)發(fā)高手的差距在哪里?

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

  入門(mén)者說(shuō)

  我們?cè)谝恍┚哂?-2年開(kāi)發(fā)經(jīng)驗(yàn)的程序員就“你與開(kāi)發(fā)高手的差距在哪里”的問(wèn)題進(jìn)行調(diào)查,得到的答案大致可以歸納為以下幾種:

  • 項(xiàng)目經(jīng)驗(yàn)。多數(shù)入門(mén)級(jí)程序員認(rèn)為,大量的項(xiàng)目經(jīng)驗(yàn)是提高自身技術(shù)水平的關(guān)鍵;高手們往往具有更多的項(xiàng)目經(jīng)驗(yàn),解決問(wèn)題有更廣泛的思路和方法。
  • 對(duì)語(yǔ)言和平臺(tái)的理解掌握。有相當(dāng)一部分人覺(jué)得自己的技術(shù)積累還不夠,很多語(yǔ)法和API并不熟悉,甚至有人還要翻看語(yǔ)法手冊(cè)才能完成一段代碼的編寫(xiě)。而高手們對(duì)語(yǔ)言和平臺(tái)早已爛熟于心,很多東西都到了“信手拈來(lái)”的境界。
  • 良師高徒。少數(shù)開(kāi)發(fā)者抱怨沒(méi)有高手和主程序員代領(lǐng),無(wú)法獲得好的項(xiàng)目實(shí)操技能和指導(dǎo)。而高手們往往一開(kāi)始就有好的機(jī)遇得到更好的經(jīng)驗(yàn)傳授。
  • 努力程度。一些開(kāi)發(fā)者覺(jué)得自己不夠努力,很多知識(shí)沒(méi)有深入學(xué),很多項(xiàng)目沒(méi)有用心做。他們認(rèn)為,高手們的技術(shù)水平與勤奮刻苦的技術(shù)積累有必然的關(guān)系。

  這些差距的確存在,且?guī)в幸欢ǖ钠毡樾浴5屑?xì)想來(lái),卻多少有些主觀:同樣的項(xiàng)目,同一個(gè)團(tuán)隊(duì),為什么有人可以獲得更多的經(jīng)驗(yàn)并逐漸成長(zhǎng);同一個(gè)SDK同樣的IDE,為什么高手就可以“信手拈來(lái)”;一個(gè)主程代領(lǐng)3-5名程序員,為什么有人會(huì)脫穎而出?

  高手說(shuō)

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

  代碼的“斟”與“酌”

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

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

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

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

  喜歡大麻煩

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

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

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

  代碼閱讀者

  開(kāi)發(fā)高手是代碼閱讀者。大多數(shù)技術(shù)專家的代碼閱讀量是普通程序員的百倍,代碼閱讀的時(shí)間比寫(xiě)代碼的時(shí)間要長(zhǎng)得多。《Java編程思想》的作者Bruce Eckel對(duì)閱讀代碼的好處做出兩種說(shuō)明:

  • 代碼被閱讀的時(shí)間比寫(xiě)代碼的時(shí)間要長(zhǎng),這有助于你的代碼被人理解,并改善或者修改其中的Bug。
  • Code Review是最有成效的改善軟件缺陷的方法,但在我們卻經(jīng)常“沒(méi)有時(shí)間來(lái)考慮它”。

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

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

  其他“差距”

  • 參與開(kāi)源項(xiàng)目。高手們往往都會(huì)參加2-3個(gè)開(kāi)源項(xiàng)目,從頭到尾完成一個(gè)項(xiàng)目的實(shí)現(xiàn)和后期升級(jí)。開(kāi)源項(xiàng)目可以與世界各地的優(yōu)秀程序員接觸,協(xié)同完成工作,學(xué)習(xí)和應(yīng)用最前沿的技術(shù);并得到更多人對(duì)你的技術(shù)反饋。
  • 技術(shù)探索者。專家級(jí)開(kāi)發(fā)者往往是技術(shù)探索者和新技術(shù)的布道者。高手們往往對(duì)現(xiàn)有技術(shù)并不滿足(而且經(jīng)常抱怨這些技術(shù)的不足之處),能清晰看到現(xiàn)有技術(shù)的缺陷。與開(kāi)源社區(qū)的結(jié)合讓高手們有更多機(jī)會(huì)接觸到最前沿的技術(shù)和應(yīng)用理念,這些技術(shù)往往是解決現(xiàn)有技術(shù)缺陷的最佳方案。高手們還會(huì)把新發(fā)現(xiàn)的技術(shù)帶到國(guó)內(nèi)加以推廣和應(yīng)用,成為這門(mén)新技術(shù)的專家。

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

  技術(shù)與夢(mèng)想

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

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

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

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

it知識(shí)庫(kù)差距在哪里,你與開(kāi)發(fā)高手的距離有多遠(yuǎn)?,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 祁阳县| 梁山县| 延庆县| 修水县| 东平县| 乐陵市| 伊川县| 垣曲县| 尤溪县| 凉城县| 东宁县| 西贡区| 泽库县| 河东区| 丰宁| 个旧市| 江口县| 阿巴嘎旗| 陵川县| 璧山县| 阿瓦提县| 潞西市| 泽库县| 玉溪市| 牟定县| 黄龙县| 凤翔县| 贵定县| 武冈市| 石泉县| 板桥市| 潞城市| 高碑店市| 富源县| 洛宁县| 定边县| 华安县| 陆丰市| 西城区| 肇州县| 松滋市|