当今时代很多吃瓜群众对程序员的印象都是
而程序员的真实情况却是这样:每天大部分时间都在改代码,写代码,看代码才是我们真实的工作日常,到底每天要写多少行才是好程序员呢?
为了探讨这个问题首先要了解程序员的种类。一般来讲,开发者(指的是纯的写代码,不包括不写代码的项目经理 、技术总监等)主要分为:
1. web工程师:
一般是写基于web的程序,所用语言基本上为Java, PHP或者ASP,如果做winform,C#则是主流。另外设计到数据库 部分,还要写部分的数据库sql语句(基于框架的开发被框架封装好的存储过程除外)。此外,还有前端的编写,涉 及到的语言包括HTML、CSS、以及Javascript等。这类编程工作的主要特点是量大,技术含量相对来说不是很高,入 门槛相对较低。大部分从业者学历相对来说不算顶尖,鲜有名牌大学毕业的从事web编码工作。这类工作对算法和数据结构要求不是太高,代码许多都是大量复制而成,所以一天产生100行以上的代码是比较普遍的。
2.嵌入式工程师
一般都是基于芯片编程,控制硬件,代码浓缩度很高,有时候,整个控制程序也就是几百行代码。而在设计时候需要考虑很多,代码速度一般来说一天能产生20行是不错的了。
3.算法工程师
算法工程师一般都是研究某种算法,然后将它实现。算法设计上每一步都需要仔细推敲时间和空间上的复杂度以及完成效率。编写代码也是如此。这些程序虽然可能 很大,比如一个视频每帧文字的识别程序,但是代码的产出速度可能会更慢。因为在实现前必须有大量的算法分析和设计的活,和代码时间比大概是6:1。所以一 天一般也就产出20行左右。
还有一些其他种类,比如通信工程师、数据库工程师、安全工程师,也都大同小异,在这里不细说了。但是我们可以看到,熟练工种一般都是在一天100行以内这样一个数量级上的。
了解完这些我们来看看国内程序员是怎么说的