大模型輔助編程

[美] 內森·B.克羅克(Nathan B. Crocker) 著 郭濤 譯

  • 大模型輔助編程-preview-1
  • 大模型輔助編程-preview-2
  • 大模型輔助編程-preview-3
大模型輔助編程-preview-1

商品描述

"使用Copilot和ChatGPT等AI工具,就像雇用了一位聰明高效、無所不能的初級開發者——從技術調研到代碼重構都能勝任。AI編程能助你提升開發效率,編寫更優質的應用程序,甚至突破當前團隊的能力邊界。本書將為你全面揭示實現方法。 《大模型輔助編程》通過具體案例詳細講解如何在實際軟件開發中**化AI編程工具的價值。你將跟隨完整應用程序的開發流程,體驗AI工具在各個環節的應用:使用ChatGPT和Copilot生成代碼與創意、獲取預測性建議、開發自文檔化應用系統,並學習如何利用AI進行代碼測試與解讀。 ?運用AI進行軟件設計與規劃 ?實現代碼生成、調試與文檔自動化 ?提升代碼質量評估體系 ?快速掌握陌生編程語言"

作者簡介

Nathan B. Crocker是Checker的聯合創始人兼CEO,Checker以API為主提供解決方案,將傳統資本市場基礎設施與區塊鏈生態系統連接起來。憑借其在構建數字資產基礎設施方面的專業知識,Nathan目前負責Checker的技術願景和開發工作,構建其核心基礎設施,從而在區塊鏈上運行新的金融應用程序。

目錄大綱

目    錄

第Ⅰ部分  基礎

第1章  了解LLM  3

1.1  加速開發  4

1.2  LLM介紹  10

1.3  何時使用或避免使用生成式AI  11

1.4  本章小結  13

第2章  使用LLM  15

2.1  ChatGPT  16

2.1.1  使用GPT-4處理細微差別  16

2.1.2  使用GPT-3.5繪制路徑  22

2.1.3  在AI海洋中航行:從GPT-3.5“海岸”到GPT-4“天際線”  25

2.2  Copilot  26

2.3  CodeWhisperer  29

2.4  比較ChatGPT、Copilot和CodeWhisperer  31

2.5  本章小結  33

第Ⅱ部分  輸入

第3章  使用ChatGPT設計軟件  37

3.1  項目介紹:ITAM系統  38

3.2  請ChatGPT協助系統設計  38

3.3  記錄架構  43

3.4  本章小結  62

第4章  使用GitHub Copilot 構建軟件  63

4.1  奠定基礎  64

4.1.1  表達領域模型  64

4.1.2  優先采用不可變性  66

4.1.3  修飾最喜歡的類  68

4.1.4  調整折舊策略  73

4.2  編織模式  75

4.2.1  訪問部門  76

4.2.2  使用工廠(模式)創建對象  77

4.2.3  指導系統構建  82

4.2.4  觀察變化  87

4.3  插入端口和適配器  90

4.3.1  六邊形架構回顧  91

4.3.2  驅動應用程序  92

4.3.3  訪問數據和持久化更改  100

4.3.4  集中(和外部化)數據訪問  104

4.4  本章小結  109

第5章  使用GitHub Copilot和Copilot Chat管理數據  111

5.1  構建數據集  112

5.2  使用Kafka實時監控資產  123

5.3  使用Apache Spark進行分析、學習和跟蹤  133

5.4  本章小結  138

第Ⅲ部分  反饋

第6章  基於LLM的測試、評估和解釋  143

6.1  3種測試類型  144

6.1.1  單元測試  144

6.1.2  集成測試  151

6.1.3  行為測試  152

6.2  評估質量  157

6.3  尋找錯誤  160

6.4  代碼覆蓋  162

6.5  代碼轉譯——從代碼到描述  164

6.6  從一種語言翻譯到另一種語言  166

6.7  本章小結  173

第Ⅳ部分  走向世界

第7章  編寫基礎設施代碼和管理部署  177

7.1  構建Docker鏡像並“部署”到本地  179

7.2  使用GitHub Copilot協助Terraform構建基礎設施  182

7.3  移動Docker鏡像(困難模式)  186

7.4  移動Docker鏡像(簡單模式)  186

7.5  將應用程序部署到AWS EKS  188

7.6  在GitHub Actions中設置CI/CD管道  191

7.7  本章小結  194

第8章  使用ChatGPT開發安全應用程序  197

8.1  使用ChatGPT進行威脅建模  199

8.1.1  威脅建模在當今開發環境中至關重要的原因  199

8.1.2  ChatGPT如何輔助威脅建模  200

8.1.3  案例研究:使用ChatGPT模擬威脅建模  203

8.2  審查應用程序設計並識別潛在漏洞  207

8.2.1  評估設計問題  207

8.2.2  識別常見漏洞  208

8.3  應用安全最佳實踐  209

8.3.1  建立安全意識  209

8.3.2  持續安全測試  210

8.4  靜態數據和傳輸中數據的加密  213

8.4.1  數據加密的重要性  213

8.4.2  靜態數據加密  214

8.4.3  傳輸中數據的加密  218

8.5  本章小結  220

第9章  隨時隨地使用GPT  221

9.1  動機理論  221

9.2  本地托管LLM  222

9.2.1  使用ChatGPT進行基準測試  223

9.2.2  要求Llama 2輸出答案  224

9.2.3  用GPT-4All實現答案的民主化  232

9.3  本章小結  235

附錄  237