软件复用问题之区分「不重复」和「复用」,如何解决

简介: 「不重复」和「复用」之间有何区别软件复用问题之区分「不重复」和「复用」,如何解决

问题一:抽象的结果对组件的可复用性有何影响?


抽象的结果对组件的可复用性有何影响?


参考回答:

抽象的结果直接决定了后续该组件可复用性程度的高低。


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

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



问题二:为什么良好的抽象能力对开发者来说是稀缺的?


为什么良好的抽象能力对开发者来说是稀缺的?


参考回答:

良好的抽象能力需要对问题进行清晰的定义、简化和分解,同时识别和利用通用模式,将子问题的解法组合起来形成一个整体解决方案。这需要依赖对设计模式、开源的库和框架、数据结构和算法以及大量生产项目的长期实践和思考,因此对大部分开发者来说是稀缺的。


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

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



问题三:错误的抽象会造成什么危害?


错误的抽象会造成什么危害?


参考回答:

错误的抽象造成的危害甚于不抽象。比如常见的一个现象是对设计模式的适用范围知之甚少,仅仅为了炫技而滥用设计模式,这会导致代码的可读性和可维护性下降。


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

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



问题四:为什么单纯追逐复用性可能会出现本末倒置的现象?


为什么单纯追逐复用性可能会出现本末倒置的现象?


参考回答:

因为复用只是实现不重复目标的一种手段,「不重复」才是我们设计软件系统时的目标。如果过度追求复用性,而忽略了不重复的原则,就可能导致出现一些接入成本非常高的框架或系统,从而增加了使用方的负担。


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

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



问题五:「不重复」和「复用」之间有何区别?


「不重复」和「复用」之间有何区别?


参考回答:

「不重复」即 DRY 原则,目标是通过减少重复建设从而避免承担副本不一致的维护成本。而「复用」是从所有代码中找到重复的部分,在复杂度可控的前提下,抽象出可复用的东西。不重复是目标,复用是实现这个目标的一种手段。


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

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

相关文章
|
7月前
|
机器学习/深度学习 数据可视化
Visual-RFT:基于强化学习的视觉语言模型微调技术研究
Visual-RFT 是一种创新的视觉语言模型微调技术,结合基于规则的可验证奖励与强化学习,克服了传统监督微调在数据稀缺场景下的局限。它通过渐进式推理和多样化响应生成,优化模型在对象检测、图像分类等任务中的表现,尤其适用于少样本学习。该方法采用组相对策略优化(GRPO)进行参数更新,简化了强化学习流程,同时保持高效性。实验结果表明,Visual-RFT 在细粒度分类和推理定位等任务中显著优于传统方法,展示了其在实际应用中的巨大潜力。
301 1
Visual-RFT:基于强化学习的视觉语言模型微调技术研究
|
小程序 开发者 异构计算
小程序真机调试反应很慢卡顿,界面跳转之后,页面出现空白,无法点击等问题解决方案
小程序真机调试反应很慢卡顿,界面跳转之后,页面出现空白,无法点击等问题解决方案
1466 0
小程序真机调试反应很慢卡顿,界面跳转之后,页面出现空白,无法点击等问题解决方案
|
8月前
|
存储 缓存 自然语言处理
浏览量超 10w 的热图,描述 RAG 的主流架构
大模型性能的持续提升,进一步挖掘了 RAG 的潜力,RAG 将检索系统与生成模型相结合,带来诸多优势,如实时更新知识、降低成本等。点击本文,为您梳理 RAG 的基本信息,并介绍提升大模型生成结果的方法,快一起看看吧~
715 111
|
Java 关系型数据库 MySQL
【Linux环境配置】Linux系统安装jdk1.8操作步骤
【Linux环境配置】Linux系统安装jdk1.8操作步骤
666 0
|
存储 人工智能 数据可视化
AI计算机视觉笔记二十一:PaddleOCR训练自定义数据集
在完成PaddleOCR环境搭建与测试后,本文档详细介绍如何训练自定义的车牌检测模型。首先,在`PaddleOCR`目录下创建`train_data`文件夹存放数据集,并下载并解压缩车牌数据集。接着,复制并修改配置文件`ch_det_mv3_db_v2.0.yml`以适应训练需求,包括设置模型存储目录、训练可视化选项及数据集路径。随后,下载预训练权重文件并放置于`pretrain_models`目录下,以便进行预测与训练。最后,通过指定命令行参数执行训练、断点续训、测试及导出推理模型等操作。
1125 3
|
计算机视觉
5.1.2.3 目标检测基本概念和YOLOv3设计思想——交并比 NMS
这篇文章详细解释了目标检测中的关键概念交并比(IoU)和非极大值抑制(NMS),包括它们的定义、计算方法和在目标检测中的应用,以及如何使用这些技术来优化预测结果和减少冗余预测框。
|
SQL 关系型数据库 MySQL
MySQL数据库常见报错案例与错误代码说明
MySQL数据库常见报错案例与错误代码说明
1028 0
|
负载均衡 关系型数据库 数据管理
关系型数据库的横向扩展
【5月更文挑战第2天】关系型数据库的横向扩展
390 6
关系型数据库的横向扩展
|
Dubbo Java 应用服务中间件
Java从入门到精通:3.2.2分布式与并发编程——了解分布式系统的基本概念,学习使用Dubbo、Spring Cloud等分布式框架
Java从入门到精通:3.2.2分布式与并发编程——了解分布式系统的基本概念,学习使用Dubbo、Spring Cloud等分布式框架
941 0
|
机器学习/深度学习 人工智能 算法
人工智能LLM模型:奖励模型的训练、PPO 强化学习的训练、RLHF
人工智能LLM模型:奖励模型的训练、PPO 强化学习的训练、RLHF
人工智能LLM模型:奖励模型的训练、PPO 强化学习的训练、RLHF