gpt4 book ai didi

c# - 多个项目之间的重复功能

转载 作者:行者123 更新时间:2023-11-30 14:44:15 30 4
gpt4 key购买 nike

我目前在两个社交网站上工作,它们有很多共同点,但又截然不同。我发现自己为两者(包括 UI)编写了很多相同的代码,并且想知道是否有限制重复代码的最佳实践。

其中一个主要问题是这些项目彼此非常独立,很快就会有更多不同点。此外,一旦初始工作完成,它们可能会移交给其他程序员,因此共享代码库可能最终会成为一个大问题。

可能不得不处理类似情况的人有什么建议吗?

PS:我是这两个项目中唯一的开发人员,看起来这种情况会持续一段时间。

最佳答案

将共享功能抽象回具有已定义接口(interface)和默认实现的框架或库是处理此问题的常用方法。例如,你的插件架构,如果你选择支持一个,可能是可以在你的所有项目之间共享的东西。大多数时候,您想要共享的东西是非常基本的功能或可以轻松定制的相对抽象的功能。前者更容易识别并分解为公共(public)库。后者有时可能比简单地通过微小的更改重新实现代码(共享模式而不是代码)需要更多的工作。

您要注意的一件事是让实际的重用驱动公共(public)库的设计,而不是提前提出共享架构。陷入框架设计并将其抽象出来供共享使用是非常诱人的。不幸的是,您经常会发现共享使用永远不会发展或朝着与您预期不同的方向发展,您最终会重写或丢弃大部分框架——或者更糟的是,保留和维护未使用的代码。让 YAGNI(你不会需要它)成为你的向导,并延迟重构到公共(public)库,直到你真正有需要。

关于c# - 多个项目之间的重复功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/717906/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com