內容簡介 行為引起的問題很「簡單」,困難的是由狀態引起的問題 —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實務。 產品目錄 前言 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 作者:蔡明志 出版社:全華 出版日期:2017/10/13 ISBN:9789864636365 內容簡介 1.圖解範例豐富:本書使用大量範例和圖解,讓讀者能從這些實用範例中,輕鬆了解到資料結構的精髓。 2.內容淺顯易懂:本書內文詳盡充實,作者並以循序漸進的手法和淺顯易懂的文辭,來解說資料結構較艱澀的部分,相信能讓初學者更快進入到資料結構的世界中。 3.隨時自我檢測:豐富的測驗題,讓讀者學習完每個單元後,便能自我檢測是否了解該單元的內容。 ■ 內容簡介 「資料結構」在資訊學科中是一門重要的課程。本書的內容依不同的主題共分為14章,在各章的每一小節中均附有練習題及類似題,旨在讓讀者測試對該小節所談及的內容是否已全盤了解。在各章末有「動動腦時間」,並標註與該題的相關章節。每章的重要主題均附有範例程式加以測試,以期讓讀者對理論能有進一步的認識與了解。 目錄 第一章 演算法分析 1.1 演算法 1.2 Big-O 1.3 動動腦時間 第二章 陣列 2.1 陣列的表示法 2.2 上三角形和下三角形表示法 2.3 多項式表示法 2.4 魔術方陣 2.5 動動腦時間 第三章 堆疊與佇列 3.1 堆疊和佇列基本觀念 3.2 堆疊的加入與刪除 3.3 佇列的加入與刪除 3.4 環狀佇列 3.5 堆疊與佇列的應用 3.6 如何計算後序表示法 3.7 動動腦時間 第四章 鏈結串列 4.1 單向鏈結串列 4.2 環狀串列 4.3 雙向鏈結串列 4.4 鏈結串列之應用 4.5 動動腦時間 第五章 遞 迴 5.1 一些遞迴基本範例 5.2 一個典型的遞迴範例:河內塔 5.3 另一個範例:八個皇后 5.4 何時不要使用遞迴? 5.5 動動腦時間 第六章 樹狀結構 6.1 樹狀結構的一些專有名詞 6.2 二元樹 6.3 二元樹的表示法 6.4 二元樹的追蹤 6.5 引線二元樹 6.6 其他議題 6.7 動動腦時間 第七章 二元搜尋樹 7.1 何謂二元搜尋樹 7.2 二元搜尋樹的加入 7.3 二元搜尋樹的刪除 7.4 動動腦時間 第八章 堆積 8.1 何謂堆積 8.2 何謂min-heap 8.3 min-max heep 8.4 Deap 8.5 動動腦時間 第九章 高度平衡二元搜尋樹 9.1 何謂高度平衡二元搜尋樹 9.2 AVL-tree的加入 9.3 AVL-tree的刪除 9.4 動動腦時間 第十章 2-3tree與2-3-4tree 10.1 2-3 tree 10.2 2-3-4 tree 10.3 動動腦時間 第十一章 B-tree 11.1 m-way搜尋樹 11.2 B-tree 11.3 動動腦時間 第十二章 圖形結構 12.1 圖形的一些專有名詞 12.2 圖形資料結構表示法 12.3 圖形追蹤 12.4 擴展樹 12.5 最短路徑 12.6 拓樸排序 12.7 臨界路徑法 12.8 動動腦時間 第十三章 排序 13.1 氣泡排序 13.2 選擇排序 13.3 插入排序 13.4 合併排序 13.5 快速排序 13.6 堆積排序 13.7 二元樹排序 13.8 謝耳排序 13.9 基數排序 13.10 動動腦時間 第十四章 搜尋 14.1 循序搜尋 14.2 二元搜尋 14.3 雜湊 14.4 動動腦時間
類似書籍推薦給您
【簡介】 本書為作者基於多年程式設計課程之教學實踐與學生學習歷程的觀察與回饋,編撰而成。書中以簡明的語言、完整的範例與圖解搭配章節進程,逐步拆解程式語言的結構與觀念,引導讀者循序漸進地掌握程式設計的基礎能力,並奠定以Java語言為核心的邏輯思維與應用實作基礎,做為邁向軟體開發與資訊應用之路的第一步。 全書共14章,第一章說明Java程式語言的起源與發展,協助讀者掌握其在資訊科技中的定位與優勢。第二章介紹整合開發環境的操作方式,包含JDK安裝、Eclipse等主流工具的基本操作,使初學者快速上手並能建立有效的開發流程。第三章至第六章逐步鋪陳程式設計的邏輯架構,從變數與資料型態的處理,到條件判斷的基本與進階應用,建立讀者理解控制流程的基礎能力。第七章則聚焦於程式的執行過程、錯誤追蹤與除錯技巧,幫助學習者養成獨立解決問題的實務能力。 在第八章與第九章中,書中介紹迴圈與巢狀迴圈的應用情境與技巧,透過逐步練習強化重複運算的設計能力。第十章整合常用的數學函式與Java內建方法,加強數值處理能力;第十一章則闡述方法(Method)的模組化設計,提升程式的重用性與可維護性。第十二與十三章延伸至一維與多維陣列的操作技巧,搭配圖示與實作幫助讀者靈活處理資料結構。第十四章介紹例外處理機制,強調撰寫具備容錯性與穩健性之程式的重要性。 本書主要為大專院校課程需求設計編寫,書中不提供解答,出版社與銷售單位均無法提供解答,自學讀者選購前請知悉。 【目錄】 Chapter 01 Java程式語言之發展 1-1 Java程式語言源起 1-2 Java技術的應用範疇及場域 作業 Chapter 02 Java程式整合開發環境 2-1 整合開發環境介紹 2-2 OnlineGDB 2-3 Eclipse IDE 作業 Chapter 03 程式設計概念與Java程式設計 3-1 結構化程式設計 3-2 物件導向程式設計 3-3 結構化程式與物件導向程式之異同 作業 Chapter 04 變數、資料型態與輸入/輸出處理 4-1 變數與識別字 4-2 運算元、運算子與運算式 4-3 運算式解析與優先權 4-4 數值型態轉換 4-5 鍵盤輸入與顯示訊息 作業 Chapter 05 選擇控制基礎概念 5-1 選擇結構與程式執行流程 5-2 邏輯與條件判斷 5-3 if-else與 if 敘述 5-4 if-else-if巢狀選擇結構 5-5 選擇結構區塊與if-else 配對 程式實作演練 作業 Chapter 06 選擇控制進階概念 6-1 switch敘述 6-2 break 與 switch敘述 6-3 switch vs. if-else:適用情境與應用案例 6-4 switch 與 if-else 的整合應用 程式實作演練 作業 Chapter 07 程式執行、追蹤與除錯 7-1 Java程式的執行過程 7-2 使用Debug工具進行程式追蹤 7-3 常見的程式錯誤與除錯技巧 作業 Chapter 08 選擇控制進階概念 8-1 迴圈的概念 8-2 while 迴圈 8-3 迴圈控制方式:計數器控制與哨兵控制 8-4 for 迴圈 8-5 do-while 迴圈 程式實作演練 作業 Chapter 09 巢狀迴圈設計與進階應用 9-1 巢狀迴圈 9-2 嵌入break 與 continue 敘述 9-3 迴圈與選擇控制的整合應用 程式實作演練 作業 Chapter 10 數學函式與內建方法 10-1 Java內建數學套件:Math類別 10-2 Math類別程式案例 程式實作演練 作業 Chapter 11 方法 11-1 方法的概念和用途 11-2 方法的呼叫、參數傳遞,以及返回值 11-3 跨類別的方法呼叫 11-4 方法的重載 11-5 遞迴 程式實作演練 作業 Chapter 12 一維陣列 12-1 陣列的概念 12-2 陣列宣告和初始化 12-3 存取和修改陣列元素 12-4 使用迴圈操作陣列 12-5 排序和搜尋的應用 程式實作演練 作業 Chapter 13 多維陣列 13-1 為何需要多維陣列 13-2 二維陣列的初始化與存取 13-3 二維陣列的應用 13-4 三維陣列及多維陣列 13-5 類別java.util.Arrays 程式實作演練 作業 Chapter 14 例外處理 14-1 Java例外處理框架 14-2 try-catch區塊與throw 運作機制 14-3 try-catch-finally區塊運作機制 程式實作演練 作業 參考文獻
類似書籍推薦給您
【簡介】 本書的編譯環境採用最單純的JDK環境,只要使用記事本就可以輕鬆編輯Java程式。本書結合程式語言暢銷書的優點,以入門者的角度介紹全書內容,配合適當範例,降低學習的障礙。書中重要的觀念都有「示意圖」互相對照,各章也安排了習題,以期有更多觀念加強與練習。不僅讓你瞭解如何撰寫Java程式,更在學習過程中加強運算思維能力及演算邏輯訓練。本書適用對象為高中職程式設計的相關課程及學習Java程式入門的讀者。精彩篇幅如下: ● 我的第一個Java程式 ● 基本資料處理 ● 認識流程控制 ● 程序與函數簡介 ● 大話陣列結構 ● 細說字元與字串 【目錄】 第一章 我的第一個Java程式 1-1 程式語言簡介 1-2 演算法與流程圖 1-3 程式設計邏輯簡介 1-4 Java語言的特性 1-5 解析Java程式 本章課後評量 第二章 基本資料處理 2-1 資料型態介紹 2-2 變數與常數 2-3 基本輸入與輸出功能 2-4 資料型態的轉換 2-5 運算式與運算子 本章課後評量 第三章 流程控制的奧妙 3-1 認識流程控制 3-2 條件式與條件運算子 3-3 計數迴圈與條件迴圈 3-4 跳躍式控制敘述 本章課後評量 第四章 程序與函數簡介 4-1 結構化程式設計與模組化 4-2 建立類別方法 4-3 類別變數與變數範圍簡介 4-4 分治演算法與遞迴函數 本章課後評量 第五章 大話陣列結構 5-1 陣列簡介 5-2 多維陣列 5-3 陣列應用與物件類別 5-4 Arrays類別 5-5 矩陣相加 5-6 氣泡排序法 本章課後評量 第六章 細說字元與字串 6-1 字元的宣告 6-2 字串類別 6-3 String類別與方法 本章課後評量 附錄A Java的開發環境與架構 A-1 程式開發工具介紹 A-2 JDK下載與安裝 A-3 JDK搜尋路徑的環境設定 課後評量解答
類似書籍推薦給您
深入淺出Java程式設計(第三版) 系列名:程式設計/APP開發 ISBN13:9786263244924 替代書名:Head First Java 3/E 出版社:美商歐萊禮 作者:Kathy Sierra;Bert Bates;Trisha Gee 譯者:黃銘偉 裝訂/頁數:平裝/756頁 規格:22.8cm*20.5cm*3.7cm (高/寬/厚) 版次:2 出版日:2023/05/18 內容簡介 涵蓋Java 8-17 邁向程式設計實務的學習指南 「多麼有趣和奇特的書啊!我教了多年的Java,可以誠實地說,這是我見過最吸引人的程式設計學習資源。它讓我想重新學習Java。」 —Angie Jones, Java Champion 「判斷一個教程價值的唯一方法是看它的教學效果如何。《深入淺出Java程式設計》在教學方面表現出色。」 —slashdot.org 「這肯定是深入淺出的時候了。」—Scott McNealy Sun Microsystems前董事長、總裁與CEO 你將從本書學到什麼? 《深入淺出Java程式設計》是Java和物件導向程式設計的完整學習體驗。透過這本書,你將用一種獨特的方法來學習Java語言,超越了所謂的how-to操作手冊,幫助你成為一名卓越的程式設計師。透過拼圖、解謎和對著名Java物件的深入探討,你將迅速掌握Java的基礎知識和進階主題,包括 lambda、串流、泛型、執行緒、網路和令人敬畏的桌面GUI。如果你有其他程式語言的經驗,這本書將以更現代的程式設計方法啟發你的大腦,帶你進入更圓融、更快速、更容易閱讀、編寫和維護的Java。 本書為何如此與眾不同? 如果你讀過深入淺出系列書籍,你就會知道該期待什麼:針對你大腦運作方式所設計的豐富視覺格式。如果你沒有讀過,那你將大飽眼福。《深入淺出Java程式設計》採取專為大腦運作而設計的豐富視覺化風格,而不是令你昏昏欲睡的冗贅敘述。 目錄 第一章 突破表面:快速導覽 第二章 物件村之旅:類別與物件 第三章 了解你的變數:原始型別值和參考 第四章 物件的行為:方法使用實體變數 第五章 超強度方法:撰寫一個程式 第六章 使用 Java 程式庫:認識 Java API 第七章 在物件村中生活得更好:繼承與多型 第八章 認真的多型:介面和抽象類別 第九章 一個物件的生與死:建構器和垃圾回收 第十章 數字很重要:數值和靜態值 第十一章 資料結構:群集和泛型 第十二章 做什麼(What),而非怎麼做(How):lambdas 和 streams 第十三章 危險行為:例外處理 第十四章 一個非常圖像化的故事:GUI、事件處理和內層類別的簡介 第十五章 練習你的 Swing(揮杆):使用 swing 第十六章 儲存物件(和文字):序列化和檔案 I/O 第十七章 建立連線:網路和執行緒 第十八章 處理共時性問題:競態狀況和不可變的資料 附錄 A 最後的程式碼廚房 附錄 B 沒有進到本書中其他部分的十大主題
資訊
工程
數學與統計學
機率與統計
自然科學
健康科學
地球與環境
建築、設計與藝術
人文與社會科學
教育
語言學習與考試
法律
會計與財務
大眾傳播
觀光與休閒餐旅
考試用書
研究方法
商業與管理
經濟學
心理學
生活
生活風格商品
參考書/測驗卷/輔材