软件一定存在修改的余地——《大话Java性能优化》

东风玖哥

2016-10-11

Java是典型的面向对象语言,去掉了指针让开发更加简便,却无法直接指向内存;似乎穿上了铠甲却多了软肋,因此Java性能优化是非常必要的。

面对客户的咄咄逼人的需求修改和即刻变更需求上线压力,程序员作为弱势群体,往往会考虑时间优先原则,导致软件质量大幅下降。尤其在某些外包公司里,三个分别来自达内、北大青鸟和新华电脑专修学院的速成程序员开发了一个常量在三个类里分别声明、变量分别用GreenDAO、ORMLite和原生SQLite保存的App,性能问题随着新模块的增加而水涨船高,最终积重难返,在用compile ‘com.android.support:multidex:1.0.0’ 解决了65k方法问题(相当于砸掉承重墙增加室内面积)后告诉客户换一家外包公司。

程序凑合着上线是一回事,而在压力下运行并可以维护下去就是另一回事了。《大话Java性能优化》就是一本让人学会优化Java代码性能的书,书中详细介绍了API调用、算法和设计模式、多线程、垃圾回收等各方面的性能优化方案和性能测试方法,除了第二章完全基于JavaEE外其他章节都是Android开发中性能问题的天敌。

《大话Java性能优化》第三章从Java的各大API调用的角度分析性能优化的方案。第一节《面向对象及基础类型》介绍了几种;第二节《集合类概念》讨论了List、Map和Set之间的优势和不足以及三者各自的高效使用方法和低效使用方法的对比;第三节《字符串概念》用很大篇幅专门讨论Java最常用的类String,好多性能优化方法都是非常实用却经常被忽视的,例如长度为1的字符串用’a’处理的效率比用”a”处理高得多。

此外,我感觉周老师除了在Java编程方面技高一筹外,他平时也是一个爱读书的饱学之士,对文学的造诣很高,从他优美的文笔上可以看出来。

读者评论

相关博文

  • 你若顽强到底,一切皆有可能——谈工程师职业素养

    你若顽强到底,一切皆有可能——谈工程师职业素养

    周明耀 2017-06-19

    7岁那年,当我合上《上下五千年》一套三册书籍时,我对自己说,我想当个作家。这一晃27年了,等待了27年,我的第一本书《大话Java性能优化》即将面世了。我是多么的忐忑、惊喜,就像第一次面对我的女儿“小顽子”,给她取这个小名,希望她顽强...

    周明耀 2017-06-19
    604 0 0 0
  • Java集合类操作优化经验总结

    Java集合类操作优化经验总结

    周明耀 2017-05-03

    在实际的项目开发中会有很多的对象,如何高效、方便地管理对象,成为影响程序性能与可维护性的重要环节。Java 提供了集合框架来解决此类问题,线性表、链表、哈希表等是常用的数据结构,在进行 Java 开发时,JDK 已经为我们提供了一系列相...

    周明耀 2017-05-03
    507 0 1 0
  • 关于若干选举算法的解释与实现

    关于若干选举算法的解释与实现

    周明耀 2017-04-21

    分布式中有这么一个疑难问题,客户端向一个分布式集群的服务端发出一系列更新数据的消息,由于分布式集群中的各个服务端节点是互为同步数据的,所以运行完客户端这系列消息指令后各服务端节点的数据应该是一致的,但由于网络或其他原因,各个服务端节点接...

    周明耀 2017-04-21
    1197 0 0 0