Message MVC设计原则

一致性

向上一致性,即保证最终一致性

对于messageMVC来说,保证消息输入输出一致性是最顶层的一致性,从编码角度,是保证controler被正确执行的最终一致性。

向下一致性,即控制反转一致性

ISercice,IFlowMiddleware,IMessageMiddleware,INetTransfer等关键接口实现,都必须保证接口实现的正确性,保证它的下一层调用时的正确性。

配置根一致性

即ConfigurationMenager.root一致,aspnetcore使用这个配置

对象依赖根一致性

即IocHelper.ServiceCollection对象唯一,与aspnetcore相同。

极简主义

简单实现,避免过度设计,允许个性化设计但并不鼓励。

功能独立,拒绝重度设计

比如说zeromq.content的初始化与析构,独立成为一个中间件,不加入更多关联能力,以保证更多范围的使用

流程可丢弃

基于向上一致性,可以适当的丢弃已经越过的流程,比如说httproute便跳过了service的开关流程,不必拘泥

功能可选

应该通过配置文件,简单决定是否使用某一功能,比如说日志中间件,埋点中间件,不得强加于用户。
##独立性
每一个功能组件加入或关闭,不应该改变流程或改变一致性。

简单使用

应该通过use方法简化,尽量做到独立功能一句话实现

开放性

不应该过多因为use方法而使用Internet类,应该提供真正的自由组合,给高级用户真正的自由。

文档清晰

应该完善文档,对项目进行详细说明,不应该让使用者通过猜猜猜来使用框架。

安全性

避免常见的安全隐患,如有,应在文档里详细说明

稳定性与高性能

应该保证组件的高可用性,当出现难以抉择的情况,应该通过配置选项自由开关,并详细说明。

可扩展性

应该允许各种重写和fork,唯一的要求是,可以回馈项目。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值