敏捷个人针对的是每个希望进行自我管理的人,在敏捷个人最新电子版敏捷个人-认识自我,管理自我 v0.2
集成了我之前的大部分内容,那么针对与每个程序员,我们应该知道的有哪些呢? 本篇分享一下我们程序员应该知道的12件事情。
-
充满激情
- 喜欢正在做的事情:这也是在如何招到聪明又能做事的人
讲到的要有技术热情,你有热情才会喜欢你的技术
- 有创造力的:创造力体现在你会创新,创新一方面可以来自你的全新创造,也可以来自于他人基础之上,敏捷个人 - 我是这么理解方法论的
中我对方法论的态度就是:不排斥、不迷恋,
积极尝试,为我所用
。
- 想做得最好:内在驱动力,追求卓越的一种价值观
- 比昨天更好:我们很多人其实都希望每天都能感觉到进步,我以前每天都要看书,因为每次看书学到新知识之后我就会感觉有点进步,虽然很小,但是这一直让我觉得很好
-
喜欢你的代码
- 为自己和他人写代码,而差劲的程序员为机器写代码:如果连自己都看不懂的代码就根本不能维护,如果别人看不懂的代码,那就不能交流,而只为机器写代码,那只有一种可能,那你也是机器
- 每个程序员喜欢与干净的代码在一起:很些程序员有代码洁癖,看到不符合代码规范、或写的不好的就会强迫自己去修改,即使没有这么强烈的要求,也会表现出对不干净代码的反感
-
版本管理
- 备份你的代码:现在已经没有人不对自己的代码进行版本管理了
- 追溯更改(who、when、what):从log可以清楚知道谁在什么时候改了什么,这在有时候需要查看历史信息时很重要
- 并行工作:每个人都可以做自己的工作,做好后集成就好了
- 经常提交:一般我们完成一项工作,并通过单元测试后就会提交代码,这是一个好习惯
- 构建失败时不提交:在提交之前编译一下、跑一下单元测试,有问题就不要提交,否则影响整个项目
-
读代码
- 在成为好的写代码的人之前,要学会成为一个好的读代码的人:有人问我如何学习,我就会推荐他们去读一些好代码
- 程序员的工作时间,70%读代码,30%写代码:每天程序员也就写个一两百行代码,大部分时间都在思考和看代码了
-
练习、练习、再练习
- 针对独立的问题进行小练习:把大问题拆成可以独立解决的小问题,针对小问题单独做一些小练习,逐个击破
- 在工作之外的项目中练习:每个人都希望工作都能让自己每天进步,但有时环境并不会这么理想,你可能在做维护项目,或者你做的内容更像例行公事,那么你可以在工作之外的项目进行练习,能结合将来工作需要去练习则是更理想的路径
- 在没有压力尽自己所能去做:适当压力是动力,但是千万不要给自己太大的压力,在压力承受范围内尽力去练习可以获得较好的结果
- 练习成为专家:不断练习,1万个小时之后你就是专家
-
重构
- 在不改变系统行为下改善代码的质量:重构的前提
- 使代码变得容易理解、维护和扩展:重构的目的
- 每次签入时是都比签出时更干净:重构的目标
- 小方法、组合方法......:重构的技术
-
遵守模式和最佳实践
-
TDD/BDD
-
自动化
- 使手工任务自动化
- 命令行是你的朋友
- 持续集成
- 自动部署
-
明白你的领域
-
持续学习
-
善于沟通
你还觉得有哪些应该知道的吗?欢迎补充!
参考: http://www.slideshare.net/samnang.chhun/12-things-every-programmer-should-know
推荐:你可能需要的在线电子书
我的新浪围脖: http://t.sina.com.cn/openexpressapp
分享到:
相关推荐
每个人都想要杠杆。 以更少的努力完成更多的工作。 轻松、轻松地完成需要完成的工作。 假设您有一位私人助理负责您旅行的所有细节,寻找医生,管理您的房子? 使您能够专注于重要的事情——甚至提供您今天无法获得的...
而强大的技术支持却只需要投入数千元即可拥有本系统,它仅是您招聘一个程序员的一个月的薪资。 2、 微软最新.NET技术开发:本系统采用微软最新的.Net 2.0技术 + MSSQL2000(2005)数据库构架和开发的一套强大、实用的...
而强大的技术支持却只需要投入数千元即可拥有本系统,它仅是您招聘一个程序员的一个月的薪资。 2、 微软最新.NET技术开发:本系统采用微软最新的.Net 2.0技术 + MSSQL2000(2005)数据库构架和开发的一套强大、实用的...
例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。结构可以声明构造函数,但它们必须带参数。声明结构的默认(无参数)构造函数是错误的。总是提供默认构造函数以将结构成员初始化为...
第十二章 域 和 属 性 .139 12.1 域 .139 12.2 属 性 .143 12.3 小 结 .146 第十三章 事件和索引指示器 .148 13.1 事 件 .148 13.2 索引指示器 .151 13.3 小 结 .154 第十四章 继 承 .155 14.1 C#的...
Mediator 很象十字路口的红绿灯,每个车辆只需和红绿灯交互就可以. 设计模式之 State(状态) 状态是编程中经常碰到的实例,将状态对象化,设立状态变换器,便可在状态中轻松切换. 设计模式之 Memento(注释状态?) 很...
Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...
Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...
9GUSLauncher - Dev.ForHost 这个项目是从一个开始的,以促进 ... 主要的想法是为每个社区/氏族提供拥有自己的软件的可能性。特征基于论坛/网站凭证的登录系统管理端管理事件、模组集合和用户ArmA 3 启动客户端编辑器,
我想中国有能力写出内核原型的程序员应该也有,但把这个题目写成一本书,感觉上不会有人愿意做这件事情,作者要花很多时间,加上主题比较硬,销售量不会太高,经济上回报有限。 但拿来文稿一看,整个编辑部大为惊艳...
我想中国有能力写出内核原型的程序员应该也有,但把这个题目写成一本书,感觉上不会有人愿意做这件事情,作者要花很多时间,加上主题比较硬,销售量不会太高,经济上回报有限。 但拿来文稿一看,整个编辑部大为惊艳...
每个环节都可能出问题,怎么才能知道哪里出的问题?继续往下读。 3:如何定位错误(重要)分析清楚有哪些环节之后,下一步就是定位到底什么环节出错了。 定位有以下三种办法: A 打印输出,比如java的System....
这个工作不再是简单的读懂几本密码学专著和协议文档那么简单,而是要理解所有这些算法、标准和协议文档的每一个细节,并用你可能很熟悉的C语言字符一个一个去实现这些定义和过程。我们不知道你将需要多少时间来完成...
第9章分析了Vold和Rild,其中Vold负责Android平台中外部存储设备的管理,而Rild负责与射频通信有关的工作。本章的拓展思考部分介绍了嵌入式系统中与存储有关的知识,还探讨了 Rild和Phone设计优化方面的问题。 ...
后来看到一个插 件:txtBrowser,它可以高亮文本文件,而且可以像Word一样将标题大纲显示,这样很方便定位与阅读,这个插件还有很多其他功能,Vimer们 可以试试,而且是国人写的哦,中文帮助文档呢。呵呵。 也许是...
Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端...
Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端...
Blister是一个用于操作苹果二进制PList文件格式的Java开源类库(可用于发送数据给iOS应用程序)。 重复文件检查工具 FindDup.tar FindDup 是一个简单易用的工具,用来检查计算机上重复的文件。 OpenID的Java客户端...