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

優(yōu)秀程序員壓箱底技能:把復(fù)雜問題變得簡單

新聞
優(yōu)秀的程序員能讓編程變得很簡單。筆者仍然記得在之前的項(xiàng)目中一位技術(shù)架構(gòu)師說過:“軟件開發(fā)人員的作用是讓事情變簡單,他們必須為復(fù)雜的問題提供輕松的解決方案?!?

 本文轉(zhuǎn)載自公眾號(hào)“讀芯術(shù)”(ID:AI_Discovery)

優(yōu)秀的程序員能讓編程變得很簡單。筆者仍然記得在之前的項(xiàng)目中一位技術(shù)架構(gòu)師說過:“軟件開發(fā)人員的作用是讓事情變簡單,他們必須為復(fù)雜的問題提供輕松的解決方案。”

[[350481]]

編程是一門藝術(shù)。筆者在這個(gè)行業(yè)已經(jīng)快五年了,這些年來遇到過許多形形色色的程序員,也從他們身上學(xué)到了很多。本文就將分享筆者五年來從優(yōu)秀程序員身上學(xué)到的經(jīng)驗(yàn)。

1.關(guān)注進(jìn)程而非結(jié)果

大多數(shù)年輕程序員只關(guān)注輸出,但產(chǎn)生輸出并不一定意味著你已經(jīng)了解了程序。在軟件領(lǐng)域,每天都有新的挑戰(zhàn)。了解程序至關(guān)重要,只有這樣你才能用上自己的經(jīng)驗(yàn)解決問題。“開始關(guān)注如何解決問題,而不是應(yīng)該輸出什么。”從長遠(yuǎn)來看,這將引導(dǎo)你成為一名更好的程序員。

2. 避免學(xué)而不思

筆者在剛開始編程時(shí)有一個(gè)習(xí)慣,每當(dāng)陷入困境總是會(huì)向前輩求助。有一天,領(lǐng)導(dǎo)告訴我:“我們都可以幫助你,但不要指望別人什么都告訴你。如果你每次都尋求幫助,是學(xué)不到多少東西的。試著鉆研問題,自己努力一陣子。”

這個(gè)建議對(duì)筆者的程序員職業(yè)生涯幫助很大。當(dāng)被代碼的難關(guān)困住時(shí),不應(yīng)該失去信心,在向他人求助之前先試著自己加倍努力,這將幫助你成為一名出色的程序員。

3.首先要理解自己的代碼

 

正如筆者之前所說,程序員需要為復(fù)雜的問題提供簡單的解決方案,但不需要為了讓人印象深刻而刻意編寫復(fù)雜的代碼。

如果人們?cè)趲滋旎驇讉€(gè)月后再看自己的代碼,他們經(jīng)常會(huì)忘記自己在寫什么。想象一下,如果連他們都很難回憶起自己所寫某段代碼的作用,其他人試圖理解這段代碼豈不是更難以想象?

注釋有助于回憶起一段代碼在應(yīng)用程序中的作用,試著在必要的地方寫一些簡短而有幫助的注解。優(yōu)秀的程序員編寫的代碼往往簡單而有效,對(duì)其他程序員來說也很易讀。

4. 想出多種解決方案

優(yōu)秀的程序員在找到一個(gè)問題的多種解決方案之前絕不會(huì)停止探索,他們總是想出至少兩種方法來解決問題。

這是一種很好的做法,因?yàn)槟憧梢愿鶕?jù)時(shí)空復(fù)雜度和其他因素從多個(gè)解決方案中進(jìn)行選擇。當(dāng)你試圖從不同的角度看待問題,從而找到更多的解決方案時(shí),這種方法還可以增強(qiáng)你的邏輯思維。

即使無法找到多種解決方案,也可以通過諸如Stack Overflow、CodeProject或GitHub等網(wǎng)站尋找替代的方法。

5. 多讀代碼,讀好代碼

“先讀后寫”這句話對(duì)于編程也很適用。閱讀別人的代碼會(huì)給你帶來更多的想法,讓你受益匪淺。優(yōu)秀的程序員會(huì)花相當(dāng)多的時(shí)間進(jìn)行代碼檢查,這有助于他們收集一些東西:

  • 更多的代碼知識(shí)
  • 其他程序員的編碼技能
  • 解決特定問題的不同方法
  • 提高了程序員的邏輯思維

程序員應(yīng)該養(yǎng)成閱讀代碼的習(xí)慣,這有助于他們?cè)诼殬I(yè)生涯中成長。

6. 改進(jìn)之前實(shí)現(xiàn)過的方案

這個(gè)方法是筆者在做程序員的第三年發(fā)現(xiàn)的,筆者看到一位前輩在對(duì)之前的需求做代碼變更,盡管該需求已經(jīng)結(jié)束了。

筆者問他在一切正常的情況下為什么要改變邏輯。他回答道,多年來他已經(jīng)形成了這種做法:每當(dāng)工作負(fù)擔(dān)減輕時(shí),他就試圖找出更好的方法來解決他已經(jīng)解決了的問題。如果他發(fā)現(xiàn)了一個(gè)比已經(jīng)應(yīng)用的解決方案更好的方案,他就會(huì)創(chuàng)建一個(gè)變更請(qǐng)求并更新它。這種做法有助于提高專業(yè)水平,還可以優(yōu)化代碼。

7. 學(xué)無止境,上下求索

一個(gè)優(yōu)秀程序員的最典型的品質(zhì)在于他們對(duì)知識(shí)的不斷探索。編程是一個(gè)充滿挑戰(zhàn)的職業(yè),你需要不斷學(xué)習(xí),與時(shí)俱進(jìn),需要像更新他們的軟件一樣更新自己,以保證代碼的高質(zhì)量。優(yōu)秀的程序員通過大量的在線資源,如技術(shù)博客、YouTube頻道或編碼論壇來實(shí)時(shí)更新自己。

在過去的五年里,這些做法促進(jìn)了作為一名程序員的筆者成長,希望也能對(duì)你有所幫助。

 

責(zé)任編輯:華軒 來源: 讀芯術(shù)
相關(guān)推薦

2009-10-30 09:54:52

Internet接入

2009-11-06 09:56:46

Check Point軟件刀片安全

2009-11-02 17:42:53

2017-11-14 21:30:15

2014-08-29 11:09:44

程序員

2015-03-13 09:45:27

2020-06-05 07:52:25

程序員離職編碼

2019-09-25 11:39:07

程序員編程技術(shù)

2010-11-18 13:50:09

VMware虛擬機(jī)

2012-11-01 13:46:54

程序員

2013-05-31 09:05:47

2018-01-04 12:30:32

程序員第二技能編程

2020-03-09 11:14:25

程序員技術(shù)設(shè)計(jì)

2015-10-12 08:56:37

程序員成長法則

2012-05-25 10:54:24

程序員

2015-06-17 14:24:48

優(yōu)秀程序員整潔代碼

2021-05-29 07:32:14

優(yōu)秀程序員代碼

2020-03-29 08:19:56

程序員代碼

2022-04-18 09:00:00

數(shù)據(jù)庫向量機(jī)器學(xué)習(xí)

2015-07-20 09:21:19

程序員非程序員技能
點(diǎn)贊
收藏

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