【发布时间】:2015-07-14 00:21:10
【问题描述】:
我被分配到优化应用程序性能的工作。
通常需要将 16-25 个参数传递给构造函数,并在那里设置它们。 我想为此创建一个类和对象并将这些值设置为对象然后传递。 读起来会很好。但它对我的任务有什么好处(即性能优化)?
【问题讨论】:
-
无论性能如何,将这么多参数传递给构造函数都是一种代码味道。使用这么多参数,你很可能会出错(例如,反转两个相同类型的参数)。
-
我建议在尝试优化之前对应用程序的各个方面进行分析,以确定瓶颈的实际位置。例如,任何涉及网络访问、编写不佳的数据库查询等。
-
@Bohemian 当然这是可能的。但是,如果您的参数对象用途较窄,则不太可能意外混淆不相关的参数。
-
@Shashank 你特别提到了“优化性能”。第一步是“衡量绩效”,这样你就知道哪些方面需要改进。我有一种强烈的感觉,如果存在性能问题,最好在某个地方找到一些效率极低的算法,可以重新设计,而不是搞乱方法参数的数量。
标签: java object optimization parameters