如何提升代碼質(zhì)量 為什么總感覺自己寫的代碼不好?
為什么總感覺自己寫的代碼不好?總感覺自己寫的代碼不好,是而自己寫的代碼的質(zhì)量跟別人相也很下來是有是有的差距的,尤其是跟自己優(yōu)秀的人都很起來,或是是說自己的思維沒有別人思考這樣好,所以才才能夠讓自己的代
為什么總感覺自己寫的代碼不好?
總感覺自己寫的代碼不好,是而自己寫的代碼的質(zhì)量跟別人相也很下來是有是有的差距的,尤其是跟自己優(yōu)秀的人都很起來,或是是說自己的思維沒有別人思考這樣好,所以才才能夠讓自己的代碼寫的不好,曾經(jīng)的只是因?yàn)橐环N錯(cuò)覺,也有可能別人覺著你的代碼寫的比他的好。
是不是有些大公司的人寫的代碼也很爛?為什么?
當(dāng)然這就跟在哪兒都有好人和壞人一個(gè)道理,大公司也有能力差的,小公司也有能力強(qiáng)的。具體詳細(xì)到我們互聯(lián)網(wǎng)行業(yè),很多時(shí)候,代碼質(zhì)量并非一個(gè)程序員自己還能夠判斷的。
計(jì)劃看看你是一個(gè)只有10個(gè)人小團(tuán)隊(duì)的軟件公司,老板親自出馬跑業(yè)務(wù)接項(xiàng)目,喝了半個(gè)月白酒這才拉來一單生意,告訴你,這個(gè)app客戶要得很急,從設(shè)計(jì)到房屋交付只有一20天的工期,你們忙不迭地弄吧,客戶尾款打過去我請(qǐng)大家新馬泰過去玩一圈。
后再你和你的兄弟們就結(jié)束不點(diǎn)燈熬油的你加班,加班,加班。
設(shè)計(jì)有缺陷?不引響建議使用就行。
測(cè)試沒沒到位?不影響大在用就行。
代碼不比較美觀?不引響建議使用就行。
這個(gè)下,要求什么代碼質(zhì)量,美觀,簡(jiǎn)潔,不太現(xiàn)實(shí)的東西。不是現(xiàn)實(shí)的是什么?要可以賺錢,要能完成這件事。
他當(dāng)然知道代碼質(zhì)量不行,在某處有隱患,但那又不是當(dāng)務(wù)之急。但,為啥說代碼質(zhì)量好壞不是什么程序員一個(gè)人決定的?只不過整個(gè)軟件開發(fā)流程就并非只有一他一個(gè),也有測(cè)試3,有電腦設(shè)計(jì),有產(chǎn)品經(jīng)理,要是這些人無法出席(小公司測(cè)試無法出席很最常見),代碼質(zhì)量是沒法好過來的。
落得,20天緊趕慢趕房屋交付的軟件,所有的功能都正處于一個(gè)“湊和能用”的狀態(tài),這是小軟件公司的常態(tài)。
這就像,有人要涉水過河,請(qǐng)你出個(gè)解決方案。
方案一:你這個(gè)可以在旁邊撿幾塊爛木板搭在兩岸;方案二:也可以不一遍量好尺寸、排定工期、購買什么材料、調(diào)集人馬來造一座很漂亮結(jié)實(shí)多的大橋。
兩座橋,都能能夠解決問題,甚至連依據(jù)什么場(chǎng)景的不同,都可以不很好的運(yùn)轉(zhuǎn)開去。相對(duì)于客戶,或是在用方來說,這個(gè)橋怎莫造的、用什么材料造的,造得過程如何,這些都不重要的是,最重要的是,我能用。
而是對(duì)修橋的人來說,你是要如何造起一座座橋,該如何有過這個(gè)過程,跟自己的職業(yè)生涯是休戚相關(guān)的。
小公司的程序員,要你經(jīng)常面對(duì)一個(gè)“急速出活”的問題,老板要你快,客戶要你快,所以很多功能上、代碼質(zhì)量上、測(cè)試范圍上就欠確定;
大公司的程序員,很多都處于甲方視角,沒有什么項(xiàng)目周期的壓力,代碼是可以換取很多人的睨視、走讀生和檢查,一些公司測(cè)試人員數(shù)量是開發(fā)人員的兩三倍,另外測(cè)量場(chǎng)景也能夠我得到相當(dāng)充分保證,客觀上做出決定了,他們的代碼質(zhì)量不可能比較低,即便低也沒關(guān)系,一些人、有時(shí)間教你進(jìn)階質(zhì)量。
在你選擇公司的問題上,我一直一貫主張:如果不是有得選,那你第一份工作建議你選去稍大、相對(duì)于正規(guī)的公司。
而且,我在大公司、小公司和不算高規(guī)模公司都待過之后,悟出來一個(gè)道理:
當(dāng)你在小公司,為制度不合算、流程有問題而感覺到煩擾的時(shí)候,要是你沒在大公司待過,你根本不都不知道正規(guī)店的流程和正常的制度是什么樣的。
竟像你上學(xué)的時(shí)候,要是考到一個(gè)稍好的學(xué)校,你遇上好老師、列害的學(xué)長學(xué)姐的概率會(huì)遠(yuǎn)比你在普通地大學(xué)可以讀時(shí)如此之快高,對(duì)不對(duì)?
職場(chǎng)也是同理可知,大公司總會(huì)集中一些行業(yè)大牛,跟他們多外界,會(huì)從根本上修為提升你的業(yè)務(wù)素質(zhì),也有職業(yè)視野。
這些并不是虛的東西,因?yàn)?,這些東西有些時(shí)候比具體一點(diǎn)的工作能力又要用處不大,的要實(shí)在,并且也能會(huì)影響你整個(gè)職業(yè)生涯。人的格局和視野,是很不重要的,可以不做出決定未來幾十年活在哪個(gè)層次上。
說遠(yuǎn)了,扯回來。
說出聲很有可能會(huì)有一個(gè)人我的笑話我,但是其實(shí)我想,我是對(duì)自己從事的工作,論是測(cè)試應(yīng)該寫作,都有一定會(huì)的榮譽(yù)感和責(zé)任感。我覺著有些軟件是沒法崩潰也不能閃退的,而且這種事情一旦發(fā)生,用戶所付出的代價(jià)太大。比如你寫了大半夜的稿件,word突然閃退,windows忽然花屏,就問你暴躁不暴戾?如果不是明天那就是deadline,沒有辦法按照規(guī)定時(shí)間交差,誰來承擔(dān)全部這個(gè)后果?
不寫這里,回身看下剛才一用造大橋來喻指軟件工程,我你的真心感覺現(xiàn)在很多app的代碼質(zhì)量跟大橋徹底肯定不能比。再湊活的大橋,它也肯定不會(huì)動(dòng)不動(dòng)就跨塌吧?但是卻有很多app或者頁面,甚至幾千幾百的并發(fā)訪問都抗不住。你要問為么挨不???是真的那就是程序員能力太差這一個(gè)原因嗎?不,最大的可能會(huì)是,老板沒有給團(tuán)隊(duì)一個(gè)測(cè)試出來的時(shí)間。再急切的程序,只需有足夠的時(shí)間,大多數(shù)都可以不你做到堅(jiān)固的城墻美觀和耐用——得象這座算正常的橋梁一樣的。
道阻且長,大家爭(zhēng)取哇~