代碼編程 請(qǐng)用一句話說明你是程序員?不許寫代碼?
請(qǐng)用一句話說明你是程序員?不許寫代碼?一個(gè)程序員的代碼編寫量,能否決定他的編程水平?永不釋懷如何用一句話激怒程序員?自2003年以來,我們一直在做程序設(shè)計(jì)。一般來說,我們寫的代碼越多,我們需要的代碼就
請(qǐng)用一句話說明你是程序員?不許寫代碼?
一個(gè)程序員的代碼編寫量,能否決定他的編程水平?
永不釋懷
如何用一句話激怒程序員?
自2003年以來,我們一直在做程序設(shè)計(jì)。一般來說,我們寫的代碼越多,我們需要的代碼就越少。
在程序開發(fā)之初,我主要做了功能實(shí)現(xiàn)。負(fù)責(zé)項(xiàng)目設(shè)計(jì)的同事把界面寫得很好,剩下的就是功能實(shí)現(xiàn)。實(shí)現(xiàn)寫功能并不困難。簡單地說,數(shù)據(jù)以固定格式處理后,就可以發(fā)回。在此期間,每天的代碼量相對(duì)較大,平均每天大約有500行。
隨著他們編碼能力的提高,很多代碼重用會(huì)做得更好。在整個(gè)實(shí)現(xiàn)過程中,他們會(huì)采用比較簡單的實(shí)現(xiàn)方法,也懂得如何使用模塊化的開發(fā)模式。通過這個(gè)過程,代碼的數(shù)量在一定程度上減少了,但是思考的時(shí)間變長了,有時(shí)需要一些時(shí)間來驗(yàn)證。在2006年確定自己的主要方向時(shí),代碼量再次下降。因?yàn)楣ぷ髦行囊呀?jīng)從函數(shù)編寫調(diào)整到了一些框架設(shè)計(jì)和算法實(shí)現(xiàn),這段時(shí)間每天的代碼量大約在200行左右,其中很多是編寫接口。在此期間,重點(diǎn)工作是實(shí)現(xiàn)算法,做數(shù)據(jù)分析和建模。在這段時(shí)間里,還使用了Matlab,因此編碼量大大減少,但難度增加了很多。有時(shí)需要一周甚至更長的時(shí)間來完成算法的驗(yàn)證。
2010年之后,我將機(jī)器學(xué)習(xí)和大數(shù)據(jù)添加到我的主要攻擊方向。這時(shí),我每天的代碼量又下降了,平均有100多行。有時(shí)一天可以寫幾十行代碼,對(duì)算法進(jìn)行分析、訓(xùn)練和驗(yàn)證的時(shí)間就變長了。當(dāng)java第一次被使用時(shí),代碼的數(shù)量可能會(huì)更多。后來,當(dāng)使用Python時(shí),代碼量減少了很多。目前,算法的實(shí)現(xiàn)也采用Python。
事實(shí)上,在計(jì)算機(jī)研發(fā)中,編程更像是一種工具。無論使用何種語言,最終的任務(wù)都是實(shí)現(xiàn)功能。編碼量與角色有很大關(guān)系,但與編程水平?jīng)]有直接關(guān)系。當(dāng)然,高級(jí)程序員必須有大量的代碼基礎(chǔ),這是毋庸置疑的。
新手學(xué)C語言編程,一定要先用記事本練習(xí)寫代碼嗎?
“加油!我先下班~“
”你建,我的新電腦內(nèi)存有1 TB
“你能幫我黑XXX QQ嗎?”]“盡快完成,好嗎?”你先得到一個(gè),讓我有一個(gè)參考?!?/p>
”幫我先添加10個(gè)函數(shù),明天,請(qǐng)]“這個(gè)原型還不夠好,你得假設(shè)你是張小龍,你會(huì)怎么構(gòu)思呢?”
喲,我又在寫蟲子了
黑客攻擊用的最短代碼是什么?
不,只有用毛筆在A4紙上練習(xí)才有效
它可能只有幾個(gè)字符長,但它會(huì)使計(jì)算機(jī)耗盡自己的資源,不能做任何其他事情。
每天在公司寫3000行代碼,在行業(yè)內(nèi)是個(gè)什么水平?
3000線。這是不假思索地計(jì)算代碼生成器代碼的結(jié)果。如果你不是在一家外包公司,你就是底層的藍(lán)領(lǐng)軟件工人。當(dāng)然,公司也不小。質(zhì)量代碼,每天100行甚至30行已經(jīng)很好了。
我曾經(jīng)接手一個(gè)項(xiàng)目,由2-30人維護(hù),但在運(yùn)行中仍然存在問題。當(dāng)時(shí)的問題是是否用新的建筑重新開發(fā)。在研究了項(xiàng)目架構(gòu)和代碼之后,我決定優(yōu)化現(xiàn)有的項(xiàng)目,而不是重新開發(fā)它。一個(gè)團(tuán)隊(duì)做了客戶要求的新模塊,我?guī)ьI(lǐng)團(tuán)隊(duì)做了提高穩(wěn)定性和使項(xiàng)目可維護(hù)性的工作。最后,在保持函數(shù)不變的情況下,我將項(xiàng)目的代碼減少到原來的十分之一,性能提高了100倍,數(shù)據(jù)量減少了30%。維修人員減少到5人??蛻舴磻?yīng)好,維修費(fèi)用不變,所以利潤很高。我每天的代碼量相對(duì)于整個(gè)項(xiàng)目是負(fù)的。我以后做的就是每月檢查新代碼,找出不符合規(guī)范的代碼,要求整改,把不聽話的程序員轉(zhuǎn)到開發(fā)團(tuán)隊(duì)做藍(lán)領(lǐng)。我什么時(shí)候才能理解架構(gòu)的規(guī)范和意義,然后考慮培訓(xùn)和改進(jìn)。就像軍訓(xùn)一樣,我們會(huì)在方陣中邁出積極的一步,然后上來打一場硬仗。
要求團(tuán)隊(duì)必須有經(jīng)驗(yàn)并精通體系結(jié)構(gòu)。如果人不多,會(huì)有2-3人。如果人太多,他們就做不到。
當(dāng)你的代碼減少到100行,公司對(duì)你的評(píng)價(jià)還可以時(shí),你就真的是在編程,而不是在砌磚。