程序员要学会偷懒---正确运用自动化技术
2011-04-15 00:41
253 查看
马云语录:
世界是由懒人来支撑的!
懒不是傻懒,如果你想少干,
就要想出懒的方法。
要懒出风格,懒出境界。
McConnell在他的<<Code Complete>>提到三种"懒":"实在的懒","开明的懒"以及"一劳永逸的懒"。并说明第三种"懒"才是最具产值的"懒",因为它需要运用工具或者代码来为自己完成任务:这就是工作中的自动化。<<The
Pragmatic Programmer>>的作者也有专门章节提到"一切都要自动化"。这些都有异曲同工之妙。到底我们的开发工作中有哪些是可以自动化的呢?
凡是需要重复的工作(Routine)都可以想办法做到自动化。第一步,可以将编译及软件发布的工作自动化。这类的流程比较固定,还可以在编译后执行一些检查工作。如果你愿意都可以将写Release Note的动作自动化。第二步,可以将手工容易出错,但判断条件单一的工作自动化。比如多国语言的***以及当前Bug状况检查的动作自动化。
第三步,将测试自动化。对于一些固定的测试用例,或者为新产生的Bug而建的测试用例放置到一个自动化测试脚本中,这样基本可以做到有效的回归测试,对于软件质量将有相当大的帮助。程序员大多对于测试并不热衷,如果有这样一个偷懒的方法,未尝不是件好事。第四步,将编码自动化。至少有些程序是可以这样的。
偷懒的背后是需要自我突破的勇气的,也是一种永不止步的进取精神。如果发现自己不断重复一件事情,或许每次有些小的变化,我们都可以努力建立一个模型或者流程,使它可以自动化。在财务管理中有一个概念叫ABC (Activity based costing),它是强调将工作细化到每个独立的步骤。在软件开发工作中绝大份工作都是遵循一定的流程或模型,只要找到这个不变的内在,就可以想办法加以自动化(或者半自动化)。
而可以用来帮我们做到自动化的工具很多,大部份都在SourceForge中,有空去转转。它们或者有以下一些分类:
代码检查工具:xLint (splint), cyclo
UI自动化工具:AutoIt之类的
强大的脚本工具: Perl, Python
还有一个常在你身边的工具:Microsoft Office.
我经常使用Excel来作公式的验证,我的一个同事也利用Word中的VBA还完成一批文件格式转换的工作。
如果我们可以将工具或自己开发的程序视为自己团队的一员,那我们就不是一个人在工作。让它们忙去吧,我们还有更重要的事做!
参考:
开发工作中使用的软件列表
懒人可以用Automator提高工作效率
使用脚本简化工作
程序员要学会偷懒---正确运用自动化技术
如何使用搜索技巧来成为一名高效的程序员
[《人件》摘录]: 生产力:赢得战役和输掉战争
世界是由懒人来支撑的!
懒不是傻懒,如果你想少干,
就要想出懒的方法。
要懒出风格,懒出境界。
McConnell在他的<<Code Complete>>提到三种"懒":"实在的懒","开明的懒"以及"一劳永逸的懒"。并说明第三种"懒"才是最具产值的"懒",因为它需要运用工具或者代码来为自己完成任务:这就是工作中的自动化。<<The
Pragmatic Programmer>>的作者也有专门章节提到"一切都要自动化"。这些都有异曲同工之妙。到底我们的开发工作中有哪些是可以自动化的呢?
凡是需要重复的工作(Routine)都可以想办法做到自动化。第一步,可以将编译及软件发布的工作自动化。这类的流程比较固定,还可以在编译后执行一些检查工作。如果你愿意都可以将写Release Note的动作自动化。第二步,可以将手工容易出错,但判断条件单一的工作自动化。比如多国语言的***以及当前Bug状况检查的动作自动化。
第三步,将测试自动化。对于一些固定的测试用例,或者为新产生的Bug而建的测试用例放置到一个自动化测试脚本中,这样基本可以做到有效的回归测试,对于软件质量将有相当大的帮助。程序员大多对于测试并不热衷,如果有这样一个偷懒的方法,未尝不是件好事。第四步,将编码自动化。至少有些程序是可以这样的。
偷懒的背后是需要自我突破的勇气的,也是一种永不止步的进取精神。如果发现自己不断重复一件事情,或许每次有些小的变化,我们都可以努力建立一个模型或者流程,使它可以自动化。在财务管理中有一个概念叫ABC (Activity based costing),它是强调将工作细化到每个独立的步骤。在软件开发工作中绝大份工作都是遵循一定的流程或模型,只要找到这个不变的内在,就可以想办法加以自动化(或者半自动化)。
而可以用来帮我们做到自动化的工具很多,大部份都在SourceForge中,有空去转转。它们或者有以下一些分类:
代码检查工具:xLint (splint), cyclo
UI自动化工具:AutoIt之类的
强大的脚本工具: Perl, Python
还有一个常在你身边的工具:Microsoft Office.
我经常使用Excel来作公式的验证,我的一个同事也利用Word中的VBA还完成一批文件格式转换的工作。
如果我们可以将工具或自己开发的程序视为自己团队的一员,那我们就不是一个人在工作。让它们忙去吧,我们还有更重要的事做!
参考:
开发工作中使用的软件列表
懒人可以用Automator提高工作效率
使用脚本简化工作
程序员要学会偷懒---正确运用自动化技术
如何使用搜索技巧来成为一名高效的程序员
[《人件》摘录]: 生产力:赢得战役和输掉战争
相关文章推荐
- 程序员要学会偷懒---正确运用自动化技术
- 程序员要学会偷懒---正确运用自动化技术
- 程序员要学会偷懒---正确运用自动化技术
- 技术|程序员必须要学会Google搜索技巧
- 阿里5年的程序员解读云计算8项核心技术解读,大家看看是不是正确
- 程序员(技术开发)修炼三部曲(单元测试之道、版本控制之道、项目自动化之道)
- 如何正确理解自动化测试技术
- 阿里程序员年薪百W,他是如何运用技术的?
- 转载:如何正确理解自动化测试技术
- 如何正确理解自动化测试技术
- 如何正确运用异步编程技术
- 程序员学会调试 是一门技术
- 【转】中国的程序员普遍技术水平偏低的原因
- 学会怎样尊重一个程序员
- 程序员怎样才能写出一篇好的博客或者技术文章
- 运用 Ajax技术 实现一个局部刷新显示的小例子
- 熟练的java程序员应该掌握的技术
- 如何运用最新的技术提升网页速度和性能
- 来看看反外挂程序员都需要些什么样的技术
- 技术精英谈IT程序员的出路在哪里——很经典