Internet 网络层协议设计原则(RFC 1958)

这 10 条原则本是设计网络层协议用的,但我想它们可能对 web 应用的设计同样具有指导意义,因此记录于下(顺序为从最重要到最不重要):

  1. 保证工作。直到确认原型系统可以正常运行,才可以完成设计或确定标准。
  2. 保持简单。有疑问时应该使用最简单的解决方案。即如果一项特性并非绝对必要,就应该被砍掉,尤其当可以通过其他简单特性的组合也可以达到相同效果的时候。(注:也许这里的难点在于确认一套最小功能集)
  3. 明确选择。解决一个问题应当有且只有一种解决方案,这与 Python 的理念相同。
  4. 模块开发。使用栈结构组织功能。
  5. 期望异构性。设计必须通用且灵活,保证兼容性。
  6. 避免静态选项和参数。如果不可避免要使用参数的话,那么最好的办法是让发送和接收方协商一个值,而不是定义静态参数。(注:这一条对 app 的指导意义也许可以转换为,设计对象的时候,请尽可能多地将可配置项添加到参数里,而非使用内部常量)
  7. 寻找好的而不是完美的设计。不必为应对特殊情况而牺牲设计的简单性。特殊情况可以特别处理。
  8. 严格发送,宽容接收。保证自己发出的数据都是严格符合标准的,但在接收时可以尝试对非标准请求进行处理。(注:个人认为这里需谨慎对待,付出额外精力和风险对错误的 api 请求做出正确的相应可能得不偿失)
  9. 考虑可扩展性。即分布式支持。这点还好
  10. 考虑性能和成本。

转载于:https://my.oschina.net/lionets/blog/363305

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值