抽象和表现

时间:2014-02-07 16:44:16

标签: performance frameworks abstraction

我在编程任务中使用了很多框架。虽然这些框架使编码变得容易,但我发现拥有越来越多的库/框架层往往会损害性能。

我想知道是否有任何关于如何过多的抽象层最终会损害应用程序性能的引用/故事。或者这不再是真的吗?

对于那些认为这个问题不合适的人:我对可量化性能下降的具体事件感兴趣(例如,使用X框架后应用程序比编写自定义代码慢10% )以及解决问题的方法,而不是关于他们认为应该发生什么的主观意见。

1 个答案:

答案 0 :(得分:2)

在决定是否使用第三方框架时,有几个因素需要考虑:

  • 上市时间(适当使用第三方时通常会有所改善)
  • 控制技术(通常因显而易见的原因而降级)
  • 表现(可能会改善或降低,必须在做出决定之前进行基准测试)
  • 第二个数量级的影响:维护,构建/发布复杂性

一些框架是众所周知的,并且总是值得使用(例如Java中的SLF4J或Joda或C ++中的Boost或TBB)。

总而言之,这是非常主观的,甚至取决于您组织中可用的AD专业知识水平。有些开发人员可能值得从头开始编写东西并完全控制技术,与其他人一起使用第三方可能会更好。

具有已知EOL日期的软件应始终将开发成本作为最终决定因素。

已知为组织战略平台的软件应该倾向于合理地最小化可疑的第三方依赖。

关于轶事主题:我最近遇到了一个代码,该代码使用用boost :: spirit编写的手动解析器解析一个简单的命令行。

相关问题