北京Java就业培训教程:Java性能的技巧,很多人都理所当然的以为性能优化是一件复杂且深奥的事情,需要具备丰富经验和知识前提;可实际上,虽然这事儿不算简单,但也并不代表你不了解这些知识就不能做任何事情。
1.确认必要后再进行优化
通常,我们还是该遵循常见的最佳实践方案并尝试高效的实现,因为大部分情况下过早的进行优化不但会占用大量时间,还会使代码变得难以阅读和维护;更糟的情况是,你用大量时间来优化的或许只是非关键部分,这些努力往往得不到任何好处。
那如何才能确认自己需要做出一些优化呢?首先,我们要先定义程序代码的速度,比如为API调用指定最大响应时间,或指定特定时间内需要导入的数量,这样你就可以知道程序的哪些部分太慢需要改进。
2.使用分析器查找真正的瓶颈
当你遵循了第一个技巧,并且确定了程序的某些模块需要改进时,我们需要明确该从哪里开始,你可以用两种方法来解决问题:
1.查看你的代码,并从看起来可疑或者你觉得可能会产生问题的部分开始。
2.或者使用分析器并获取有关代码每个部分的行为和性能的详细信息。
很明显,基于分析器的方法可以让你更好地理解代码的性能影响,并使你能够专注于关键部分。如果你曾使用过分析器,那么你一定记得曾经你是多么惊讶于一下就找到了代码的哪些部分产生了性能问题。
3.为整个应用程序创建性能测试套件
拥有一个用于整个程序的性能测试套件,并在性能改进之前和之后运行它。这是一个通用技巧,它可以让你在性能优化部署到生产后,免去承担更多突发问题的风险。
这些额外的测试运行将帮助你识别更改的功能和性能副作用,并确保不会导致弊大于利的更新。如果你工作于被应用程序若干不同部分使用的组件,如数据库或缓存,那么这一点就尤其重要。
4.首先处理最大的瓶颈
那又说回来了,我们究竟该从哪里开始呢?我的建议是可以专注于速效方案,或从最重要的问题开始。速效方案在前期可能很有吸引力,因为我们可以快速收获成果。但有时,可能就需要你说服其他人坚信性能分析是值得的,因为它也经常会在短期内看不到效果。
不过总体而言,还是建议首先处理最重要的性能问题,这将为你提供最大的性能改进,而且可能再也不需要去解决其中一些为了满足性能需求的问题。
5.使用StringBuilder以编程方式连接String
有很多不同的选项来连接Java中的String,哪种方式最好呢?这要取决于连接String的代码。
如果你是以编程方式添加新内容到String中,例如for循环,则应该使用StringBuilder,因为它很容易,又能提供良好的性能。但是,与StringBuffer相比,StringBuilder不是线程安全的,不能适应所有案例。
以上就是动力节点Java培训机构小编介绍的“北京Java就业培训教程:Java性能的技巧”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习