c# – 创建一个Catch-All AppToolbox类 – 这是一个糟糕的做法吗?

c# – 创建一个Catch-All AppToolbox类 – 这是一个糟糕的做法吗?,第1张

概述永远不知道在哪里放置功能: String PrettyPhone( String phoneNumber ) // return formatted (999) 999-9999String EscapeInput( String inputString ) // gets rid of SQL-escapes like ' 我为每个应用程序创建一个Toolbox类,作为不完全适合另一个类的函数 永远不知道在哪里放置功能:
String PrettyPhone( String phoneNumber ) // return formatted (999) 999-9999String Escapeinput( String inputString ) // gets rID of sql-escapes like '

我为每个应用程序创建一个ToolBox类,作为不完全适合另一个类的函数的存储库.我已经读过这样的类是糟糕的编程实践,特别是糟糕的面向对象设计.然而,所述参考文献似乎更多的是个人设计师和开发人员的意见,而不是一个总体上的共识.所以我的问题是,一个无所不能的工具箱是一个糟糕的设计模式?如果是这样,为什么,有什么替代方案?

解决方法 好问题.我总是发现任何足够复杂的项目都需要“实用”类.我认为这仅仅是因为面向对象编程的本质迫使我们将事物放置在一个整齐的结构化分层分类中,当这并不总是可行或适当时(例如尝试为哺乳动物创建一个对象模型,然后挤压鸭嘴兽) ).这是推动工作到 aspect oriented programming(c.f. cross cutting concern)的问题.通常,实用工具类的内容是跨领域的问题.

使用工具箱或实用程序类的一种替代方法是使用扩展方法为基本类型提供其他所需的功能.但是,陪审团仍然不清楚这是否构成了良好的软件设计.

关于这个问题我的最后一句话是:如果你需要的话,可以选择它,只要确保你没有做出更好的设计.当然,如果需要,您可以随时重构.

总结

以上是内存溢出为你收集整理的c# – 创建一个Catch-All AppToolbox类 – 这是一个糟糕的做法吗?全部内容,希望文章能够帮你解决c# – 创建一个Catch-All AppToolbox类 – 这是一个糟糕的做法吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1238759.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存