写点什么

一个优秀的程序员,不仅要会编写程序,更要会编写高质量的程序

发布于: 2020 年 12 月 09 日

前言



Java是目前应用最为广泛的软件开发平台之一。随着Java以及Java社区的不断壮大,Java也早已不再是简简单单的一门计算机语言了,它更是一个平台、一种文化、一个社区。



作为一个平台,JVM虚拟机扮演着举足轻重的作用。除了Java语言,任何一种能够被编译成字节码的计算机语言都属于Java这个平台。Groovy、Scala、JRuby等都是Java平台的一个部分,它们依赖于JVM虚拟机,同时,Java平台也因为它们变得更加丰富多彩。



作为一种文化,Java几乎成为了“开源”的代名词。在Java程序中,有着数不清的开源软件和框架,如Tomcat、Struts、Hibernate、Spring等等。就连JDK和JVM自身也有不少开源的实现如OpenJDK、Harmony。可以说,“共享”的精神在Java世界里体现得淋漓尽致。



作为一个社区,Java拥有无数的开发人员,数不清的论坛、资料。从桌面应用软件、嵌入式开发到企业级应用、后台服务器、中间件,都可以看到Java的身影。其应用形式之复杂、参与人数之庞大也令人咋舌。可以说,Java社区已经俨然成为了一个良好而庞大的生态系统。



此外,纯粹作为一门软件开发语言,Java非常容易学习,其学习曲线较C++等老牌计算机语言相比,也比较平缓。因为它尽力简化或去除了C++中许多晦涩、多余和难以理解的部分,如指针、虚函数、多继承等。



Java程序性能优化——让你的Java程序更快、更稳定。



Java程序员进阶必读经典,上万读者的选择,数万Java爱好者和程序员受益匪浅!





  • 一个优秀的程序员,不仅要会编写程序,更要会编写高质量的程序

  • 感受Java开发中的大智慧,让你的Java程序更优美

  • 专注于Java应用程序的优化方法、技巧和思想

  • 深入剖析软件设计层面、代码层面、JVM虚拟机层面的优化方法

  • 理论结合实际,使用丰富的示例帮助读者理解理论知识



转发+关注,然后私信回复  “666” 即可获得《Java程序性能优化手册》完整版的免费领取方式



本书结构



本书主要介绍Java应用程序的优化方法和技巧,总共分为6章。



第1章是综述,介绍了性能的基本概念,两个重要的定律(木桶原理和Amdahl定律),以及系统调优的一般过程与注意事项。



第2章从设计层面,介绍了与性能相关的设计模式、组件以及有助于改善性能的软件设计思想。



第3章从代码层面介绍了如何编写高性能的Java代码。涉及的主要内容有:字符串的优化处理、文件I/O的优化、核心数据库结构的使用、Java的引用类型以及一些常用的惯例。



第4章介绍了并行程序开发的相关内容,以及如何通过多线程提高系统性能。先后介绍了并发设计模式、线程池、并发数据结构的使用、并发控制方法、“锁”的优化、无锁的使用以及协程。



第5章立足于JVM虚拟机层面,介绍了如何通过设置合理的JVM参数提升Java程序的性能。



第6章为工具篇,主要介绍了获取和监控程序或系统性能指标的各种工具,以及Java应用程序相关的故障排查工具。



内容目录



第1章 Java性能调优概述



  • 1.1 性能概述

  • 1.2 性能调优的层次

  • 1.3 基本调优策略和手段

  • 1.4 小结





第2章 设计优化



  • 2.1 善用设计模式

  • 2.2 常用优化组件和方法

  • 2.3 小结





第3章 Java程序优化



  • 3.1 字符串优化处理

  • 3.2 核心数据结构

  • 3.3 使用NIO提升性能

  • 3.4 引用类型

  • 3.5 有助于改善性能的技巧

  • 3.6 小结





第4章 并行程序开发及优化



  • 4.1 并行程序设计模式

  • 4.2 JDK多任务执行框架

  • 4.3 JDK并发数据结构

  • 4.4 并发控制方法

  • 4.5 “锁”的性能和优化

  • 4.6 无锁的并行计算

  • 4.7 协程

  • 4.8 小结





第5章 JVM调优



  • 5.1 Java虚拟机内存模型

  • 5.2 JVM内存分配参数

  • 5.3 垃圾收集基础

  • 5.4 常用调优案例和方法

  • 5.5 实用JVM参数

  • 5.6 实战JVM调优

  • 5.7 总结





第6章 Java性能调优工具



  • 6.1 Linux命令行工具

  • 6.2 Windows工具

  • 6.3 JDK命令行工具

  • 6.4 JConsole工具

  • 6.5 Visual VM多合一工具

  • 6.6 Visual VM对OQL的支持

  • 6.7 MAT内存分析工具

  • 6.8 MAT对OQL的支持

  • 6.9 JProfile简介

  • 6.10 小结





转发+关注,然后私信回复  “666” 即可获得《Java程序性能优化手册》完整版的免费领取方式





用户头像

微信:tkzl6666 添加获取你想要的Java资料 2019.01.29 加入

添加VX(tkzl6666 ) 获取大厂面试真题,面试复习资料,Java进阶资料,Java实战项目。

评论 (1 条评论)

发布
用户头像
一个优秀的程序员,不仅要会编写程序,更要会编写高质量的程序
2020 年 12 月 09 日 15:33
回复
没有更多了
一个优秀的程序员,不仅要会编写程序,更要会编写高质量的程序