Java程序性能優(yōu)化

出版時(shí)間:2012-9-1  出版社:清華大學(xué)出版社  作者:葛一鳴  頁(yè)數(shù):400  字?jǐn)?shù):649000  
Tag標(biāo)簽:無(wú)  

前言

關(guān)于JavaJava是目前應(yīng)用最為廣泛的軟件開(kāi)發(fā)平臺(tái)之一。隨著Java以及Java社區(qū)的不斷壯大,Java也早已不再是簡(jiǎn)簡(jiǎn)單單的一門計(jì)算機(jī)語(yǔ)言了,它更是一個(gè)平臺(tái)、一種文化、一個(gè)社區(qū)。作為一個(gè)平臺(tái),JVM虛擬機(jī)扮演著舉足輕重的作用。除了Java語(yǔ)言,任何一種能夠被編譯成字節(jié)碼的計(jì)算機(jī)語(yǔ)言都屬于Java這個(gè)平臺(tái)。Groovy、Scala、JRuby等都是Java平臺(tái)的一個(gè)部分,它們依賴于JVM虛擬機(jī),同時(shí),Java平臺(tái)也因?yàn)樗鼈冏兊酶迂S富多彩。作為一種文化,Java幾乎成為了“開(kāi)源”的代名詞。在Java程序中,有著數(shù)不清的開(kāi)源軟件和框架,如Tomcat、Struts、Hibernate、Spring等等。就連JDK和JVM自身也有不少開(kāi)源的實(shí)現(xiàn)如OpenJDK、Harmony??梢哉f(shuō),“共享”的精神在Java世界里體現(xiàn)得淋漓盡致。作為一個(gè)社區(qū),Java擁有無(wú)數(shù)的開(kāi)發(fā)人員,數(shù)不清的論壇、資料。從桌面應(yīng)用軟件、嵌入式開(kāi)發(fā)到企業(yè)級(jí)應(yīng)用、后臺(tái)服務(wù)器、中間件,都可以看到Java的身影。其應(yīng)用形式之復(fù)雜、參與人數(shù)之龐大也令人咋舌??梢哉f(shuō),Java社區(qū)已經(jīng)儼然成為了一個(gè)良好而龐大的生態(tài)系統(tǒng)。此外,純粹作為一門軟件開(kāi)發(fā)語(yǔ)言,Java非常容易學(xué)習(xí),其學(xué)習(xí)曲線較C++等老牌計(jì)算機(jī)語(yǔ)言相比,也比較平緩。因?yàn)樗M力簡(jiǎn)化或去除了C++中許多晦澀、多余和難以理解的部分,如指針、虛函數(shù)、多繼承等。本書(shū)架構(gòu)本書(shū)主要介紹Java應(yīng)用程序的優(yōu)化方法和技巧,總共分為6章。第1章是綜述,介紹了性能的基本概念,兩個(gè)重要的定律(木桶原理和Amdahl定律),以及系統(tǒng)調(diào)優(yōu)的一般過(guò)程與注意事項(xiàng)。第2章從設(shè)計(jì)層面,介紹了與性能相關(guān)的設(shè)計(jì)模式、組件以及有助于改善性能的軟件設(shè)計(jì)思想。第3章從代碼層面介紹了如何編寫(xiě)高性能的Java代碼。涉及的主要內(nèi)容有:字符串的優(yōu)化處理、文件I/O的優(yōu)化、核心數(shù)據(jù)庫(kù)結(jié)構(gòu)的使用、Java的引用類型以及一些常用的慣例。第4章介紹了并行程序開(kāi)發(fā)的相關(guān)內(nèi)容,以及如何通過(guò)多線程提高系統(tǒng)性能。先后介紹了并發(fā)設(shè)計(jì)模式、線程池、并發(fā)數(shù)據(jù)結(jié)構(gòu)的使用、并發(fā)控制方法、“鎖”的優(yōu)化、無(wú)鎖的使用以及協(xié)程。第5章立足于JVM虛擬機(jī)層面,介紹了如何通過(guò)設(shè)置合理的JVM參數(shù)提升Java程序的性能。第6章為工具篇,主要介紹了獲取和監(jiān)控程序或系統(tǒng)性能指標(biāo)的各種工具,以及Java應(yīng)用程序相關(guān)的故障排查工具。本書(shū)特點(diǎn)本書(shū)的主要特點(diǎn)有:· 專注于介紹Java應(yīng)用程序的優(yōu)化方法、技巧和思想,并深度剖析JDK的部分實(shí)現(xiàn)。· 具有較強(qiáng)的層次性和連貫性,依次介紹了在軟件設(shè)計(jì)層面、代碼層面、JVM虛擬機(jī)層面的優(yōu)化方法。· 理論結(jié)合實(shí)際,使用豐富的示例幫助讀者理解理論知識(shí)。閱讀人群要通讀本書(shū)并取得良好的學(xué)習(xí)效果,要求讀者需要具備Java的基本知識(shí)。本書(shū)不是一本幫助初學(xué)者入門的書(shū)籍。因此,本書(shū)適合以下讀者:· 擁有一定開(kāi)發(fā)經(jīng)驗(yàn)的Java開(kāi)發(fā)人員· Java軟件設(shè)計(jì)師、架構(gòu)師· 系統(tǒng)調(diào)優(yōu)人員· 有一定的Java基礎(chǔ)并希望更進(jìn)一步的程序員本書(shū)的約定本書(shū)在敘述過(guò)程中,有如下約定:· 本書(shū)中所述的JDK 1.5、JDK 1.6等同于JDK 5、JDK 6。· 如無(wú)特殊說(shuō)明,JVM虛擬機(jī)均指Hot Spot虛擬機(jī)。· 如無(wú)特殊說(shuō)明,本書(shū)的程序、示例均在JDK 1.6環(huán)境中運(yùn)行。下載提示本書(shū)涉及的源程序請(qǐng)讀者直接登錄清華大學(xué)出版社網(wǎng)站,搜索到本書(shū)頁(yè)面后按照提示進(jìn)行下載。感謝在本書(shū)的寫(xiě)作過(guò)程中,我充滿著感激之情。首先是對(duì)我的家人,在本書(shū)完稿前,父親病重,但我由于工作上的繁忙未能抽出太多時(shí)間照顧他,幸好得到了母親的大力支持和父親的諒解,我才能夠鼓足勇氣,全身心投入到寫(xiě)作之中。同時(shí),母親對(duì)我的悉心照料也讓我更加能夠?qū)W⒌焦ぷ髦?。同時(shí),我要感謝我的工作單位UT斯達(dá)康以及兩位前輩Rex Zhu和Tao Tao。正是他們?cè)谄綍r(shí)工作中對(duì)我的細(xì)心指導(dǎo),才能讓我有所進(jìn)步和積累。而這一切,正是本書(shū)的基礎(chǔ)。最后,再次感謝我的母親,祝她身體健康。葛一鳴

內(nèi)容概要

  
Java是目前應(yīng)用最為廣泛的軟件開(kāi)發(fā)平臺(tái),學(xué)習(xí)針對(duì)Java程序的優(yōu)化方法有重要的現(xiàn)實(shí)意義?!禞ava程序性能優(yōu)化:讓你的Java程序更快、更穩(wěn)定》以Java性能調(diào)優(yōu)為主線,系統(tǒng)地闡述了與Java性能優(yōu)化相關(guān)的知識(shí)與技巧。
  
《Java程序性能優(yōu)化:讓你的Java程序更快、更穩(wěn)定》共6章,先后從軟件設(shè)計(jì)、軟件編碼、JVM調(diào)優(yōu)以及程序故障排斥等方面介紹針對(duì)Java程序的優(yōu)化方法。第1章介紹性能的基本概念、定律、系統(tǒng)調(diào)優(yōu)的過(guò)程和注意事項(xiàng)。第2章從設(shè)計(jì)層面介紹與性能相關(guān)的設(shè)計(jì)模式、組件。第3章從代碼層面介紹如何編寫(xiě)高性能的Java程序。第4章介紹了并行開(kāi)發(fā)和如何通過(guò)多線程提高系統(tǒng)性能。第5章立足于JVM虛擬機(jī)層面,介紹如何通過(guò)設(shè)置合理的JVM參數(shù)提升Java程序的性能。第6章為工具篇,介紹了獲取和監(jiān)控程序或系統(tǒng)性能指標(biāo)的各種工具,包括相關(guān)的故障排查工具。
  
本書(shū)適合所有Java程序員、軟件設(shè)計(jì)師、架構(gòu)師以及軟件開(kāi)發(fā)愛(ài)好者,對(duì)于有一定經(jīng)驗(yàn)的Java工程師,本書(shū)更能幫助他突破技術(shù)瓶頸,深入Java內(nèi)核開(kāi)發(fā)!

作者簡(jiǎn)介

  
葛一鳴,畢業(yè)于浙江工業(yè)大學(xué),獲得了計(jì)算機(jī)軟件與理論專業(yè)碩士學(xué)位。取得了國(guó)家認(rèn)證系統(tǒng)分析師職稱、OCP(Oracle數(shù)據(jù)庫(kù)認(rèn)證專家)。現(xiàn)就職于UT斯達(dá)康通訊有限公司,從事Java軟件開(kāi)發(fā)。有多年的軟件開(kāi)發(fā)經(jīng)驗(yàn),參與開(kāi)發(fā)過(guò)多個(gè)軟件項(xiàng)目。熟悉Java、PHP、MySQL、Oracle等開(kāi)發(fā)語(yǔ)言和數(shù)據(jù)庫(kù),對(duì)Java軟件開(kāi)發(fā)、性能優(yōu)化、分布式軟件有著濃厚的興趣和深入的研究。在校期間曾經(jīng)發(fā)表過(guò)多篇技術(shù)論文。

書(shū)籍目錄

第1章 Java性能調(diào)優(yōu)概述
1.1 性能概述
1.1.1 看懂程序的性能
1.1.2 性能的參考指標(biāo)
1.1.3 木桶原理與性能瓶頸
1.1.4 Amdahl定律
1.2 性能調(diào)優(yōu)的層次
1.2.1 設(shè)計(jì)調(diào)優(yōu)
1.2.2 代碼調(diào)優(yōu)
1.2.3 JVM調(diào)優(yōu)
1.2.4 數(shù)據(jù)庫(kù)調(diào)優(yōu)
1.2.5 操作系統(tǒng)調(diào)優(yōu)
1.3 基本調(diào)優(yōu)策略和手段
1.3.1 優(yōu)化的一般步驟
1.3.2 系統(tǒng)優(yōu)化注意事項(xiàng)
1.4 小結(jié)
第2章 設(shè)計(jì)優(yōu)化
2.1 善用設(shè)計(jì)模式
2.1.1 單例模式
2.1.2 代理模式
2.1.3 享元模式
2.1.4 裝飾者模式
2.1.5 觀察者模式
2.1.6 Value Object模式
2.1.7 業(yè)務(wù)代理模式
2.2 常用優(yōu)化組件和方法
2.2.1 緩沖(Buffer)
2.2.2 緩存(Cache)
2.2.3 對(duì)象復(fù)用——“池”
2.2.4 并行替代串行
2.2.5 負(fù)載均衡
2.2.6 時(shí)間換空間
2.2.7 空間換時(shí)間
2.3 小結(jié)
第3章 Java程序優(yōu)化
3.1 字符串優(yōu)化處理
3.1.1 String對(duì)象及其特點(diǎn)
3.1.2 subString()方法的內(nèi)存泄漏
3.1.3 字符串分割和查找
3.1.4 StringBuffer和StringBuilder
3.2 核心數(shù)據(jù)結(jié)構(gòu)
3.2.1 List接口
3.2.2 Map接口
3.2.3 Set接口
3.2.4 優(yōu)化集合訪問(wèn)代碼
3.2.5 RandomAccess接口
3.3 使用NIO提升性能
3.3.1 NIO的Buffer類族和Channel
3.3.2 Buffer的基本原理
3.3.3 Buffer的相關(guān)操作
3.3.4 MappedByteBuffer性能評(píng)估
3.3.5 直接內(nèi)存訪問(wèn)
3.4 引用類型
3.4.1 強(qiáng)引用
3.4.2 軟引用
3.4.3 弱引用
3.4.4 虛引用
3.4.5 WeakHashMap類及其實(shí)現(xiàn)
3.5 有助于改善性能的技巧
3.5.1 慎用異常
3.5.2 使用局部變量
3.5.3 位運(yùn)算代替乘除法
3.5.4 替換switch
3.5.5 一維數(shù)組代替二維數(shù)組
3.5.6 提取表達(dá)式
3.5.7 展開(kāi)循環(huán)
3.5.8 布爾運(yùn)算代替位運(yùn)算
3.5.9 使用arrayCopy ()
3.5.10 使用Buffer進(jìn)行I/O操作
3.5.11 使用clone()代替new
3.5.12 靜態(tài)方法替代實(shí)例方法
3.6 小結(jié)
第4章 并行程序開(kāi)發(fā)及優(yōu)化
4.1 并行程序設(shè)計(jì)模式
4.1.1 Future模式
4.1.2 Master-Worker模式
4.1.3 Guarded Suspension模式
4.1.4 不變模式
4.1.5 生產(chǎn)者-消費(fèi)者模式
4.2 JDK多任務(wù)執(zhí)行框架
4.2.1 無(wú)限制線程的缺陷
4.2.2 簡(jiǎn)單的線程池實(shí)現(xiàn)
4.2.3 Executor框架
4.2.4 自定義線程池
4.2.5 優(yōu)化線程池大小
4.2.6 擴(kuò)展ThreadPoolExecutor
4.3 JDK并發(fā)數(shù)據(jù)結(jié)構(gòu)
4.3.1 并發(fā)List
4.3.2 并發(fā)Set
4.3.3 并發(fā)Map
4.3.4 并發(fā)Queue
4.3.5 并發(fā)Deque
4.4 并發(fā)控制方法
4.4.1 Java內(nèi)存模型與volatile
4.4.2 同步關(guān)鍵字synchronized
4.4.3 ReentrantLock重入鎖
4.4.4 ReadWriteLock讀寫(xiě)鎖
4.4.5 Condition對(duì)象
4.4.6 Semaphore信號(hào)量
4.4.7 ThreadLocal線程局部變量
4.5 “鎖”的性能和優(yōu)化
4.5.1 線程的開(kāi)銷
4.5.2 避免死鎖
4.5.3 減小鎖持有時(shí)間
4.5.4 減小鎖粒度
4.5.5 讀寫(xiě)分離鎖來(lái)替換獨(dú)占鎖
4.5.6 鎖分離
4.5.7 重入鎖ReentrantLock和內(nèi)部鎖synchronized
4.5.8 鎖粗化(Lock Coarsening)
4.5.9 自旋鎖(Spinning Lock)
4.5.10 鎖消除(Lock Elimination)
4.5.11 鎖偏向(Biased Lock)
4.6 無(wú)鎖的并行計(jì)算
4.6.1 非阻塞的同步/無(wú)鎖
4.6.2 原子操作
4.6.3 Amino框架介紹
4.6.4 Amino集合
4.6.5 Amino樹(shù)
4.6.6 Amino圖
4.6.7 Amino簡(jiǎn)單調(diào)度模式
4.7 協(xié)程
4.7.1 協(xié)程的概念
4.7.2 Kilim框架簡(jiǎn)介
4.7.3 Task及其狀態(tài)
4.7.4 Fiber及其狀態(tài)
4.7.5 Kilim開(kāi)發(fā)環(huán)境配置
4.7.6 Kilim之Hello World
4.7.7 多任務(wù)通信
4.7.8 Kilim實(shí)例及性能評(píng)估
4.8 小結(jié)
第5章 JVM調(diào)優(yōu)
5.1 Java虛擬機(jī)內(nèi)存模型
5.1.1 程序計(jì)數(shù)器
5.1.2 Java虛擬機(jī)棧
5.1.3 本地方法棧
5.1.4 Java堆
5.1.5 方法區(qū)
5.2 JVM內(nèi)存分配參數(shù)
5.2.1 設(shè)置最大堆內(nèi)存
5.2.2 設(shè)置最小堆內(nèi)存
5.2.3 設(shè)置新生代
5.2.4 設(shè)置持久代
5.2.5 設(shè)置線程桟
5.2.6 堆的比例分配
5.2.7 堆分配參數(shù)總結(jié)
5.3 垃圾收集基礎(chǔ)
5.3.1 垃圾收集的作用
5.3.2 垃圾回收算法與思想
5.3.3 垃圾收集器的類型
5.3.4 評(píng)價(jià)GC策略的指標(biāo)
5.3.5 新生代串行收集器
5.3.6 老年代串行收集器
5.3.7 并行收集器
5.3.8 新生代并行回收(Parallel Scavenge)收集器
5.3.9 老年代并行回收收集器
5.3.10 CMS收集器
5.3.11 G1收集器(Garbage First)
5.3.12 Stop the World案例
5.3.13 收集器對(duì)系統(tǒng)性能的影響
5.3.14 GC相關(guān)參數(shù)總結(jié)
5.4 常用調(diào)優(yōu)案例和方法
5.4.1 將新對(duì)象預(yù)留在新生代
5.4.2 大對(duì)象進(jìn)入老年代
5.4.3 設(shè)置對(duì)象進(jìn)入老年代的年齡
5.4.4 穩(wěn)定與震蕩的堆大小
5.4.5 吞吐量?jī)?yōu)先案例
5.4.6 使用大頁(yè)案例
5.4.7 降低停頓案例
5.5 實(shí)用JVM參數(shù)
5.5.1 JIT編譯參數(shù)
5.5.2 堆快照(堆Dump)
5.5.3 錯(cuò)誤處理
5.5.4 取得GC信息
5.5.5 類和對(duì)象跟蹤
5.5.6 控制GC
5.5.7 選擇類校驗(yàn)器
5.5.8 Solaris下線程控制
5.5.9 使用大頁(yè)
5.5.10 壓縮指針
5.6 實(shí)戰(zhàn)JVM調(diào)優(yōu)
5.6.1 Tomcat簡(jiǎn)介與啟動(dòng)加速
5.6.2 Web應(yīng)用程序介紹
5.6.3 JMeter介紹與使用
5.6.4 調(diào)優(yōu)前Web應(yīng)用運(yùn)行狀況
5.6.5 調(diào)優(yōu)過(guò)程
5.7 總結(jié)
第6章 Java性能調(diào)優(yōu)工具
6.1 Linux命令行工具
6.1.1 top命令
6.1.2 sar命令
6.1.3 vmstat命令
6.1.4 iostat命令
6.1.5 pidstat工具
6.2 Windows工具
6.2.1 任務(wù)管理器
6.2.2 perfmon性能監(jiān)控工具
6.2.3 Process Explorer
6.2.4 pslist命令行
6.3 JDK命令行工具
6.3.1 jps命令
6.3.2 jstat命令
6.3.3 jinfo命令
6.3.4 jmap命令
6.3.5 jhat命令
6.3.6 jstack命令
6.3.7 jstatd命令
6.3.8 hprof工具
6.4 JConsole工具
6.4.1 JConsole連接Java程序
6.4.2 Java程序概況
6.4.3 內(nèi)存監(jiān)控
6.4.4 線程監(jiān)控
6.4.5 類加載情況
6.4.6 虛擬機(jī)信息
6.4.7 MBean管理
6.4.8 使用插件
6.5 Visual VM多合一工具
6.5.1 Visual VM連接應(yīng)用程序
6.5.2 監(jiān)控應(yīng)用程序概況
6.5.3 Thread Dump和分析
6.5.4 性能分析
6.5.5 快照
6.5.6 內(nèi)存快照分析
6.5.7 MBean管理
6.5.8 TDA使用
6.5.9 BTrace介紹
6.6 Visual VM對(duì)OQL的支持
6.6.1 Visual VM的OQL基本語(yǔ)法
6.6.2 內(nèi)置heap對(duì)象
6.6.3 對(duì)象函數(shù)
6.6.4 集合/統(tǒng)計(jì)函數(shù)
6.6.5 程序化OQL
6.7 MAT內(nèi)存分析工具
6.7.1 初識(shí)MAT
6.7.2 淺堆和深堆
6.7.3 支配樹(shù)(Dominator Tree)
6.7.4 垃圾回收根
6.7.5 內(nèi)存泄露檢測(cè)
6.7.6 最大對(duì)象報(bào)告
6.7.7 查找支配者
6.7.8 線程分析
6.7.9 集合使用情況分析
6.7.10 擴(kuò)展MAT
6.8 MAT對(duì)OQL的支持
6.8.1 Select子句
6.8.2 From子句
6.8.3 Where子句
6.8.4 內(nèi)置對(duì)象與方法
6.9 JProfile簡(jiǎn)介
6.9.1 JProfile使用配置
6.9.2 內(nèi)存視圖
6.9.3 堆快照
6.9.4 CPU視圖
6.9.5 線程視圖
6.9.6 JVM統(tǒng)計(jì)信息
6.9.7 觸發(fā)器
6.10 小結(jié)

編輯推薦

一個(gè)優(yōu)秀的程序員,不僅要會(huì)編寫(xiě)程序,更要會(huì)編寫(xiě)高質(zhì)量的程序感受Java開(kāi)發(fā)中的大智慧,讓你的Java程序更優(yōu)美專注于Java應(yīng)用程序的優(yōu)化方法、技巧和思想深入剖析軟件設(shè)計(jì)層面、代碼層面、JVM虛擬機(jī)層面的優(yōu)化方法理論結(jié)合實(shí)際,使用豐富的示例幫助讀者理解理論知識(shí)

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    Java程序性能優(yōu)化 PDF格式下載


用戶評(píng)論 (總計(jì)111條)

 
 

  •   本書(shū)從性能的角度講解從軟件設(shè)計(jì)、軟件編碼、JVM調(diào)優(yōu)以及程序故障排除等方面介紹針對(duì)Java程序的優(yōu)化方法。
  •   Java程序性能優(yōu)化——讓你的Java程序更快、更穩(wěn)定,好好看,會(huì)有很好的成果的。
  •   Java程序性能優(yōu)化——讓你的Java程序更快、更穩(wěn)定
  •   Java程序性能優(yōu)化是一本好書(shū),值得一看。
  •   作為java程序開(kāi)發(fā)者,如果只知道寫(xiě)流水一樣的代碼,那么你永遠(yuǎn)成為不了大牛。優(yōu)化?。?!每個(gè)程序員都必須重視優(yōu)化,從這本書(shū)里,我學(xué)到了很多以前不知道的優(yōu)化方法,真的受益匪淺呀??!
  •   聽(tīng)說(shuō)是本不錯(cuò)的書(shū),性能優(yōu)化對(duì)于java編程來(lái)說(shuō)還是挺重要的,希望有所幫助吧!
  •   讓你的Java程序更快、更穩(wěn)定
  •   這本書(shū)寫(xiě)的不錯(cuò),多于java代碼性能提升有幫助,正在學(xué)習(xí)中。
  •   會(huì)與Java程序還不行,還要寫(xiě)出高性能的程序。
  •   非常好的一本書(shū),有很多東西《effectivejava》(第二版)都沒(méi)講到,而且各個(gè)都跟著許多代碼講解!而且非常切合實(shí)際的開(kāi)發(fā)!不敢想象這是一個(gè)不怎么有名氣的國(guó)人葛一鳴寫(xiě)的,分析的很透徹,結(jié)合《java編程思想》(第四版)和《java技術(shù)核心卷一》很不錯(cuò)!本人單從書(shū)考慮,不論人(美國(guó)人,中國(guó)人,很多人就從心里貶低國(guó)人的作品,再加上清華出版社),覺(jué)得比《effectivejava》要好,因?yàn)榻榻B的非常全面,仔細(xì)!
  •   接觸java時(shí)間不短了總感覺(jué)寫(xiě)出的程序不太理想就買了這本書(shū),,,,
  •   不錯(cuò),對(duì)于java程序來(lái)說(shuō)是不錯(cuò)的建議。
  •   對(duì)于已經(jīng)很熟悉Java的程序員來(lái)說(shuō)很有幫助
  •   適合java中級(jí)開(kāi)發(fā)人員,對(duì)效率的追求
  •   幫同事買的,對(duì)于提高java代碼的效率很有用處
  •   java程序員經(jīng)典資料書(shū),講解很詳細(xì),很全面!
  •   是Java學(xué)習(xí)得必備之書(shū)
  •   是我最近看過(guò)算不錯(cuò)從底層講解java的書(shū)
  •   本書(shū)可以提高你對(duì)程序的優(yōu)化
  •   研究較為深入,還不錯(cuò)啦。不過(guò)有時(shí)候覺(jué)得如果程序要考慮那么多,那就煩死了~~?。?!
  •   調(diào)優(yōu)從三個(gè)角度,設(shè)計(jì)、代碼、系統(tǒng)。寫(xiě)的非常不錯(cuò)。遺憾的是書(shū)還沒(méi)看完就丟了。
  •   做了程序員這么久了,真不知道這些優(yōu)化方法,對(duì)我很實(shí)用,很好。
  •   基礎(chǔ)是核心,加深對(duì)概念的理解,實(shí)現(xiàn)優(yōu)化
  •   感覺(jué)還行,理論層面的
  •   對(duì)普通開(kāi)發(fā)人員的提高很有幫助
  •   對(duì)于一個(gè)想要提高自我能力的程序員很有幫助!
  •   給開(kāi)發(fā)工作提供了幫助
  •   非常好,合適初中級(jí)開(kāi)發(fā)人員往上提升
  •   看完前兩章,非常贊的一本書(shū),講的東西很實(shí)用也很深入
  •   書(shū)剛到,還沒(méi)有開(kāi)始看,對(duì)于關(guān)注代碼質(zhì)量的應(yīng)該值得一看
  •   這本書(shū)還可以,值得一讀,能系統(tǒng)地提高自己的能力。
  •   買回來(lái)第一天我就看了一大半,書(shū)中有很多關(guān)于作者多年一來(lái)的經(jīng)驗(yàn)還有很多新的知識(shí)在里面,非常不錯(cuò),喜歡這樣的書(shū)和這樣的寫(xiě)作風(fēng)格!支持一個(gè)
  •   講的淺顯易懂、但是不夠深入、全當(dāng)是長(zhǎng)見(jiàn)識(shí)用、還行
  •   學(xué)到了很多新技巧。。新知識(shí)
  •   工程師說(shuō)不錯(cuò)
  •   很不錯(cuò)的一本書(shū),值得好好的去閱讀一番,能提高自己不少的能力。
  •   快遞速度可以,書(shū)的紙張質(zhì)量也不錯(cuò),總體滿意。
  •   很不錯(cuò)的書(shū)了,里面的知識(shí)能幫到我
  •   在北六環(huán),送貨速度比較快,書(shū)的性價(jià)比很高
  •   內(nèi)容不錯(cuò),比較適合阿里系的人看
  •   學(xué)習(xí)中~~很好的書(shū)
  •   很好,如果能結(jié)合頁(yè)游來(lái)說(shuō),那就達(dá)到完美效果
  •   書(shū)看起來(lái)還不錯(cuò)!給商家頂一個(gè)
  •   受益頗深,值得看的一本書(shū)
  •   朋友推薦的,還不錯(cuò)。是初學(xué)者的比本書(shū)籍
  •   這本書(shū)很不錯(cuò)值得購(gòu)買
  •   非常喜歡這本書(shū),講的很細(xì),是我需要的
  •   感覺(jué)寫(xiě)的很不錯(cuò),里面有很多平時(shí)遇到的但是不知道怎么解決的問(wèn)題都提及到了,雖然我還沒(méi)有詳細(xì)看,但是感覺(jué)這本書(shū)買的還是挺值的。
  •   內(nèi)容挺有用的,平時(shí)工作中可以借鑒
  •   就是快遞送的時(shí)間有點(diǎn)晚了~都快晚上十點(diǎn)了!還好同事幫忙簽收
  •   這本確實(shí)是不錯(cuò),值得一看。
  •   這書(shū)還可以這書(shū)還可以
  •   挺不錯(cuò)的,挺實(shí)用的,推薦
  •   一本不錯(cuò)的書(shū),主題很明確,
  •   尋覓已久的好書(shū)啊,終于等到了。
  •   很高深啊。只認(rèn)識(shí)字。不知道在說(shuō)什么。文科看不懂。
  •   很好,很經(jīng)典。需要細(xì)細(xì)研讀
  •   這個(gè)書(shū)真的很好啊這個(gè)書(shū)真的很好啊
  •   書(shū)挺好的,推薦下
  •   講的還是蠻好的,比較實(shí)用。
  •   書(shū)還沒(méi)有看,發(fā)貨速度很快哦
  •   不錯(cuò),還打折,很劃算。上午下的單下午就到了,很快。
  •   快遞很給力,書(shū)籍也很新!
  •   書(shū)很好,看了之后受益匪淺啊
  •   書(shū)籍內(nèi)容好,送貨速度快!
  •   very good,可以學(xué)到很多東西
  •   書(shū)內(nèi)容不錯(cuò),值得買來(lái)閱讀~!
  •   剛到手。還沒(méi)有看
  •   幫朋友買的不清楚
  •   幫老公買的。老公說(shuō)這是經(jīng)典的書(shū)。
  •   簡(jiǎn)單看了目錄,正是想了解的,詳細(xì)的有待進(jìn)一步研讀。
  •   很詳細(xì),不錯(cuò),推薦
  •   書(shū)還是不錯(cuò)的,比較好懂~
  •   剛拿到,還未讀,應(yīng)該會(huì)不錯(cuò)
  •   翻了翻目錄,不錯(cuò)
  •   書(shū)的內(nèi)容不在多少,只要有一條對(duì)自己有用就夠了
  •   講的不錯(cuò),學(xué)了不少東西。
  •   第一頁(yè)就有錯(cuò)別字!
  •   還沒(méi)有讀,不過(guò)在圖書(shū)館看過(guò),感覺(jué)還可以.
  •   沒(méi)開(kāi)始讀呢,不知怎樣
  •   書(shū)是好書(shū),不過(guò)下了訂單之后顯示當(dāng)天就能送到,結(jié)果第二天才送到的。
  •   寫(xiě)的不錯(cuò)。值得一看
  •   老公要用的,所以才買的,聽(tīng)老公說(shuō)挺好的~
  •   真的不錯(cuò)哦,書(shū)都挺新的。
  •   還行吧!物流挺快
  •   書(shū)很好。內(nèi)容非常實(shí)用。
  •   不錯(cuò) 看看 之前就想買了
  •   還沒(méi)看,看后再評(píng)價(jià)。。
  •   對(duì)分析java程序性能很有幫助
  •   作為JAVA程序員,性能優(yōu)化是必修課。
  •   作者通過(guò)簡(jiǎn)單易懂的例子,介紹如何駕馭Java如何解決性能問(wèn)題,是一本好書(shū)。
  •   java程序員必備java程序員必備java程序員必備java程序員必備
  •   對(duì)我正在學(xué)習(xí)java有很大的幫助
  •   漫長(zhǎng)的java之旅多了一件事
  •   很不錯(cuò)的一本書(shū),看了對(duì)性能的優(yōu)化有一定的思路,不再像以前一樣沒(méi)有連貫的理論了。
  •   從某個(gè)專題講開(kāi),介紹相關(guān)的知識(shí),這樣的組織很不錯(cuò)。設(shè)計(jì)模式那塊,從性能方法來(lái)談為什么用模式,很有感悟。
  •   這本書(shū)梳理了一些實(shí)用,常用的優(yōu)化技巧??僧?dāng)做基礎(chǔ)只是的整理。內(nèi)容不是非常深。
  •   收到這本書(shū)后大致看了一下里面的內(nèi)容,總體感覺(jué)還不錯(cuò),書(shū)的紙張也還好,里面的內(nèi)容也很實(shí)用,適合有一定開(kāi)發(fā)經(jīng)驗(yàn)又急于提高自己實(shí)戰(zhàn)技術(shù)的開(kāi)發(fā)人員,總體感覺(jué)還不錯(cuò),就是下單后發(fā)貨速度有些落后了!
  •   內(nèi)容挺廣的,但是不夠深入??偟脕?lái)說(shuō)還可以,四星吧。
  •   圖示質(zhì)量不錯(cuò),正在閱讀,很有指導(dǎo)意義,贊一個(gè)!
 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7