优秀程序员和普通程序员都是怎样过完一天的

来源:互联网 发布:winxp连接网络打印机 编辑:程序博客网 时间:2024/05/01 22:15


今天看到论坛有人发了:优秀程序员和普通程序员都是怎样过完一天的 帖子,http://bbs.csdn.net/topics/391928631。


文章中所谓优秀、普通,并不是说技术上、沟通上,而是对自己工作的安排、规划上的。


对于普通的程序员,并没有规划,而是凭自己的当时的想法,来决定要先做什么。

但由于工作中会有很多事情,比如文章提到的:新功能的开发,bug的处理,编写文档,同事间的工作协调,沟通等等。


而优秀的程序员,从工作内容上,没有变化,还是做那么多的工作,但是会考虑工作的安排,文中提到了根据 工作的优先级、重要性、完成工作需要的时间、当前所处的时间段等因素,来决定先完成哪项工作。

比如:从重要性来看,开发新功能比较重要,但是从优先级来说那几个bug是要优先解决的,因为马上就要到期了,而经理要求写的文档,虽然重要性不高,但是由于编写文档需要的时间不长,所以最后按照 处理剩余的bug、编写文档、为下午的项目会议做准备(工作进度、遇到的问题、问了同事并得到了启发)、和同事讨论技术问题并及时记录下来、开发新功能。


文章反复提到了一个思路被打断的问题,回复bug列表时被电话推销员打断,去吃饭时被经理要求编写的技术文档打断,编写新功能时被同事老张打断,当按照老张的指点重新开始编码后又被项目迭代会议打断,会议结束后开始处理几个小bug时,又被同事及自己下班打断了。


所以,可以看出,整个工作就是在被不断的中断的过程中进行的,这让我想起了:

当一个程序在执行时,被各种事件打断,主要是各种IO事件,有系统的,比如时钟中断,也有读取文件导致的中断,每次中断时,作为一个进程,要进行上下文切换context switch,把要执行的下一条指令的位置保存下来,等到中断结束后,自己再次运行时,恢复现场后,从那个位置开始继续执行。


最后总结一下,两点很重要:

1、做好工作的安排,根据优先级、重要性、任务完成需要的时间、当前所处的时间段,还有自己的状态等。

2、工作时,如果被中断了,必须要把当时的思路等及时记录下来,而不只是简单的标记一下当前做到哪儿了。


0 0
原创粉丝点击