×
Java程式設計師應該知道的97件事|來自專家的集體智慧
作者: Kevlin Henney, Trisha Gee
譯者:黃詩涵
書號: A533
出版日: 2021/01/20
ISBN:9789865027148
附件: 無
定價: 450
電子書: 未出版
內容特色
行為引起的問題很「簡單」,困難的是由狀態引起的問題
—Edson Yanaga

學習Java慣用寫法並且儲存在大腦的快取記憶體裡
—Jeanne Boyarsky

從JVM績效的觀點看Java程式設計
—Monica Beckwith

垃圾回收機制是你的好朋友
—Holly Cummins

Java之中難以說明的匿名型態
—Ben Evans

浴火重生的Java
—Sander Mak

你知道現在幾點嗎?
—Christin Gorman

如果你希望精進Java技術能力,這本教戰手冊提供了來自Java生態系統裡多位頂尖高手根據自身實務經驗淬鍊而出的專家建議。本書鼓勵你學習新技巧、以新方法審視問題、負起工作責任以及努力精通程式設計工藝,藉此精益求精。

《Java程式設計師應該知道的97件事》由資深程式人Kevlin Henney、Trisha Gee彙編,反映出程式人撰寫Java軟體以及他們與軟體開發流程共處時累積的人生經驗。本書邀請多位優秀程式設計師分享他們的集體智慧,不論你的工作是處理舊有系統或是在Java 8釋出之後,穩定整併資料流的變化,本書都期盼他們的智慧能幫助你思考、重新省思Java實務。
作者介紹
Kevlin Henney 同時身兼獨立顧問和訓練師,他的專長為設計模式、架構、程式設計技巧、程式語言以及開發流程與實務。

Trisha Gee 為Java Champion成員之一,她的工作經歷遍及多種產業,包含金融業、製造業、教育界和科技產業,而且熱衷於幫助開發人員提高生產力。
章節目錄
前言
1. 你只需要Java -- Anders Norås
2. 認定測試 -- Emily Bache
3. 利用AsciiDoc 強化Javadoc -- James Elliott
4. 請特別注意容器周遭的環境 -- David Delabassee
5. 行為引起的問題很「簡單」,困難的是由狀態引起的問題 -- Edson Yanaga
6. 基準測試很難,但JMH 能幫助你完成 -- Michael Hunger
7. 程式碼結構品質程式化與驗證的優點 -- Daniel Bryant
8. 將問題和任務拆解成小的工作區塊 -- Jeanne Boyarsky
9. 建立多元化的團隊 -- Ixchel Ruiz
10. 編譯過程不需要漫長等待和不可靠性 -- Jenn Strater
11. 「但是,它可以在我的機器上執行!」 -- Benjamin Muschko
12. 反對過大的JAR 的檔案 -- Daniel Bryant
13. 程式碼修復師 -- Abraham Marin-Perez
14. Java 虛擬機器上的並行性 -- Mario Fusco
15. CountDownLatch 物件是朋友還是敵人? -- Alexey Soshin
16. 宣告式表達是通往平行計算的道路 -- Russel Winder
17. 提高軟體交付的速度與品質 -- Burk Hufnagel
18. 你知道現在幾點嗎?-- Christin Gorman
19. 別讓整合開發環境掩蓋必備的開發工具 -- Gail Ollis
20. 不要更改你的變數 -- Steve Freeman
21. 擁抱SQL 思維 -- Dean Wampler
22. 處理Java 元件之間的事件關係 -- A.Mahdy AbdelAziz
23. 回饋循環 -- Liz Keogh
24. 在所有引擎上燃起火焰 -- Michael Hunger
25. 遵循乏味無趣的標準-- Adam Bien
26. 提高發布的頻率可以降低風險-- Chris O’Dell
27. 從解決難題到開發產品 --Jessica Kerr
28. 「全端開發人員」是一種心態 -- Maciej Walkowiak
29. 垃圾回收機制是你的好朋友 -- Holly Cummins
30. 使用更好的命名規則 -- Peter Hilton
31. 嘿,Fred。你能把HashMap 遞給我嗎? -- Kirk Pepperdine
32. 避免使用null -- Carlos Obregón
33. 如何擊潰Java 虛擬機器 -- Thomas Ronzon
34. 利用持續交付提升部署流程的重複性與稽核性-- Billy Korando
35. Java 為何能在程式語言戰爭中佔有一席之地-- Jennifer Reif
36. 認識Java 的內聯概念 -- Patricia Aas
37. Kotlin 與Java 之間的互通性-- Sebastiano Poggi
38. 我完成了,可是⋯⋯ -- Jeanne Boyarsky
39. Java 認證:技術試金石 -- Mala Gupta
40. Java 是90 年代的孩子 -- Ben Evans
41. 從JVM 效能的觀點看Java 程式設計 -- Monica Beckwith
42. Java 應該讓每個人都覺得有趣- - Holly Cummins
43. Java 之中難以說明的匿名型態 -- Ben Evans
44. JVM 為多重典範平台:請利用這項特性提升你的程式設計技巧 -- Russel Winder
45. 掌握脈動,跟緊潮流 -- Trisha Gee
46. 註解的種類 -- Nicolai Parlog
47. 認識flatMap 方法 -- Daniel Hinojosa
48. 認識Java 集合框架 -- Nikhil Nanivadekar
49. 請來試試時下最夯的Kotlin -- Mike Dunn
50. 學習Java 慣用寫法並且儲存在大腦的快取記憶體裡 -- Jeanne Boyarsky
51. 學習建立程式套路,教學相長 -- Donald Raab
52. 請學著愛上傳統系統裡的程式碼 -- Uberto Barbini
53. 學習使用Java 新特性 -- Gail C. Anderson
54. 學習使用IDE 來減輕認知負荷 -- Trisha Gee
55. 讓我們立下約定:Java API 的設計藝術 -- Mario Fusco
56. 讓程式碼簡潔又好懂 -- Emily Jiang
57. 讓你的Java 程式Groovy 化 -- Ken Kousen
58. 建立最低限度的建構函式 -- Steve Freeman
59. 請為時間函式作適當的命名 -- Kevlin Henney
60. 產業級技術之必要性 -- Paul W. Homer
61. 只要編譯有改變的部分,其餘不變的部分則重複利用 -- Jenn Strater
62. 開放原始碼專案沒那麼神 -- Jenn Strater
63. Monad 設計模式──Optional 雖然違反定律,卻是一個好用的型態 -- Nicolai Parlog
64. 按照功能所設定的預設存取修飾字來封裝類別 -- Marco Beelen
65. 生產環境是地球上最快樂的地方 -- Josh Long
66. 寫出有效的單元測試程式 -- Kevlin Henney
67. 建議你每日研讀OpenJDK 的原始碼 -- Heinz M. Kabutz
68. 知其然,更要知其所以然 -- Rafael Benevides
69. 浴火重生的Java -- Sander Mak
70. 透過Clojure 語言重新認識JVM -- James Elliott
71. 將布林值重構為列舉型態 -- Peter Hilton
72. 重構有助於提高閱讀程式碼的速度 -- Benjamin Muskalla
73. 簡化Value 物件 -- Steve Freeman
74. 請細心呵護你的模組宣告 -- Nicolai Parlog
75. 妥善管理相依性 -- Brian Vermeer
76. 請認真推行「關注點分離」原則 -- Dave Farley
77. 技術面試是一項值得培養的技能 -- Trisha Gee
78. 測試驅動開發 -- Dave Farley
79. JDK 在bin 目錄下提供了很棒的工具 -- Rod Hilton
80. 多方學習不同於Java 的思維 -- Ian F. Darwin
81. 談協同程序的運用思維 -- Dawn Griffiths、David Griffiths
82. 請將執行緒視為基礎設施的一環 -- Russel Winder
83. 真正優秀的開發人員會具備三項特質 -- Jannah Patchay
84. 權衡微服務之利弊 -- Kenny Bastani
85. 非受檢例外 -- Kevlin Henney
86. 開啟容器化整合測試潛藏的力量 -- Kevin Wittek
87. 模糊測試超乎常理地有效 -- Nat Pryce
88. 利用覆蓋率改善單元測試 -- Emily Bache
89. 廣泛利用自定義的@ID 註解型別 -- Mark Richards
90. 利用測試提高交付軟體的品質與速度 -- Marit van Dijk
91. 在測試程式碼中使用物件導向原則 -- Angie Jones
92. 利用社群的力量來提升你的職涯 -- Sam Hepburn
93. 何謂Java 社群參與流程計畫及其參與方式 -- Heather VanCura
94. 為什麼我認為Java 認證沒有價值 -- Colin Vipurs
95. 請以一句話表達註解內容 -- Peter Hilton
96. 請寫出「淺顯易懂的程式碼」-- Dave Farley
97. 新生代與古生代資料的垃圾回收機制 -- María Arias de Reyna
作者群
索引
Java程式設計師應該知道的97件事|來自專家的集體智慧 分享
  • 作者: Kevlin Henney, Trisha Gee
  • 書號:A533
  • ISBN:9789865027148
  • 出版日:2021/01/20
  • 定價:$ 450
  • 電子書:已出版
  • 購買紙本書

    內容特色
    行為引起的問題很「簡單」,困難的是由狀態引起的問題
    —Edson Yanaga

    學習Java慣用寫法並且儲存在大腦的快取記憶體裡
    —Jeanne Boyarsky

    從JVM績效的觀點看Java程式設計
    —Monica Beckwith

    垃圾回收機制是你的好朋友
    —Holly Cummins

    Java之中難以說明的匿名型態
    —Ben Evans

    浴火重生的Java
    —Sander Mak

    你知道現在幾點嗎?
    —Christin Gorman

    如果你希望精進Java技術能力,這本教戰手冊提供了來自Java生態系統裡多位頂尖高手根據自身實務經驗淬鍊而出的專家建議。本書鼓勵你學習新技巧、以新方法審視問題、負起工作責任以及努力精通程式設計工藝,藉此精益求精。

    《Java程式設計師應該知道的97件事》由資深程式人Kevlin Henney、Trisha Gee彙編,反映出程式人撰寫Java軟體以及他們與軟體開發流程共處時累積的人生經驗。本書邀請多位優秀程式設計師分享他們的集體智慧,不論你的工作是處理舊有系統或是在Java 8釋出之後,穩定整併資料流的變化,本書都期盼他們的智慧能幫助你思考、重新省思Java實務。
    作者介紹
    Kevlin Henney 同時身兼獨立顧問和訓練師,他的專長為設計模式、架構、程式設計技巧、程式語言以及開發流程與實務。

    Trisha Gee 為Java Champion成員之一,她的工作經歷遍及多種產業,包含金融業、製造業、教育界和科技產業,而且熱衷於幫助開發人員提高生產力。
    章節目錄
    前言
    1. 你只需要Java -- Anders Norås
    2. 認定測試 -- Emily Bache
    3. 利用AsciiDoc 強化Javadoc -- James Elliott
    4. 請特別注意容器周遭的環境 -- David Delabassee
    5. 行為引起的問題很「簡單」,困難的是由狀態引起的問題 -- Edson Yanaga
    6. 基準測試很難,但JMH 能幫助你完成 -- Michael Hunger
    7. 程式碼結構品質程式化與驗證的優點 -- Daniel Bryant
    8. 將問題和任務拆解成小的工作區塊 -- Jeanne Boyarsky
    9. 建立多元化的團隊 -- Ixchel Ruiz
    10. 編譯過程不需要漫長等待和不可靠性 -- Jenn Strater
    11. 「但是,它可以在我的機器上執行!」 -- Benjamin Muschko
    12. 反對過大的JAR 的檔案 -- Daniel Bryant
    13. 程式碼修復師 -- Abraham Marin-Perez
    14. Java 虛擬機器上的並行性 -- Mario Fusco
    15. CountDownLatch 物件是朋友還是敵人? -- Alexey Soshin
    16. 宣告式表達是通往平行計算的道路 -- Russel Winder
    17. 提高軟體交付的速度與品質 -- Burk Hufnagel
    18. 你知道現在幾點嗎?-- Christin Gorman
    19. 別讓整合開發環境掩蓋必備的開發工具 -- Gail Ollis
    20. 不要更改你的變數 -- Steve Freeman
    21. 擁抱SQL 思維 -- Dean Wampler
    22. 處理Java 元件之間的事件關係 -- A.Mahdy AbdelAziz
    23. 回饋循環 -- Liz Keogh
    24. 在所有引擎上燃起火焰 -- Michael Hunger
    25. 遵循乏味無趣的標準-- Adam Bien
    26. 提高發布的頻率可以降低風險-- Chris O’Dell
    27. 從解決難題到開發產品 --Jessica Kerr
    28. 「全端開發人員」是一種心態 -- Maciej Walkowiak
    29. 垃圾回收機制是你的好朋友 -- Holly Cummins
    30. 使用更好的命名規則 -- Peter Hilton
    31. 嘿,Fred。你能把HashMap 遞給我嗎? -- Kirk Pepperdine
    32. 避免使用null -- Carlos Obregón
    33. 如何擊潰Java 虛擬機器 -- Thomas Ronzon
    34. 利用持續交付提升部署流程的重複性與稽核性-- Billy Korando
    35. Java 為何能在程式語言戰爭中佔有一席之地-- Jennifer Reif
    36. 認識Java 的內聯概念 -- Patricia Aas
    37. Kotlin 與Java 之間的互通性-- Sebastiano Poggi
    38. 我完成了,可是⋯⋯ -- Jeanne Boyarsky
    39. Java 認證:技術試金石 -- Mala Gupta
    40. Java 是90 年代的孩子 -- Ben Evans
    41. 從JVM 效能的觀點看Java 程式設計 -- Monica Beckwith
    42. Java 應該讓每個人都覺得有趣- - Holly Cummins
    43. Java 之中難以說明的匿名型態 -- Ben Evans
    44. JVM 為多重典範平台:請利用這項特性提升你的程式設計技巧 -- Russel Winder
    45. 掌握脈動,跟緊潮流 -- Trisha Gee
    46. 註解的種類 -- Nicolai Parlog
    47. 認識flatMap 方法 -- Daniel Hinojosa
    48. 認識Java 集合框架 -- Nikhil Nanivadekar
    49. 請來試試時下最夯的Kotlin -- Mike Dunn
    50. 學習Java 慣用寫法並且儲存在大腦的快取記憶體裡 -- Jeanne Boyarsky
    51. 學習建立程式套路,教學相長 -- Donald Raab
    52. 請學著愛上傳統系統裡的程式碼 -- Uberto Barbini
    53. 學習使用Java 新特性 -- Gail C. Anderson
    54. 學習使用IDE 來減輕認知負荷 -- Trisha Gee
    55. 讓我們立下約定:Java API 的設計藝術 -- Mario Fusco
    56. 讓程式碼簡潔又好懂 -- Emily Jiang
    57. 讓你的Java 程式Groovy 化 -- Ken Kousen
    58. 建立最低限度的建構函式 -- Steve Freeman
    59. 請為時間函式作適當的命名 -- Kevlin Henney
    60. 產業級技術之必要性 -- Paul W. Homer
    61. 只要編譯有改變的部分,其餘不變的部分則重複利用 -- Jenn Strater
    62. 開放原始碼專案沒那麼神 -- Jenn Strater
    63. Monad 設計模式──Optional 雖然違反定律,卻是一個好用的型態 -- Nicolai Parlog
    64. 按照功能所設定的預設存取修飾字來封裝類別 -- Marco Beelen
    65. 生產環境是地球上最快樂的地方 -- Josh Long
    66. 寫出有效的單元測試程式 -- Kevlin Henney
    67. 建議你每日研讀OpenJDK 的原始碼 -- Heinz M. Kabutz
    68. 知其然,更要知其所以然 -- Rafael Benevides
    69. 浴火重生的Java -- Sander Mak
    70. 透過Clojure 語言重新認識JVM -- James Elliott
    71. 將布林值重構為列舉型態 -- Peter Hilton
    72. 重構有助於提高閱讀程式碼的速度 -- Benjamin Muskalla
    73. 簡化Value 物件 -- Steve Freeman
    74. 請細心呵護你的模組宣告 -- Nicolai Parlog
    75. 妥善管理相依性 -- Brian Vermeer
    76. 請認真推行「關注點分離」原則 -- Dave Farley
    77. 技術面試是一項值得培養的技能 -- Trisha Gee
    78. 測試驅動開發 -- Dave Farley
    79. JDK 在bin 目錄下提供了很棒的工具 -- Rod Hilton
    80. 多方學習不同於Java 的思維 -- Ian F. Darwin
    81. 談協同程序的運用思維 -- Dawn Griffiths、David Griffiths
    82. 請將執行緒視為基礎設施的一環 -- Russel Winder
    83. 真正優秀的開發人員會具備三項特質 -- Jannah Patchay
    84. 權衡微服務之利弊 -- Kenny Bastani
    85. 非受檢例外 -- Kevlin Henney
    86. 開啟容器化整合測試潛藏的力量 -- Kevin Wittek
    87. 模糊測試超乎常理地有效 -- Nat Pryce
    88. 利用覆蓋率改善單元測試 -- Emily Bache
    89. 廣泛利用自定義的@ID 註解型別 -- Mark Richards
    90. 利用測試提高交付軟體的品質與速度 -- Marit van Dijk
    91. 在測試程式碼中使用物件導向原則 -- Angie Jones
    92. 利用社群的力量來提升你的職涯 -- Sam Hepburn
    93. 何謂Java 社群參與流程計畫及其參與方式 -- Heather VanCura
    94. 為什麼我認為Java 認證沒有價值 -- Colin Vipurs
    95. 請以一句話表達註解內容 -- Peter Hilton
    96. 請寫出「淺顯易懂的程式碼」-- Dave Farley
    97. 新生代與古生代資料的垃圾回收機制 -- María Arias de Reyna
    作者群
    索引