偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

五種簡單方法助你輕松提升編碼技能

新聞
我在軟件行業(yè)已經(jīng)工作5年了,既和優(yōu)秀的程序員共事過,也見過許多糟糕的程序員。我們被教育編寫代碼以使程序正常運(yùn)轉(zhuǎn),新手通常非常關(guān)注輸出。如果代碼運(yùn)行良好,他們就會(huì)認(rèn)為事情已經(jīng)完成了,部分人甚至在未來的職業(yè)生涯中養(yǎng)成了這種習(xí)慣。

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

我在軟件行業(yè)已經(jīng)工作5年了,既和優(yōu)秀的程序員共事過,也見過許多糟糕的程序員。我們被教育編寫代碼以使程序正常運(yùn)轉(zhuǎn),新手通常非常關(guān)注輸出。如果代碼運(yùn)行良好,他們就會(huì)認(rèn)為事情已經(jīng)完成了,部分人甚至在未來的職業(yè)生涯中養(yǎng)成了這種習(xí)慣。

[[347256]]

然而,一個(gè)優(yōu)秀程序員所應(yīng)該具有的最重要素質(zhì)之一,就是改進(jìn)自己代碼的能力。本文將討論五種改進(jìn)代碼的技巧,這將幫助新手以及更有經(jīng)驗(yàn)的程序員改進(jìn)他們的編碼。

每個(gè)程序員的編碼方式都不一樣。他們形成了一套自己習(xí)慣的方式來編寫代碼。就像寫字一樣,它是隨著練習(xí)而發(fā)展的,我們需要學(xué)習(xí)如何改進(jìn)這一過程。

把大部分時(shí)間花在分析上

大多數(shù)程序員在查看完需求后就直接開始編碼,這種無知行為在軟件行業(yè)的菜鳥中相當(dāng)普遍。他們通常認(rèn)為編碼是解決方案的主要部分,但事實(shí)并非如此。一位高級(jí)開發(fā)人員曾經(jīng)告訴我:用70%的時(shí)間分析,在剩下的時(shí)間里編碼。

這樣就不必在最后還花時(shí)間修復(fù)故障和優(yōu)化代碼。大多數(shù)人可以通過Google搜索邏輯來編寫代碼,但是一個(gè)真正的程序員知道如何在匆忙進(jìn)行編碼之前進(jìn)行適當(dāng)?shù)姆治觥?/p>

怎么做:

無論何時(shí)處理何事,首先分析現(xiàn)有代碼,運(yùn)行并調(diào)試現(xiàn)有功能。然后必須想出一個(gè)解決方案,在其中可以添加功能而不破壞應(yīng)用程序的現(xiàn)有流程。做到了這一點(diǎn),就可以開始編寫代碼了。

尋找問題的多種解決方案

大多數(shù)程序員都在尋找解決方案。找到之后,他們會(huì)面臨不同的問題。然而,花更多時(shí)間尋找問題的多種解決方案有很多好處:

  • 邏輯思維將隨著時(shí)間而增強(qiáng)
  • 可以從多個(gè)備選方案中選擇最佳解決方案
  • 解決問題的方法將有所改進(jìn)

這種方法將幫助你形成編程后期所需的批判性思維。優(yōu)秀的程序員應(yīng)提供多種解決方案,以便可以根據(jù)速度、內(nèi)存和其他因素選擇最佳方案。

怎么做:

如果無法找到多個(gè)解決方案,可以上網(wǎng)搜索。在StackOverflow和CodeProject等平臺(tái)上,肯定能找到解決問題的替代方法。這樣,你就會(huì)慢慢養(yǎng)成針對(duì)單個(gè)問題尋找更多解決方案的習(xí)慣。

不要只關(guān)注自己的事

至少對(duì)編碼來說確實(shí)如此,你應(yīng)該嘗試定期閱讀其他人的代碼。

正如我所說,每個(gè)人都有獨(dú)特的編碼風(fēng)格。閱讀其他人的代碼將為我們提供更多有益的啟發(fā)。通過閱讀項(xiàng)目團(tuán)隊(duì)中其他開發(fā)人員的代碼,我學(xué)到了很多東西。這也將幫助你了解全局。如果一直自己編寫代碼,那么將不熟悉應(yīng)用程序的其他部分。

怎么做:

一旦完成自己的工作,就開始閱讀其他開發(fā)人員提交的代碼。這將有助于了解他們的思考過程,并進(jìn)一步了解產(chǎn)品。

測(cè)試耐心

單元測(cè)試比大多數(shù)開發(fā)人員意識(shí)到的更加重要。程序員認(rèn)為單元測(cè)試的主要目的是覆蓋代碼,但事實(shí)并非如此。單元測(cè)試可刪除不需要的代碼行,改進(jìn)代碼和程序的整體應(yīng)用性能。

怎么做:

堅(jiān)持為模塊編寫單元測(cè)試用例。努力實(shí)現(xiàn)高達(dá)90%的代碼覆蓋率,并在此過程中刪除不必要的部分。盡量與其他開發(fā)人員討論方案,以免錯(cuò)過任何重要的內(nèi)容。

在更新代碼之前自我充電

如果不了解最新的技術(shù)功能,那么如何確保自己的代碼是最新的呢?大多數(shù)軟件會(huì)隨著時(shí)間的流逝而消亡,正是因?yàn)殚_發(fā)人員忽略了更新代碼以進(jìn)行優(yōu)化。例如下面的C#代碼:

 

  1. // Old approachIf (sampleObject != null
  2.     If (sampleObject.result != null
  3.     { 
  4.        string result =sampleObject.result; 
  5.     } 
  6. // New approachIf (sampleObject != null
  7.     string result = sampleObject?.result; 

 

在舊方法中,首先檢查對(duì)象是否為null,然后檢查該對(duì)象中的特定值是否可用。之后,我們才將該值分配給變量。

在新方法中,使用6.0版中引入的新C#功能。這樣可以直接查詢對(duì)象的屬性。并且在屬性為null的情況下,它不會(huì)引發(fā)null引用異常,而是返回null值。

怎么做:

關(guān)注科技博客,閱讀關(guān)于新功能的文章,并在項(xiàng)目中使用它們。如果可能的話,也嘗試在工作項(xiàng)目中應(yīng)用它們。這有助于自我提升,同時(shí)維持代碼的健康和更新。

不要僅僅滿足于找到解決方案,優(yōu)秀程序員的目標(biāo)是——尋找最優(yōu)解。

 

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

2025-03-06 00:30:55

2011-05-18 13:37:26

LINQ

2022-12-29 07:33:44

Strace故障排除

2011-03-02 10:01:15

2020-06-03 11:26:05

算法移動(dòng)設(shè)技術(shù)

2009-09-08 10:37:57

C#遍歷CheckBo

2023-07-11 09:24:11

2010-08-06 13:23:58

NFS配置

2010-07-20 14:07:31

更改TELNET端口

2010-06-08 17:46:31

OpenSUSE安裝

2023-08-11 11:29:48

物聯(lián)網(wǎng)制造業(yè)

2019-07-05 09:45:19

UbuntuLinux釋放空間

2021-06-02 09:24:48

Apple ID密碼iCloud

2017-07-05 15:03:48

混合云

2023-07-21 08:00:00

API數(shù)字世界

2025-05-21 04:00:00

JavaScript前端

2020-06-17 08:12:05

Kubernetes容器

2016-04-07 09:33:41

Linux系統(tǒng)恢復(fù)應(yīng)用

2015-06-09 09:20:24

2023-09-07 19:14:05

點(diǎn)贊
收藏

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