《卓有成效的程序员》读书笔记1
法则:
1.加速法则
关注本质,而非形式
一个应用程序列表的有用程度与它的长度成反比
程序员的很多时间都浪费在找东西上
华而不实的东西中看不中用
键盘输入总比导航快
首选键盘而非鼠标
地址栏是Windows资源管理器界面中最高效的部分
花点时间来学习你手边的所有隐藏的快捷键
环境切换会消耗时间
成批复制粘贴要比反复多次复制粘贴快
忘记历史就意味着你得再输入一遍
嵌入图形化工具的命令提示符让你鱼与熊掌兼得
在上下文中学习IDE快捷键,而不要去背长长的列表
当你第二次输入一个复杂结构时,将它做成模板
如果要对多行文本做同样的操作,就应该找出其中的模式,并把它记录为一个宏
不要总是重复输入相同的命令
每天花一点点时间来使每一天都更高效
2.专注法则
精力越集中,思维越缜密
排除干扰:隔离策略,关掉不需要的提示,创造安静时间
草堆越大,从中找到一根针就越难
不要问文件树,要搜索
使用多显示器
虚拟桌面可以让原本杂乱无章的一大堆窗口变得整洁
3.自动化法则
不要重新发明轮子
用Selenium浏览网页
不要浪费时间动手去做可以被自动化的事情
用Windows Power Shell替代批处理文件
驯服Subversion命令行
以创造性的方式解决问题,有助于在将来解决类似的问题
是否应该自动化的关键在于投资回报率和缓解风险
研究性的工作应该放在时间盒里做
别给牦牛剪毛
4.规范性法则
对于任何你不自己去构建的东西,只在版本控制中保存一份副本
使用标准的构建服务器
通过复制粘贴来复用是邪恶的,不论你复制粘贴的是什么
利用虚拟平台使项目依赖标准化
不要让对象 - 关系映射工具(O/R映射器)违反规范原则
通过扩展。开放类(open class),或者部分类(partial class) 来为生成的代码增加行为
始终保持代码和数据结构的同步
过时的文档比没有文档更糟,因为它会主动误导你
任何需要费劲创造的东西,都让它的创造者欲罢不能
白板 + 数码相机强过任何CASE工具
尽量生成所有技术文档
重复是软件开发中最大的阻力