4.3 架构师眼中的产品

本文介绍了架构师在设计产品时如何使其对研发人员友好,强调了严格分层的软件架构、增加抽象层、概念化提炼、配置软件、元件化和脚本以及虚拟化的重要性。通过这些策略,可以提高产品的可维护性和复用性,从而提升整体的软件质量。同时,文章还提及了产品可靠性的关键,包括代码审核、测试用例和内部质量检测模块,以确保产品的长期稳定性和可靠性。
摘要由CSDN通过智能技术生成

前两节描述的所有功能都来源于用户需求,如能实现这些功能,此时已是一款可用的产品了,然而,可用的产品并不一定是好的产品。

产品的“好”有两方面,针对用户和针对研发人员。乔布斯眼中的苹果手机,一根指头改变世界,就是对用户友好性最极致的追求。用户友好型不属于本书讨论内容,我们侧重于如何让产品对研发人员友好。

本书第一章已经描述过许多传统产品研发模式的困局,假设现在我们启动研发过流和变压器差动两款继保设备,有哪些好的策略让我们的产品是对研发人员友好的呢?

1. 严格分层的软件架构:

我们做产品时,看似每个功能都是一个个独立的模块,但如果细细观察,会发现这些模块之间有着数不清的互相调用,而恰恰是这些调用最终导致一个产品的很多模块是混杂在一起的。

此时,经常会出现一种现象:我们增加或修改一些功能时,需要修改多处代码,即使小心翼翼,也容易犯错。我早起工作经历,就经常会面对刚发布的程序就被反馈一堆问题的尴尬。

因此,架构设计首先需要的就是模块之间解耦。为了解耦,可能需要增加一些回调函数,可能需要采取一些程序技巧,但相对于整个架构的清晰,这点小小的代价是非常值得的。

模块和模块总是有一定的调用关系的,解耦并非完全砍断各模块之间的调用,而是梳理他们之间的关系。此时,我们会自然的发现模块会聚集并形成层次结构,一般都是上层调用下层,下层调用上层的较少。

此时,如果能加强层之间的调用关系,仅允许上层调用下层,不允许下层调用上层,好似一些优秀的类库,并不会去调用我们自己写的代码一般,此时,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值