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

菜雞程序員都是怎樣寫代碼的?

新聞
每個程序員都要經(jīng)歷“菜雞”這個階段,那么,在菜雞階段,程序員是怎么寫代碼的呢?下面12大瞬間,能否找到你當(dāng)初的影子?

每個程序員都要經(jīng)歷“菜雞”這個階段,那么,在菜雞階段,程序員是怎么寫代碼的呢?下面12大瞬間,能否找到你當(dāng)初的影子?

 

[[281645]]

01命名不規(guī)范

可能不少程序員都會有這樣的經(jīng)歷,寫代碼時靈光乍現(xiàn),為了保證在靈感消逝前敲出更多代碼,敲代碼速度飛快,當(dāng)然命名就顯得很隨意了。

什么樣奇奇怪怪的命名都有:xiaonaigou,ergouzi,xxxx,j1,llst等等,可能過后這些命名連你自己都你完全不知道是什么鬼。

02、日志不規(guī)范

可能有些同學(xué)會問:日志?那是什么東西,能吃嗎?

有不少同學(xué)會忽視日志的重要性,報錯的時候也是選擇在本地改代碼然后直接部署,但是等待出了問題不知道怎么解決的時候,找誰來都會摸不著頭腦。

03、不寫單元測試

確切來說,是不按TDD的方式開發(fā)。

在現(xiàn)在IDE這么強(qiáng)大的情況下,先寫單元測試的習(xí)慣,不僅能夠使得代碼更具嚴(yán)謹(jǐn)性,而且也能夠極大提升效率。

可是很多菜雞理解不了單元測試的價值,直到代碼重構(gòu),需求變更的時候,才欲哭無淚!

4、先集成,再測試,再放棄

很多時候,菜雞在引入第三方的庫,框架,接口或者是服務(wù)的時候,最喜歡的事情就是直接和自己原有的代碼集成在一起。結(jié)果,卻跑不起來了,而且最崩潰的是,根本不知道問題出在哪里。

有經(jīng)驗的程序員會先跑通官方提供的Demo,再想辦法一點一點加上自己的業(yè)務(wù)。

5、沒有理清邏輯,邊做邊猜

前端菜雞在這里的問題特別多,做支付,不清楚支付的流程,分不清楚定義,總以為前端就是處理好借口和數(shù)據(jù)展示。

先把邏輯處理好,弄清楚流程,再去動手才好。

06、不做方案,直接開干

不做方案就意味著做事全憑感覺,而寫代碼時最好的習(xí)慣是先在腦袋里把所有的需求細(xì)節(jié)過一遍,實現(xiàn)細(xì)節(jié)拿出來。

07、不關(guān)注性能

這是新手菜雞很容易犯的錯,什么是性能呢。對后端來說就是TPS和響應(yīng)時間,對前端來說就是響應(yīng)時間。

很多新手菜雞的習(xí)慣就是把東西做出來,然后再做優(yōu)化。但往往是東西做出來了,優(yōu)化留給了別人。

對性能的關(guān)注也是晉升中級程序員最關(guān)鍵的技能點。在寫代碼的時候,有經(jīng)驗的工程師會知道了這個方法這個函數(shù)這個功能點的性能怎么樣,瓶頸在哪里。

08、害怕重構(gòu)

“程序員最大的勇氣就是看自己三個月之前寫的代碼。”這句話一點都不假。其實重構(gòu)并不應(yīng)該是在幾個月之后重構(gòu),最好的方式是實時重構(gòu)。

09、只求做出來,不求最佳實踐

不少菜雞做項目時,硬編碼居多,沒有可擴(kuò)展性,用很丑陋的方式完成了功能。

10、不考慮未來需求的變化

工程師的水準(zhǔn),其實可以分成以下幾個階段:

  • 面向功能編程
  • 面向性能編程
  • 面向未來編程

工程師拿到需求的第一件事,應(yīng)該聚集在以下幾個問題:

  • 第一,哪些需求是我之前完成過的;
  • 第二,哪些需求是有可能變化的;
  • 第三,有幾種方案,分別支持什么樣的需求變化。

但是,菜雞卻永遠(yuǎn)不會考慮這么多,一是因為對業(yè)務(wù)不熟悉,判斷不出來哪些需求可能會產(chǎn)生變化;二是對可選的方案掌握的不多,根本就沒有什么可選的余地;三是沒有這種思維習(xí)慣,分不清楚哪些是現(xiàn)在要完成的,哪些是未來可能會支持或者是變動的。

11、遇到問題不會試錯

這也是新手常見的問題。很多時候新人會遇到問題,解決不了,去找一個有經(jīng)驗的工程師,這個有經(jīng)驗的工程師雖然也沒有遇到過這種情況,但是卻有解決問題的思路,通過試錯很快就跑通了。

其實,解決問題就是一個分析推理的過程。解決問題應(yīng)該是:

  1. 尋找正確的代碼;
  2. 理清楚正確的執(zhí)行順序;
  3. 重現(xiàn)錯誤;
  4. 最小化錯誤產(chǎn)生的場景;
  5. 修改代碼到一個已知的錯誤類型等等等。

12、不做數(shù)據(jù)量的預(yù)估

后端工程師在前期經(jīng)常會忽視數(shù)據(jù)量的大小,沒有形成一個好的習(xí)慣。寫代碼只注重功能,沒有一個關(guān)于數(shù)據(jù)量的概念。

比較好的做法是,程序員要對數(shù)據(jù)很敏感,后端要知道每一個表的規(guī)??赡軙卸啻?,當(dāng)前的系統(tǒng)能支持的數(shù)據(jù)庫表的大小是多大,而前后端都需要知道每一個操作,都分成了哪幾個步驟,每一個步驟花費的時間是多少,大概占用的內(nèi)存是什么樣的。

做到這一點其實并不難,難的是養(yǎng)成這種習(xí)慣,初級工程師眼里看的是功能和代碼,中級工程師眼里看到的是數(shù)據(jù)和時間。

上面這些,你占了幾條呢?敢不敢留言讓大家看看?

責(zé)任編輯:未麗燕 來源: 今日頭條
相關(guān)推薦

2019-08-09 11:10:39

程序員技能開發(fā)者

2013-11-07 09:14:32

程序員項目經(jīng)理

2014-07-09 13:25:58

程序員天賦技能

2020-10-12 08:45:25

程序員技術(shù)開發(fā)

2019-05-15 09:59:24

程序員技能開發(fā)者

2014-03-25 10:35:35

程序員代碼調(diào)試

2017-10-17 12:47:19

2019-12-18 14:14:40

程序員存儲程序

2013-01-22 13:50:11

程序員前端Web

2012-01-04 09:50:07

程序員

2019-04-10 16:17:02

程序員結(jié)構(gòu)源代碼

2017-11-10 12:43:43

整潔代碼開發(fā)程序員

2012-08-07 09:29:09

程序員編程

2015-07-02 11:20:17

程序員代碼

2018-02-26 09:28:42

程序員Bug體驗

2010-01-04 10:07:03

程序員

2009-02-23 13:05:32

程序員學(xué)習(xí)方法

2012-12-03 10:22:24

程序員

2015-09-02 08:54:35

程序員項目經(jīng)理

2021-04-01 16:43:05

代碼可讀性開發(fā)
點贊
收藏

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