软件复用问题之如果待复用的组件是需要新建的,应该如何解决

简介: 软件复用问题之如果待复用的组件是需要新建的,应该如何解决

问题一:如果待复用的组件是需要新建的,应该如何决策?


如果待复用的组件是需要新建的,应该如何决策?


参考回答:

可以计算出后续集成节约的人力成本,以及中长期组织通过复用组件获取的整体收益。通过结合复用成本、复用收益、当前组织人力现状、后续业务进行最终的决策。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/621697



问题二:在哪些情况下,我们可能会考虑复用组件?


在哪些情况下,我们可能会考虑复用组件?


参考回答:

当业务逻辑非常专业时,如Json序列化或加解密;当发现相同或相似的业务语义代码在多个地方出现时,需要进行重构;当可选的复用组件文档全面且易于接入、拓展、替换或移除时;当业务逻辑频繁变更,且每次变更需要同时修改多个系统或模块以保持同步时;以及当需要即时共享对不一致性容忍度较低的业务逻辑单元时。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/621698



问题三:在什么情况下我们可能不需要复用组件?


在什么情况下我们可能不需要复用组件?


参考回答:

可能无需复用组件的情况包括:没有文档或文档质量较差;重复造一个组件不太难,同时维护成本较低;只使用了可复用组件所有功能里的很少一点逻辑;需要花费大量时间去了解可复用组件的设计思路;在拓展新功能时,需要投入大量精力去协同推进;集成时的适配或拓展代码比单独重写该组件的代码还要多;可复用组件是整个应用的核心,且后续业务发展迅速有较多的定制需求;产品文档或系统设计中承诺了太多的功能;如果决策时觉得可用可不用。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/621699



问题四:事中缓释阶段主要包括哪些要点?


事中缓释阶段主要包括哪些要点?


参考回答:

事中缓释阶段主要包括三个要点:高内聚低耦合的设计原则,进行全面的单元测试和回归测试,以及提供完整且有效的文档。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/621700



问题五:什么是高内聚低耦合?


什么是高内聚低耦合?


参考回答:

高内聚低耦合是软件工程中的一个设计原则。高内聚指的是模块内部元素之间联系紧密,低耦合则指的是模块之间的相互依赖程度低。这样的设计有助于提高代码的可读性、可维护性和可迁移性。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/621701

相关文章
|
消息中间件 缓存 监控
系统稳定性建设实践总结
2020年,注定是个不平凡的一年。疫情的蔓延打乱了大家既定的原有的计划,同时也催生了一些在线业务办理能力的应用诉求,作为技术同学,需要在短时间内快速支持建设系统能力并保障其运行系统稳定性。恰逢年终月份,正好梳理总结下自己的系统稳定性建设经验和思考。
系统稳定性建设实践总结
|
人工智能 架构师 NoSQL
24岁程序媛,二战考研失利、三无人员 ==> 最佳新人、优秀个人,讲讲我的技术成长之路
能力、格局、谋略、远见、耐心。灵魂的欲望是命运的先知,希望永远自信、洒脱、松弛、明媚、张扬;追随自己的内心、以喜欢的方式、往正确的方向前行,永远在路上,我甘之如饴! 持续精进Java领域相关技术,包括微服务、高并发、高可用、分布式、集群等等;希望能接触到更多更大的优质项目,逐渐成长为一名具备全栈思维的架构师,既能深入理解底层技术,又能把控全局架构;抽时间了解学习Go语言、人工智能、大模型等领域。 在探索中明晰后续的发展方向,形成自己的一套体系,成为主管、管理层乃至更高,不希望自己的上限只是程序员。
|
11月前
|
运维 安全 专有云
阿里云身份安全与密评合规实践分享
本次分享由阿里云智能集团高级安全产品专家易鑫和九州云腾安全产品专家杨念念主讲,聚焦云上密码服务助力企业密评合规及阿里ADAS在企业上云过程中的身份安全管理。
603 7
|
安全 项目管理
「技术人生」第9篇:如何设定业务目标
本文将讲述如何设定业务目标的所有步骤和关键信息,很多点没有展开论述,读者可以结合个人实际工作情况进行进一步的深入思考。
1275 94
「技术人生」第9篇:如何设定业务目标
|
计算机视觉 Python
Python中Pillow库的常见用法和代码示例
Pillow是Python中广泛使用的图像处理库,支持丰富的图像操作功能,包括但不限于打开、保存、缩放、裁剪、旋转、调色等。本文通过一系列示例介绍Pillow的基本用法,涵盖图像的加载与显示、尺寸调整、裁剪与旋转、亮度调整、格式转换、滤镜应用、图像合成及像素级操作等。首先需通过`pip install pillow`安装库,随后可通过导入`PIL.Image`等模块开始图像处理任务。无论是初学者还是进阶用户,都能从Pillow提供的强大功能中获益。
599 0
|
设计模式 存储 算法
《设计模式:可复用面向对象软件的基础(典藏版)》
本书是埃里克·伽玛著作,涵盖180个笔记,主要介绍面向对象设计模式,包括MVC、设计模式编目、组织编目、实现描述、复用机制、运行时与编译时结构关联、设计支持变化等方面。书中详细解释了23种设计模式,如Abstract Factory、Adapter、Bridge、Builder等,按创建型、结构型、行为型分类,旨在提高软件可复用性和灵活性。
1066 0
《设计模式:可复用面向对象软件的基础(典藏版)》
|
NoSQL Java 关系型数据库
这个评论系统设计碉堡了
先赞后看,南哥助你Java进阶一大半官网给出了Facebook评论系统的高级设计图,Facebook的评论竟然是支持实时刷新的。也就是说用户不用刷新帖子,只要帖子有新的评论就会自动推送到用户端,这里Facebook使用的便是每天在全球有设备在使用的WebSocket技术。我是南哥,一个Java学习与进阶的领路人。相信对你通关面试、拿下Offer进入心心念念的公司有所帮助。
543 5
这个评论系统设计碉堡了
|
前端开发 架构师 算法
技术一号位的方法论《个人篇》——人成长的本质以及如何构建个人成长路线图
不论你是职场新人还是35岁的职场“老人”,成长是每个职场人都绕不开的话题,同时也是贯穿每个人职业生涯的痛点。本文主要帮助读者建立起对个人成长的认知,然后在此认知的基础上让大家理解成长的本质,最终通过文章的引导,来帮助读者完成个人成长路线图的确定以及落地实践。
13954 3
技术一号位的方法论《个人篇》——人成长的本质以及如何构建个人成长路线图
|
程序员
聊聊 CTO 和 技术总监的区别
聊聊 CTO 和 技术总监的区别
1330 0
|
存储 算法 数据库
矢量数据库在图像识别与检索中的应用实践
【4月更文挑战第30天】本文探讨了矢量数据库在图像识别与检索中的应用,通过特征提取(如SIFT、SURF)、编码和相似度度量实现快速识别。在图像检索流程中,经过预处理、特征提取和编码后,矢量数据库用于查询相似特征,排序后展示给用户。实际案例显示,矢量数据库能提升电商平台的商品图像搜索效率和用户体验。随着技术发展,这一领域应用前景广阔。