Java性能优化技巧(1)

        先说些废话,废话就是大家都知道的事情。 

        任何系统都不可能完美无缺,如果 你追求性能,则必然会增加工作量,或者增大一些额外的风险;如果你追求安全,则你就会在性能上有所缺失;如果你追求完美、简单,则你的程序就可能晦涩难 懂;如果你追求巨细靡遗,追求文档的齐备,则你就会使系统变得臃肿。单就性能来说,我们不可能在一个系统中的所有方面都得到很好的性能。
比如操作系统的实现,常常会有时间换取空间,或者空间换取时间的思路,无论是哪一种都以一种代价去获得另一种补偿(鱼和熊掌不可兼得)。又比如从软件工程 的角度,无论如何都应该详尽程序注释和文档,而在《重构与模式》一书中,作者写道,如果你的程序里还含有注释,那说明你的程序写的还不够好,你的代码不是 一份容易阅读的代码,而毫无疑问,一份不易阅读的代码是就是糟糕的代码。
        所以性能的选择,完全取决于项目现有的资源情况,而不是盲目地追求“完美编程”。
        先说明一下优化的前提,由于在一定的硬件设施基础上,可供程序利用的资源是有限的,所以程序员在编写程序时,就必须考虑到如何在有限的环境下使这些资源的得到充分的利用。 Java 性能优化的目的就是让程序员用尽可能少的资源完成预定的任务

程序可利用的资源通常包含以下几个方面:

  • 内存
  • CPU
  • 磁盘IO
  • 网络带宽
  • 网络连接数(线程池)


Java性能优化通常包含两方面的内容:

  1. 减少代码的体积:通过培养良好的编程习惯,可以部分地减少代码的体积;
  2. 提高代码的运行效率:在Java程序中,性能部分的大部分原因不在Java语言,而在于程序本身,正确,巧妙地运用Java语言,可以显著地提高程序的性能


         然而,要做好这两方面,需要非常扎实的基本功,需要对自己的代码有充分的理解,需要灵感和经验,需要大量测试和总结。

PS[结束语]: Java性能优化技巧系列一共分为五个部分

  • 类和对象使用技巧
  • Java I/O技巧
  • 异常(Exceptions)使用技巧
  • 线程使用技巧
  • 其他常用技巧

        本系列都是入门级的水准,是我平时学习和工作的总结,部分例子和文字来自相关书籍和网络,写在这里只是为了给互联网做一点点贡献,给像我一样菜的程序员一点点帮助。

你可能感兴趣的:(java,编程,工作,互联网,软件测试)