编程—休息片刻的好处

http://sd.csdn.net/a/20111108/307130.html原文作者Axel Rauschmayer是一位居住在德国慕尼黑的自由软件工程师。他在这篇博文列举了在编程期间休息片刻的一些好处。

你会更精明而不是更卖力地工作。我曾经为了一个功能的实现而卖力工作过。每天12小时,整整工作了两个星期。我付出了很多努力。那两个星期之后,我休息了一阵,并产生了一些减少很多不必要的工作的想法。

你的思维会变得更清晰。疲劳对于个人的影响就跟他喝醉酒差不多。每天下班的时候,我总是欺骗自己,我将很快完成这件事,以便明天有个新的开始。实际上,通常第二天我经常需要收拾昨天的烂摊子。如果我发现如果能够在编程中间休息一下,我仅仅需要一小部分的时间,就可以完成同样的任务,而且效果更好。

你看代码时会更清晰。如果你想编出高质量的代码,代码审查(包括审查的极端版本,及其结对编程)是无价之宝。如果我写完代码之后把它放上几天的话,我会忘得一干二净,然后用新的思维继续编程。我差不多就是我自己的代码审查者,这让我大大提高了代码的可理解性。

好好对待身体,有助于健脑。不要忘了,后者是前者的一部分,要遵循自然规律。特别是整天对着电脑干活的人,往往过于关注他们的大脑而忽略了身体的其他部分。大脑需要氧气,休息和营养以保持最佳状态,所以你需要顺畅的呼吸,良好的睡眠和适当的饮食。

沟通是另一种学习如何解决问题的方式。你可以把编程当做是正在解决中的一个难题,用最好的工具,技术和代码库来编写你的代码。如果你暂停编码休息一阵,你或许能从一个不同的角度着手处理问题——就问题与其他人进行讨论。不管你是通过面对面交谈、社交网站、邮件、Twitter,或者是其他工具,这都没关系。交换得到的经验,让你不用自己动手编码就能对你的代码有一个全新的了解。在某种程度上,网络搜索是交流的一种单向手段,不过它们已经成为被大众认为是一项独立活动的编程惯例的重要部分。

时间: 2025-01-14 21:35:58

编程—休息片刻的好处的相关文章

一文让你读懂高并发编程的意义及其好处和注意事项

由于多核多线程的CPU的诞生,多线程.高并发的编程越来越受重视和关注.多线程可以给程序带来如下好处.(1)充分利用CPU的资源从上面的CPU的介绍,可以看的出来,现在市面上没有CPU的内核不使用多线程并发制的,特别是服务器还不止一个CPU,如果还是使用单线程的技术做思路,明显就out了.因为程序的基本调度单元是线程,并且一个线程也只能在一个CPU的一个核的一个线程跑,如果你是一个i3的CPU的话,最差也是双核心4线程的运算能力:如果是一个线程的程序的话,那是要浪费3/4的CPU性能:如果设计一个

说一下StoreBoard和纯代码编程各有什么好处吧

首先先说一下,本人是个纯代码党,喜欢敲击的快感!!! 先说一下StoreBoard吧 1StoreBoard 效率高; Auto Layout,做适配很方便; 多语言很方便; 静态TableView,CollectionView极其方便; 最重要的是直观,结构清晰,一目了然! (2)缺点: 不适合团队开发使用;适合大号显示器,尤其是iPad开发! 缺点解决方案: 冲突问题:storyboard一般只是用于展示页面布局,布局不是个经常变动的东西,如果需要 修改,修改的次数也非常的少.一般在团队中专

编程思想:我现在是这样编程的(转)

代码的世界可能是昏天暗地的,但是我们的思维不能这样随之混乱,否则一切都会前功尽弃.所以我现在编写程序的时候,经常会想一下:我要做什么,我在做什么.更好的方法是把详细需求落实到文档,并时刻核对文档. AD: 我在做什么 曾经,我试过接到一些需求.一眼带过后,脑袋马上随着高昂的斗志沉溺在代码的世界中 ,马不停蹄地敲着键盘直到最后测试的完成.我从思绪中恢复过来,乍一看自己写的功能,和需求差了十万八千里,我TM都在干嘛? 除此之外,我还见过类似的很好笑的事情.有一个程序员,经理提了需求,然后他在那里折腾

结对编程-感想

这次大作业采用了结对编程的方式进行开发.我和赵宇航在这次结对编程中fix了绑定的bug以及进行了jmeter的配置和性能测试. 首先,我们通过讨论发现代码是正确的,但是绑定时会提示密码错误,我们思考了很久,突然想到,我们之前在"初始微信"功能开发时,将密码进行了base64加密,所以我们在调用的时候,需要用base64解码之后才可以,于是我们成功的解决了这个问题. 接下来,我们进行了jmeter的配置和学习,进行了简单的性能测试. 通过这次结对编程,我们发现结对编程确实有很多好处. 1

使用libevent进行多线程socket编程demo

最近要对一个用libevent写的C/C++项目进行修改,要改成多线程的,故做了一些学习和研究. libevent是一个用C语言写的开源的一个库.它对socket编程里的epoll/select等功能进行了封装,并且使用了一些设计模式(比如反应堆模式),用事件机制来简化了socket编程.libevent的好处网上有很多,但是初学者往往都看不懂.我打个比方吧,1)假设有N个客户端同时往服务端通过socket写数据,用了libevent之后,你的server程序里就不用再使用epoll或是sele

Day-8: 面对对象编程

面对过程的程序设计方法意在将函数分成子函数,再依次调用这些函数来解决问题. 而面对对象的程序设计方法,来源于自然界,类是实例的抽象,实例是类的具体.自定义出来的对象是类,而所有的数据都可以看成是对象,因此解决问题的方法是靠对象自己处理消息和相互传递消息.使用时,首先考虑的是需要创建什么样的对象,对象中有怎么样的属性,要实现什么功能(成为方法). 面向对象的抽象程度比函数要高,因为一个class中既包含数据,又包含操作数据的方法.其中,数据封装.继承和多态是面向对象的三大特点. 创建类时,clas

[转] 函数式编程初探

诞生50多年之后,函数式编程(functional programming)开始获得越来越多的关注. 不仅最古老的函数式语言Lisp重获青春,而且新的函数式语言层出不穷,比如Erlang.clojure.Scala.F#等等.目前最当红的Python.Ruby.Javascript,对函数式编程的支持都很强,就连老牌的面向对象的Java.面向过程的PHP,都忙不迭地加入对匿名函数的支持.越来越多的迹象表明,函数式编程已经不再是学术界的最爱,开始大踏步地在业界投入实用. 也许继"面向对象编程&qu

<转>Socket编程——基础介绍

最近系统的看了下unix网络编程的一些内容,对socket的理解有了进一步的加深,在看APUE的时候,那会儿看socket上面介绍的比较少,只是模糊的懂了如何去写一个简单的TCP服务端和客户端,对其中一些注意的点,以及实现的原理没有过多的去研究.这是我自己总结的socket编程的第一篇,基本就是介绍一些基础性的东西. 这个只是在IPV4上的一些socket编程,对于IPV6暂不涉及.下面对unix网络编程卷一第三版简称为unpV13e 地址结构 提到地址结构我们一般使用的是最基本的地址结构.IP

结对编程----五子棋游戏

需求分析: 五子棋定义: <五子棋>是一款简单的五子棋小游戏,界面十分干净,而且具有多人作战以及战果记录等功能.五子棋的玩法把自己的棋子在横.竖.斜任意一个方向上连续排满5个就算赢. 五子棋: 功能: 能实现简单的人机对战. 能实现简单的人机对战. 结对编程概述: 定义: 结对编程技术是指两位程序员坐在同一工作台前开发软件.与两位程序员各自独立工作相比,结对编程能编写出质量更高的代码. 概述: 结对编程技术是一个非常简单和直观的概念,能达到事半功倍的工作效果.但是,人与人之间的合作不是一件简单