一天写多少行代码才算是好程序员?
點(diǎn)擊查看全文
當(dāng)今時(shí)代很多吃瓜群眾對(duì)程序員的印象都是
而程序員的真實(shí)情況卻是這樣:每天大部分時(shí)間都在改代碼,寫(xiě)代碼,看代碼才是我們真實(shí)的工作日常,到底每天要寫(xiě)多少行才是好程序員呢?
為了探討這個(gè)問(wèn)題首先要了解程序員的種類(lèi)。一般來(lái)講,開(kāi)發(fā)者(指的是純的寫(xiě)代碼,不包括不寫(xiě)代碼的項(xiàng)目經(jīng)理 、技術(shù)總監(jiān)等)主要分為:
1. web工程師:
一般是寫(xiě)基于web的程序,所用語(yǔ)言基本上為Java, PHP或者ASP,如果做winform,C#則是主流。另外設(shè)計(jì)到數(shù)據(jù)庫(kù) 部分,還要寫(xiě)部分的數(shù)據(jù)庫(kù)sql語(yǔ)句(基于框架的開(kāi)發(fā)被框架封裝好的存儲(chǔ)過(guò)程除外)。此外,還有前端的編寫(xiě),涉 及到的語(yǔ)言包括HTML、CSS、以及Javascript等。這類(lèi)編程工作的主要特點(diǎn)是量大,技術(shù)含量相對(duì)來(lái)說(shuō)不是很高,入 門(mén)檻相對(duì)較低。大部分從業(yè)者學(xué)歷相對(duì)來(lái)說(shuō)不算頂尖,鮮有名牌大學(xué)畢業(yè)的從事web編碼工作。這類(lèi)工作對(duì)算法和數(shù)據(jù)結(jié)構(gòu)要求不是太高,代碼許多都是大量復(fù)制而成,所以一天產(chǎn)生100行以上的代碼是比較普遍的。
2.嵌入式工程師
一般都是基于芯片編程,控制硬件,代碼濃縮度很高,有時(shí)候,整個(gè)控制程序也就是幾百行代碼。而在設(shè)計(jì)時(shí)候需要考慮很多,代碼速度一般來(lái)說(shuō)一天能產(chǎn)生20行是不錯(cuò)的了。
3.算法工程師
算法工程師一般都是研究某種算法,然后將它實(shí)現(xiàn)。算法設(shè)計(jì)上每一步都需要仔細(xì)推敲時(shí)間和空間上的復(fù)雜度以及完成效率。編寫(xiě)代碼也是如此。這些程序雖然可能 很大,比如一個(gè)視頻每幀文字的識(shí)別程序,但是代碼的產(chǎn)出速度可能會(huì)更慢。因?yàn)樵趯?shí)現(xiàn)前必須有大量的算法分析和設(shè)計(jì)的活,和代碼時(shí)間比大概是6:1。所以一 天一般也就產(chǎn)出20行左右。
還有一些其他種類(lèi),比如通信工程師、數(shù)據(jù)庫(kù)工程師、安全工程師,也都大同小異,在這里不細(xì)說(shuō)了。但是我們可以看到,熟練工種一般都是在一天100行以?xún)?nèi)這樣一個(gè)數(shù)量級(jí)上的。
了解完這些我們來(lái)看看國(guó)內(nèi)程序員是怎么說(shuō)的
了解了國(guó)內(nèi)在來(lái)看看國(guó)外,作為科技巨頭的之一的 Google,他們的工程師每天能寫(xiě)多少的代碼呢?
近日,Google 的 AdMob 全棧工程師 Raymond Farias 發(fā)表評(píng)論表示:“根據(jù)以往的調(diào)查證明,一名高效的工程師每天能寫(xiě) 100-150 行代碼。”那這樣的數(shù)據(jù)怎么足夠呢?由此,在 Quora 上,Oak Lomonosovas 對(duì) Google 有多少名軟件工程師進(jìn)行了回答, 估計(jì) Google 大約有 4 萬(wàn)名工程師。而在這些工程師中有些人代碼產(chǎn)出量比較少,因?yàn)榧夹g(shù)經(jīng)理或者主管因?yàn)楹芏嗟臅?huì)議或者假期并不會(huì)寫(xiě)太多的代碼,因此,一位工程師 100 行應(yīng)該是更為準(zhǔn)確的猜測(cè)。
說(shuō)了這么些那么到底一個(gè)程序員一天要寫(xiě)多少行代碼呢?
有人回答說(shuō):“平均有20行有效代碼每天,就是世界級(jí)水平了。絕大部分時(shí)間你都在反復(fù)改寫(xiě)、修訂已有代碼。”的確,程序員的編寫(xiě)代碼的速度可能也就如此。而在國(guó)內(nèi)某些公司,對(duì)于一些熟練的程序員,每天100行代碼是才正常的生產(chǎn)率(包括需求分析,設(shè)計(jì),編碼,單元測(cè)試和系統(tǒng)測(cè)試)。
我們來(lái)聊聊~
每天 ,你有多長(zhǎng)時(shí)間是在真的寫(xiě)代碼?
你是在搜索或者復(fù)制粘貼,還是自己動(dòng)手豐衣足食?
代碼的數(shù)量能衡量一個(gè)程序員的水平嗎?
你有沒(méi)有寫(xiě)過(guò)一行抵別人20行的高效代碼?來(lái)講講?
點(diǎn)擊查看全文
總結(jié)
以上是生活随笔為你收集整理的一天写多少行代码才算是好程序员?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 谈移动互联网开发的数据分析和决策思路
- 下一篇: X87 FPU 指令集