首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >你如何改进这个代码设计?

你如何改进这个代码设计?
EN

Stack Overflow用户
提问于 2009-06-09 12:31:32
回答 7查看 281关注 0票数 0

最近,我使用了大量的Strategy模式和Factory模式。我的意思真的很多。我有很多基于参数检索算法的“算法”和工厂。尽管代码看起来具有很强的可扩展性,但拥有N个工厂似乎有点滥用。

我知道这是非常主观的,我们在没有看到代码的情况下说话,但是这在现实世界的代码中是可以接受的吗?你会做些改变吗?

EN

回答 7

Stack Overflow用户

发布于 2009-06-09 12:35:59

好的--问自己一个问题。这个算法实现会改变吗?如果不是,则删除该策略。

票数 3
EN

Stack Overflow用户

发布于 2009-06-09 13:14:34

I am maintence.

我曾经被迫(被我的模式爱好者)使用C++中的AbstractFactory和双DAO模式(没有反射,没有代码生成)编写了一组16个“缓冲区解释器tuxedo服务”。总共大约有20,000行代码,这是我见过的最讨厌的代码(尤其是因为我刚开始的时候并不真正了解C++ ),而且花了大约三个月的时间。

自从我的老老板离开后,我用好的“直上直下”的过程化风格的C++重写了它们,加上几个时髦的宏……每个服务就像60行代码,乘以16……所有的代码都少于1000行真正的简单的代码;如此简单以至于我都能理解它。

干杯。基思。

票数 2
EN

Stack Overflow用户

发布于 2009-06-09 12:38:54

每当我以这种方式实现代码时,我都会问一些问题:

  1. 我需要替换哪些组件才能进行测试?
  2. 我希望用户/管理员禁用或替换哪些组件(例如,通过Spring配置或类似配置)?
  3. 由于(可能)需求的更改,我预计或怀疑将来不需要哪些组件?

这一切都驱动了我如何构造对象或组件(通过工厂)以及如何实现算法。上面是模糊的,但(当然)需求也同样难以确定。在没有看到你的实现和需求的情况下,我不能做进一步的评论,但上面的内容应该可以作为一些指导原则,帮助你确定你所做的事情是否过度。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/969802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档