The Pragmatic Programmer Quick Reference Guide
1.关心你的技艺
Care About Your Craft
如果不在乎能否漂亮地开发出软件,你又为何要耗费生命去开发软件呢?
2.思考!你的工作
Think! About Your Work
关掉自动驾驶仪,接管操作。不断的批评和评估你的工作。
3.提供各种选择,不要找蹩脚的借口
Provide Options,Don't Make Lame Excuses
要提供各种选择,而不是找借口。不要说事情做不到;说明能够做什么。
4.不要容忍破窗户
Don't Live with Broken Windows
当你看到糟糕的设计、错误的决策和糟糕的代码时,修正它们。
5.做变化的催化剂
Be a Catalyst for Change
你不能强迫人民改变,相反,要向他们展示未来可能会怎样,并帮助他们参与对未来的创造。
6.记住大图景
Remember the Big Picture
不要太过专注于细节。。
7.使质量成为需求问题
Make Quanlity a Requirements Issue
让你的用户参与确定项目真正的质量需求
8.定期为你的知识资产投资
Invest Regularly in Your Knowledge Potfolio
让学习成为习惯
9.批判的分析你读到的和听到的
Critically Analyze What You Read and Hear
不要被供应商、媒体炒作、或教条左右。要按照你自己的看法和你的项目的情况去对信息进行分析。
10.It's Both What You Say and the Way You Say It
11.DRY-Don't Repeat Yourself
12.Make It Esay to Reuse
13.Eliminate Effects Between Unrelated Things
14.There Are No Final Decisions
15.Use Tracer Bullets to Find the Target
16.Prototype to Learn
17.Program Close to the Problem Domain
18.Estimate to Avoid Surprises
19.Iterate the Schedule with the Code
用你在进行实现时获得的经验去提炼项目的时间指标。
20.Keep Knowledge with Plain Text
21.Use the Power of Command Shells
22.Use a Single Eidtor Well
23.Always Use Source Code Control
24.Fix the Problem,Not the Blame
25.Don't Panic When Debuging
26."Select" Isn't Broken
bug可能在应用中
27.Don't Assume It -Prove It
28.学习一种文本操作语言
29.Write Code that Writes code
30.you Can not write perfect software
31.design with contracts
32.crash early
33.Use assertions prevent the Impossible
34.Use Exceptions for exceptional problems
35.finish what you start
36.minimize coupling between modules
37.configure,do not integrate
38.put abstractions in code ,details in metadata
39.analyze workflow to improve concurrency
40.Design using services
41.Separate views from modules
42.always design for concurrency
43.use blackboards to coordinate workflow
44.do not program by coincedence
45.estimate the order of you algorithms
46.test your estimates
47.refactor early,refactor often
48.design to test
49.test your software,or you users will
50.dont use wiszrd code you dont understand
51.dont gather requirements-dig for them
52.work with a user to think like a user
53.abstractions live longer than details
54.use a project glossary
55.dont think outside the box -find the box
56.start when you are ready
57.some things are better done than described
58.dont be a slave to formal methods
59.costly tools dont produce better designs
60.organize teams around functionality
61.dont use manual procedures
62.test early,test often,test automatically
63.coding are not done untill all the tests run
64.use saboteurs to test your testing
65.test state coverage,not code coverage
66.find bugs once
67.english is just a programming language
像你编写代码一样编写文档
68.build documentation in, dont bolt it on
69.gently exceed your users's expectations
70.sign your work
The Pragmatic Programmer Quick Reference Guide的更多相关文章
- SlickUpload Quick Start Guide
Quick Start Guide The SlickUpload quick start demonstrates how to install SlickUpload in a new or ex ...
- QUICK START GUIDE
QUICK START GUIDE This page is a guide aimed at helping anyone set up a cheap radio scanner based on ...
- Hibernate Validator 6.0.9.Final - JSR 380 Reference Implementation: Reference Guide
Preface Validating data is a common task that occurs throughout all application layers, from the pre ...
- Spring Boot Reference Guide
Spring Boot Reference Guide Authors Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch, ...
- quick start guide for XMEGA ADC
This is the quick start guide for the Analog to Digital Converter (ADC), with step-by-step instructi ...
- RF《Quick Start Guide》操作总结
这篇文章之所以会给整理出来,是因为学了一个季度的RF后,再去看官网的这个文档,感触破多,最大的感触还是觉得自己走了不少弯路,还有些是学习方法上的弯路.在未查看这类官网文档之前,更多的是看其他各种人的博 ...
- C++ QUICK REFERENCE
C++ string 用法详解 字符串分割(C++) C++ QUICK REFERENCE Matt Mahoney, mmahoney@cs.fit.edu DECLARATIONS enum ...
- Akka Stream文档翻译:Quick Start Guide: Reactive Tweets
Quick Start Guide: Reactive Tweets 快速入门指南: Reactive Tweets (reactive tweets 大概可以理解为“响应式推文”,在此可以测试下GF ...
- RobotFramework 官方demo Quick Start Guide rst配置文件分析
RobotFramework官方demo Quick Start Guide rst配置文件分析 by:授客 QQ:1033553122 博客:http://blog.sina.com.c ...
随机推荐
- 数据库DDL审计
一.为什么需要数据库DDL审计? DDL在生产系统中扮演非常重要的作用. 1)首先从业务角度来说,DDL可能意味着表结构变更,意味着新的版本即将发布,是个重要的时刻. 2)其次从运维角度来说,DDL尤 ...
- SPSS数据分析—生存分析
生存分析是对生存时间进行统计分析的一种技术,所谓生存时间,就是指从某一时间点起到所关心的事件发生的这段时间.这里的时间不一定就是钟表日历上的时间,也有可能是其他的度量单位,比如长度单位等. 生存时间有 ...
- C#基础2
namespace 基础 //定义一个命名空间,为基础 { class Program //定义一个名称为Program的类 { static void Main(string[] args) //这 ...
- html中给表格添加斜线
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- select两个关联的下拉列表
今天用到两个关联的select,整理一下代码,仅供参考 如下: <html> <head> <meta charset="UTF-8"> < ...
- python简介和入门
一.什么是python? python是一种面向对象.解释型的计算机语言,它的特点是语法简洁.优雅.简单易学. 二.解释型语言和编译型语言 编译型语言--就是先把写好的程序翻译成计算机语言然后执行,就 ...
- it转行了
国庆节后毅然的辞职了,辞职的还发生一些不愉快的事情,原来希望好去好来却不慌而散.接着便开始找工作,有过工作经验,找工作是容易些,不像刚毕业那会什么企业都没人要.因为实在是对it没感觉,所以找的都是销售 ...
- TransactionScope oracle不能用的问题(转载)
报错:“无法加载oramts.dll ”的错误 参见文章:关于TransactionScope分布式事务在Oracle下的运作
- mybatis(4)_二级缓存深入_使用第三方ehcache配置二级缓存
增删改对二级缓存的影响 1.增删改也会清空二级缓存 2.对于二级缓存的清空实质上是对value清空为null,key依然存在,并非将Entry<k,v>删除 3.从DB中进行select查 ...
- SSM框架学习之高并发秒杀业务--笔记5-- 并发优化
前几节终于实现了这个高并发秒杀业务,现在问题是如何优化这个业务使其能扛住一定程度的并发量. 一. 优化分析 对于整个业务来说,首先是分析哪些地方会出现高并发,以及哪些地方会影响到了业务的性能.可能会出 ...