COMO C++ Component Model

COMO作为一项基于C++的构建技术,旨在为C++提供能够应对现代化软件开发环境的能力,为C++解决语言方面存在的一些局限性,其采用的构件化设计新颖而富有价值。

COMO的出色设计:

  1. 构件化设计,其将复杂的系统分解为多个独立的构件,让每个构件可以单独设计、开发与测试,同时替换组件不影响系统的稳定性也不影响其他组件的可用性,达到”高内聚、低耦合“的软件设计要求,配合其提出的AOP面向方面编程支持,将操作与业务逻辑分离,进一步提高了抽象程度,使开发者和使用者不需要关心其他层级的具体内容,专注于接口进行设计开发。

  1. 动态加载与运行时组装:COMO允许在运行时加载新的构件,适合现代系统不停机更新和拓展的需求,更加符合现代分布式系统和微服务架构的特点。

  2. 摒弃了C++中复杂的多继承和虚基类设计,采用其他编程语言中常见的接口设计,这种设计使开发更为简洁,减少了开发者的心智负担。

COMO一些令人疑惑的方面:

  1. COMO目前似乎仍与ElastOS及其工具链有一定的关联,考虑在规范中移除ElastOS相关描述以将其变得更加简洁。

  1. COMO的来源CAR诞生于21世纪初,在那之后Modern C++已经有了很大的发展,考虑使用C++原生特性来实现部分内容,比如COMO的数据类型中CarQuintet可被vector容器取代大部分功能,C++26中也将添加静态反射功能,可考虑迁移至原生实现。

  2. 可考虑将构件化系统与其他系统分离,构件化系统独立成类似于k8s一样的系统,专门管理构件,可能能使COMO的架构更加简洁和清楚。

  3. COMO目前可能缺乏一个包管理器,用于管理适用于COMO的所有构件,包管理器的缺乏也是C++生态的一大缺陷。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值