1. status 还是 state

在写代码的时候,我经常会用 “状态” 这个字段,但是,看过很多代码之后,就会发现对于 “状态” 这个词有的人用的是 “state”,而有的人用的是 “status”,那么它们有区别吗?可以随便用吗?还是说有特别的场景对应,所以我就找了找,看到了一个不错的解释:

这个描述挺好理解,如果这个 “状态” 是可以进行变更的并且有迁移条件的短暂状态,那么就是 state,通过 state machine 来理解就好多了;而 status 则表示在特定时间,事物所处的状态,例如一项工作从 立项 这个状态 到 完工 这个状态,中间会持续一个可预期的时间,并且一般来说都是有一些潜在的顺序性的。

所以这么说:

What is the status of X? What sort of state is X in?

那么问题来了,http 状态码是 state 还是 status?这又怎么解释?

2. Megabyte 还是 MebiByte

3. Repository 和 Registry

4. Authentication 和 Authorization

5. Search 和 Query

两者都是表示查询的意思,但是一般来说:

6. Fault 和 Failure