InterfaceGenericity refers to the fact that in REST each distributed software component exposes the same interface (or at least the same minimal interface). The advantages of this over each component exposing their own custom interfaces include: (TM)
- generic intermediaries know more about the interactions between any two components than with custom interfaces (TN)
- scales better over time as that interface is more easily guaranteed to stay static (because it is generic) (TQ)
- a small & fixed set of semantics lowers the cost of coordination between uncoordinated actors (reworded a Clay Shirky statement) (TR)
- JB hypothesis: interface complexity and costs are different: (TS)
- MarkBaker alternate hypothesis to above (TV)
- cost of deploying a noun < cost of deploying a verb (TW)
- ApisAreComplexStateMachines (TX)
- others?? (TY)
RoyFielding says that the REST uniform interface constraint requires that all interactions be resource-generic rather than resource-specific, which is to say that a method applied to one resource will have the same semantics as the same method applied to any resource. As such, it is not necesary that the number of methods remain small -- only that they remain universal. Fortunately, there aren't many universal methods. (TZ)