新到貨2本75折
程序員超強大腦

程序員超強大腦

  • 定價:539
  • 優惠價:87469
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

為什麼你在寫代碼時總會遇到這樣或那樣的問題?為什麼你總是記錯某些語法?為什麼有些人能夠快速學會新的程式設計語言,而有些人則不能?在試圖解決困難或複雜的問題時,我們的大腦其實有一套特定的工作方式。
 
本書從認知科學角度剖析優秀程式設計背後的腦科學原理,為你揭開大腦思考程式設計的奧秘。
 
本書分為四大部分,共有13章。你將瞭解如下內容:如何高效地學習新的程式設計語言,如何快速地理解複雜的代碼,如何牢固地記住各種語法,如何在繁雜的程式設計工作中優化認知資源。

本書是程式師的普適書,初學程式設計的初高中生也可以閱讀。

 

作者介紹

費莉安·赫爾曼斯(Felienne Hermans),荷蘭萊頓大學副教授,致力於研究人類如何利用認知科學快速、有效地學習程式設計語言。費莉安對ChatGPT給軟體工程領域帶來的深遠影響有獨到見解,多次就這一話題接受媒體專訪。她是TC39(JavaScript標準委員會)成員,還自創了Hedy程式設計語言。
 
譯者簡介
 
蔣楠 出身電子與電腦工程專業的高級技術產品經理,負責C端產品的規劃和設計,對演算法和資料密集型應用同樣興趣濃厚。兼具科技圖書譯者、馬拉松跑者、航太愛好者等多重身份,譯作包括《電腦簡史(第三版)》《電腦科學精粹》等。

 

目錄

第一部分 代碼閱讀

第 1章 剖析程式設計之惑 2

1.1 代碼造成的各種困惑 2

1.1.1 第 一種困惑:缺乏知識 3

1.1.2 第二種困惑:缺乏資訊 4

1.1.3 第三種困惑:缺乏加工能力 4

1.2 影響程式設計的不同認知過程 5

1.2.1 長時記憶和程式設計 5

1.2.2 短時記憶和程式設計 6

1.2.3 工作記憶和程式設計 7

1.3 認知過程之間的關係 8

1.3.1 簡要剖析認知過程如何相互作用 8

1.3.2 程式設計任務涉及的認知過程 9

1.4 小結 10

第 2章 快速閱讀代碼 12

2.1 快速閱讀代碼 13

2.1.1 大腦的活動情況 14

2.1.2 回顧默寫的代碼 15

2.1.3 回顧第二次默寫的代碼 16

2.1.4 閱讀不熟悉的代碼時為什麼會感到困難 16

2.2 彌補記憶容量不足的短板 17

2.2.1 組塊威力大 18

2.2.2 資深程式師比新手程式師更善於記憶代碼 21

2.3 看到的代碼比讀到的代碼多 22

2.3.1 圖像記憶 22

2.3.2 不是記憶的內容,而是記憶的方法 24

2.3.3 代碼分塊練習 30

2.4 小結 31

第3章 快速學習程式設計語法 32

3.1 語法記憶小貼士 32

3.2 如何利用抽認卡快速學習語法 34

3.2.1 使用抽認卡 34

3.2.2 擴充抽認卡 35

3.2.3 精簡抽認卡 35

3.3 如何避免遺忘 36

3.3.1 遺忘的原因何在 37

3.3.2 間隔重複 38

3.4 如何牢記程式設計語法 39

3.4.1 記憶資訊的兩種機制 39

3.4.2 “眼見”還不夠 40

3.4.3 主動回憶能夠鞏固記憶 41

3.4.4 主動思考也能鞏固記憶 42

3.5 小結 44

第4章 閱讀複雜的代碼 45

4.1 為什麼複雜的代碼難以理解 45

4.1.1 工作記憶與短時記憶的區別 46

4.1.2 與程式設計相關的3種認知負荷 47

4.2 減輕認知負荷的方法 49

4.2.1 重構 50

4.2.2 替換不熟悉的語言結構 51

4.2.3 在抽認卡兩面寫上等價的代碼可以顯著增強學習效果 54

4.3 利用記憶輔助工具解決工作記憶超載的問題 54

4.3.1 繪製依賴圖 55

4.3.2 創建狀態表 57

4.3.3 結合使用依賴圖和狀態表 59

4.4 小結 61

第二部分 代碼思考

第5章 深入理解代碼 64

5.1 變數角色框架 65

5.1.1 變數不同,承擔的任務也不同 65

5.1.2 涵蓋大多數變數的11種角色 66

5.2 角色和範式 68

5.2.1 角色的優點 68

5.2.2 匈牙利命名法 70

5.3 加深對程式的瞭解 72

5.3.1 文本結構知識與計畫知識 72

5.3.2 程式理解的不同步驟 72

5.4 閱讀代碼和閱讀文本有相似之處 75

5.4.1 閱讀代碼時大腦的活動情況 76

5.4.2 能學會法語,就能學會Python 77

5.5 運用文本理解策略來閱讀代碼 80

5.5.1 啟動先驗知識 81

5.5.2 監測 82

5.5.3 確定不同代碼行的重要性 83

5.5.4 推斷變數名的含義 84

5.5.5 視覺化 85

5.5.6 提問 86

5.5.7 摘要 86

5.6 小結 87

第6章 更好地解決程式設計問題 88

6.1 借助模型來思考代碼 89

6.2 心智模型 91

6.2.1 詳細剖析心智模型 92

6.2.2 學習新的心智模型 93

6.2.3 如何運用心智模型提高代碼分析的效率 94

6.3 概念機器 98

6.3.1 概念機器的定義 99

6.3.2 概念機器的例子 99

6.3.3 概念機器適用的不同層面 100

6.4 概念機器和語言描述 101

6.4.1 概念機器可以擴展 102

6.4.2 不同的概念機器可能催生出相互矛盾的心智模型 103

6.5 概念機器和圖式 104

6.5.1 圖式的重要性 104

6.5.2 概念機器是否具有語義性 105

6.6 小結 105

第7章 迷思概念:錯誤的思維方式 106

7.1 為什麼學習第二門程式設計語言比學習第 一門程式設計語言更容易 107

7.1.1 充分挖掘現有程式設計知識的潛力 108

7.1.2 不同的遷移類型 109

7.1.3 已經掌握的知識:是福還是禍 110

7.1.4 遷移有難度 111

7.2 迷思概念:思維中存在的錯誤 113

7.2.1 通過概念轉變來消除迷思概念 114

7.2.2 抑制迷思概念 114

7.2.3 與程式設計語言有關的迷思概念 115

7.2.4 在學習新的程式設計語言時避免形成迷思概念 117

7.2.5 判斷代碼庫中存在的迷思概念 118

7.3 小結 118

第三部分 代碼編寫

第8章 提高命名的品質 120

8.1 命名為什麼重要 121

8.1.1 命名的重要性何在 121

8.1.2 與命名有關的不同觀點 122

8.1.3 初的命名實踐影響深遠 124

8.2 從認知的角度剖析命名 125

8.2.1 規範的命名方式對短時記憶有利 126

8.2.2 含義明確的識別字對長時記憶有利 127

8.2.3 識別字可以包括不同類型的資訊以説明理解 127

8.2.4 評估識別字品質的時機 129

8.3 哪些類型的識別字更容易理解 129

8.3.1 是否應該使用縮寫 129

8.3.2 採用駝峰命名法還是蛇形命名法 133

8.4 識別字與代碼錯誤之間的關係 134

8.5 如何設計品質更高的識別字 135

8.5.1 名稱模具 135

8.5.2 運用Feitelson設計的三步模型來提高識別字品質 138

8.6 小結 139

第9章 避免低品質代碼和認知負荷:兩種框架 140

9.1 為什麼存在異味的代碼會加重認知負荷 140

9.1.1 代碼異味簡介 141

9.1.2 代碼異味對認知的負面影響 144

9.2 低品質識別字對認知負荷的影響 146

9.2.1 語言反模式 146

9.2.2 認知負荷的測量 147

9.2.3 語言反模式和認知負荷 151

9.2.4 語言反模式為什麼令人困惑 152

9.3 小結 152

第 10章 提高解決複雜問題的能力 153

10.1 問題解決的實質 153

10.1.1 問題解決的三大要素 153

10.1.2 狀態空間 154

10.2 長時記憶在解決程式設計問題時所起的作用 155

10.2.1 問題解決本身是否屬於認知過程 155

10.2.2 培養長時記憶來解決問題 157

10.2.3 解決問題時起作用的兩類記憶 157

10.3 自動化:構建內隱記憶 160

10.3.1 內隱記憶會隨著時間的推移而變化 161

10.3.2 為什麼自動化可以加快程式設計速度 163

10.3.3 強化內隱記憶 164

10.4 從代碼及其解釋中汲取經驗 165

10.4.1 第三種認知負荷:關聯認知負荷 166

10.4.2 在工作中運用樣例 168

10.5 小結 169

第四部分 代碼協作

第 11章 程式設計活動和任務 172

11.1 程式設計包括不同的程式設計活動 172

11.1.1 搜索活動 173

11.1.2 理解活動 173

11.1.3 轉寫活動 174

11.1.4 遞增活動 174

11.1.5 探索活動 174

11.1.6 為什麼符號認知維度框架不包括調試活動 175

11.2 受到幹擾的程式師 176

11.2.1 程式設計任務需要“預熱” 176

11.2.2 思路被打斷的後果 177

11.2.3 如何減輕幹擾的影響 177

11.2.4 限制幹擾出現的時機 180

11.2.5 關於多工處理的一些思考 182

11.3 小結 183

第 12章 設計和改進大型系統 184

12.1 代碼庫的屬性 185

12.1.1 認知維度 185

12.1.2 利用代碼庫認知維度來改進代碼庫 193

12.1.3 設計策略及其權衡 194

12.2 認知維度和程式設計活動 196

12.2.1 認知維度對不同程式設計活動的影響 196

12.2.2 針對預期的程式設計活動優化代碼庫 197

12.3 小結 198

第 13章 對新程式師進行適崗培訓 199

13.1 適崗培訓中存在的問題 199

13.2 高級程式師與初級程式師的區別 200

13.2.1 深入分析初級程式師的表現 201

13.2.2 具體看待概念與抽象看待概念之間的區別 205

13.3 完善適崗培訓流程 207

13.3.1 貪多嚼不爛 207

13.3.2 改善受訓者的記憶 208

13.3.3 代碼共讀 210

13.4 小結 212

寫在後 213

 

詳細資料

  • ISBN:9787115614162
  • 規格:平裝 / 214頁 / 19 x 26 x 1.07 cm / 普通級 / 1-1
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【科普、飲食、電腦】高寶電子書暢銷書展:人生就是選擇的總和,全展75折起
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 翦商作者新作79折
  • 針灸匠張寶旬
  • 浪漫小說精選3本72折