App下載

高級(jí)程序員的七個(gè)習(xí)慣,你知道幾個(gè)?

猿友 2017-07-24 18:32:50 瀏覽數(shù) (3000)
反饋

  編程是一項(xiàng)聰明人玩的游戲,它既是對(duì)智力的考驗(yàn),也是對(duì)習(xí)慣的考驗(yàn)。擁有良好的編程習(xí)慣,也意味著你可以在相同或更短的時(shí)間里完成比其他人更多的任務(wù)。


  W3cschool認(rèn)為至少以下7個(gè)習(xí)慣對(duì)于程序員編程生涯是大有裨益的。

  1、理解編程語(yǔ)言的原理

  三流的人才懂應(yīng)用,二流的人才懂開發(fā),一流的人才懂原理。各種語(yǔ)言之間存在著相似的地方,掌握語(yǔ)言的原理是必不可少的。最重要的,讓語(yǔ)言去適應(yīng)項(xiàng)目,反之亦然。

  2、向優(yōu)秀程序員學(xué)習(xí)

  你有一個(gè)蘋果,我也有一個(gè)蘋果,我們交換蘋果,你我還是有一個(gè)蘋果;你有一種思想,我也有一種思想,我們交換思想,你我就有了兩種思想。


  與優(yōu)秀的程序員為伍,你將吸收的最實(shí)用的經(jīng)驗(yàn),這遠(yuǎn)比你一個(gè)人自學(xué)、死磕編程來的快一些。有一句話說到好,與臭棋佬下棋,棋會(huì)越下越臭。不可否認(rèn)這樣一個(gè)事實(shí):和什么樣的人在一起,就有什么樣的格局,就會(huì)有什么樣的人生。

  3、了解數(shù)據(jù)結(jié)構(gòu)和算法

  如果你要成為一個(gè)高效的開發(fā)者,就必須學(xué)會(huì)快速排序、學(xué)會(huì)辨認(rèn)O(n2)程序、學(xué)會(huì)編寫遞歸函數(shù)。


  學(xué)會(huì)多種語(yǔ)言,你便會(huì)更清楚不同的框架是相同問題的是如何解決的。盡可能去了解底層命令(plumbing),以便能夠作出明智的決定(Web框架是怎么存儲(chǔ)session狀態(tài)的?Cookie到底是什么?)。

  4、精通一個(gè)編輯器

  高效開發(fā)者通常是用IDE編輯器嗎?其實(shí)不是的,他們更常用的文本編輯器,因?yàn)檫@樣更會(huì)學(xué)到東西。


  如果使用編輯器選擇通用的Emacs或Vim,自然是最好的。其次,挑選你的首選平臺(tái)最支持的。使用宏,不斷地寫代碼;使用Visual Studio或SublimeText的自動(dòng)補(bǔ)齊功能。

  5、整潔的代碼勝過巧妙的代碼

  如果想讓別人可以輕松讀懂你編寫的代碼,請(qǐng)盡量使用最少的代碼來完成任務(wù)。在編寫代碼過程中,遵循DRY(Don’t repeat yourself)的原則,使用明確定義的對(duì)象和庫(kù),將任務(wù)分解成小而簡(jiǎn)單的代碼段。


  6、掌握代碼調(diào)試技巧

  現(xiàn)如今市場(chǎng)和需求變化相當(dāng)快,項(xiàng)目的周期有時(shí)就會(huì)縮短。一個(gè)月的工作計(jì)劃,會(huì)縮短到2個(gè)星期。項(xiàng)目的壓力難免會(huì)導(dǎo)致程序員的代碼質(zhì)量會(huì)有所下降!


  因此,調(diào)試技巧在這樣的環(huán)境下就顯得尤為重要。高級(jí)程序員會(huì)在函數(shù)的開始和結(jié)束輸出Log,把所有的參數(shù)和返回值打印到日志系統(tǒng),便于追蹤。在解決問題的過程中,使用開發(fā)工具一行一行進(jìn)行調(diào)試,實(shí)時(shí)觀看參數(shù)的變化。

  7、重新回顧代碼

  重新去回顧和審視自己寫過的代碼,通常會(huì)有兩種體驗(yàn),一種是我怎么寫了這么爛的代碼;另外一種則是對(duì)自己寫過的代碼充滿了成就感。回顧代碼有時(shí)可以觸發(fā)我們新的想法,甚至還能對(duì)編碼有一個(gè)更深層次的思考。


  write less,do more,這是程序永遠(yuǎn)的主題。努力培養(yǎng)一些好的習(xí)慣,只要你不斷地朝著那個(gè)方向努力,相信你也會(huì)在這個(gè)努力的過程中得到長(zhǎng)足的進(jìn)步。

0 人點(diǎn)贊