PTT推薦

[心得] ChatGPT協助軟體開發的指令集

看板Soft_Job標題[心得] ChatGPT協助軟體開發的指令集作者
panger
(超脫歸心)
時間推噓 7 推:8 噓:1 →:48

近來寫程式時大量試用ChatGPT
剛好使用golang開發side project,

所以在各種情況下遇到的問題,都試著問ChatGPT
真的覺得超好用的!

網頁好讀版:附上心智圖、完整範例(有些範例太長,PPT沒有辦法完整呈現)
https://reurl.cc/V80eXY



## 試用背景
背景: golang使用經驗為1天,瞭解基本語法
目標: 在周末2天開發一個工具,功能包含
1. 建立並初始化專案、開發環境
2. 讀取markdown格式的樹狀清單,並且走訪清單
3. 呼叫Web API,並剖析結果進行處理
4. 以Template輸出資料

## 整理常用指令
- 程式開發
- 環境設定
- 範例:`如何在vscode中傳入命令列參數進行Golang除錯`
- 學習語言
- 學習語言特性
- 範例:`使用程式碼來解釋Golang的OOO`
- 標準庫使用
- 範例:`如何使用Golang將字串存入檔案`
- 套件使用範例
- 範例:`使用Goldmark剖析markdown字串並走訪樹狀list`
- 開發程式碼
- 撰寫程式片段
- 範例:`使用Golang遞迴走訪資料夾,複製檔案到另一個資料夾`
- 優化程式碼
- 範例:`如何優化這段程式碼使用的記憶體數量`
- 理解並說明程式碼內容
- 範例:`說明這段程式的主要邏輯`
- 撰寫Regex
- 範例:`撰寫Regex來做到OOO`
- 測試和除錯
- 測試
- 範例:`撰寫五個測試案例,用來測試Golang命令列程式。此程式需要OOO`
- 錯誤訊息除錯
- 範例:`此錯誤訊息原因為何,如何解決:OOO`
- 程式碼片段除錯
- 範例:`這段程式碼無法成功讀取檔案,可能原因為何?`
- 架構規劃
- 技術選型
- 範例:`推薦Golang剖析markdown的套件`
- 範例:`比較Goldmark與Blackfriday`
- 範例:`如果我需要OOO,應該使用什麼Golang套件`
- 程式架構規劃
- 範例:`Golang程式架構範例,需要OOO`
- 系統架構規劃
- 範例:`設計一個高可用性的Golang網站,有哪些需考慮的要素`

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.68.33.254 (臺灣)

※ 文章網址:
https://www.ptt.cc/Soft_Job/E.kL705AlLEuy0

hegemon03/20 18:49如果連關鍵字怎麼下都還需要這種教學,應該很難在業界生

hegemon03/20 18:49存. 不要發個廢文就美其名是分享,實際上是打廣告好嗎?

panger03/20 19:08是因為感覺有不少人覺得ChatGPT和搜尋引擎很像,所以才整

panger03/20 19:08理這一篇。

panger03/20 19:08主要是想要展示,怎麼整理自己的疑問來問ChatGPT。

panger03/20 19:08我覺得ChatGPT最厲害的是可以針對我們的問題,給出客製化

panger03/20 19:08的回答。

panger03/20 19:08我遇過好多次,在Google查不出來的情況,例如剖析資料有

panger03/20 19:08逗號的CSV

panger03/20 19:08如果覺得不適合,我隨時可以刪除喔...XD

我比較像是把給自己用的整理筆記放上來而已啦... 又沒有要營利...Orz 不然我也可以把上一篇刪除...XD 我覺得用起來最方便的地方是,在作為架構師的時候, 常常要做技術選型或是POC開發。 希望可以幫到大家

※ 編輯: panger (114.32.105.57 臺灣), 03/20/2023 19:12:44

Hsins03/20 19:19雖然但是……你可能對架構師有些誤會……

下面是ChatGPT的回答, 我覺得和我的理解一致啊...XD 我日常中,很大比例就是要覺得怎麼做,所以需要找很多可能解決的方式。 ============== 請問架構師的職責為何? 架構師的職責是負責設計軟體、系統或應用程式的架構,以確保它們能夠滿足需求、擴充性 強、可維護性高、安全性好、可靠性高、性能良好等要求。架構師必須對系統結構、技術架 構、系統流程、系統性能等方面有深刻的理解和認識,需要協調開發人員、測試人員、專案 經理等不同角色之間的合作。 架構師的職責可以包括以下內容: 1. 確定系統需求和用戶需求,並設計系統結構和技術架構; 2. 選擇和評估適合的技術和框架,並指導開發人員的技術實現; 3. 定義系統模塊和元件之間的關係和交互,設計系統流程和架構; 4. 確保系統的可擴展性、可維護性、可靠性和安全性; 5. 監控系統性能,並對系統進行優化; 6. 建立和維護系統文檔,以便讓其他人可以理解和維護系統; 7. 解決開發和測試人員在實施架構方案時的技術問題。 總體而言,架構師需要對技術有深入的了解和經驗,並且能夠設計出滿足要求的高效系統。 此外,他們需要具備良好的溝通和協調能力,以便與各個相關方進行溝通和合作。

※ 編輯: panger (42.73.97.11 臺灣), 03/20/2023 19:30:58

Hsins03/20 19:31用 Google 查不到如何剖析含有逗號的 csv 這件事,是搜尋能

Hsins03/20 19:31力差而不是 Google 的問題吧……

Hsins03/20 19:40我指的誤會不是指你對架構師要做些什麼有誤會,而是對於這

Hsins03/20 19:40份工作的難易度有誤會;你貼的敘述也提到架構師需要對技術

Hsins03/20 19:40有深入的理解跟經驗,怎麼會是到了要選型時才來問 AI 呢?

panger03/20 19:43對誒,我剛才試試看,真的有成功

panger03/20 19:43關鍵字要用use regex to parse csv has comma inside

panger03/20 19:45不過上次的Case呢?

panger03/20 19:45如果在Linux環境中,因為監管議題,系統管理員不能有sudo

panger03/20 19:45權限,有哪些方式解決此問題?

panger03/20 19:45各方案又有什麼差異?

panger03/20 19:46應該是說,架構設計會碰到的範圍太廣了,而且資訊領域本

panger03/20 19:46來就會不斷有新東西需要學。

panger03/20 19:46小弟才疏學淺,常有遇到新的議題需要思考怎麼處理...XD

Hsins03/20 19:49你上面的這個 case 問題點不是技術的實現問題,是要先解釋

Hsins03/20 19:49清楚「監管問題」指的是什麼……

Hsins03/20 19:51這問題的背後就是不要把系統管理員放到具備 sudo 的 wheel

Hsins03/20 19:51群組(如果是 CentOS 系發行版本),根據他應該要具備的權

Hsins03/20 19:51限,以最小權限原則去給予權限……

MoonCode03/20 20:12有在做事的架構師就滿分了啦

panger03/20 21:24沒有做事的架構師是要做什麼的阿...

panger03/20 21:26我以為架構師都是要當許願池和萬事通的...

jay123peter03/20 21:55

MoonCode03/20 22:10原po這樣回我反倒不相信你是架構師

panger03/20 22:31哈,你是說正規表示式Google不到嗎?

panger03/20 22:32我有反省,大量使用ChatGPT的問題是會降低思考力

panger03/20 22:33最近有注意到,如果以後只要寫中文信件

panger03/20 22:33然後請ChatGPT翻譯成英文,還可以翻譯得很流暢。

panger03/20 22:34這樣英文寫作能力是不是會慢慢減弱,閱讀能力也是...

panger03/20 22:34新的Edge瀏覽器都已經測試在右邊直接把英文翻譯成中文了

panger03/20 22:34不是我懶,只是機翻如果可以達到一定的水平,

panger03/20 22:35趕時間的時候,還會真的想要自己寫嗎?

panger03/20 22:35當然聽、讀還是很難被取代拉...

panger03/20 22:35所以也有看到有人說,ChatGPT會把人養廢的說法

panger03/20 22:43不過這篇的重點不是在架構師拉...XD

panger03/20 22:44我主要是想要說明,我覺得ChatGPT是實務上是真的可用的

panger03/20 22:45當然要取代工程師,這就還太早了,這比較偏媒體炒作了

vi00024603/21 00:57架構怎麼會去問chatGPT啊 怪怪的耶

q2676603/21 01:57推文好兇 別太在意

Isaea03/21 11:05我覺得沒啥好酸的啊,幫原po補血

jej03/21 12:40架構師的職責不就是台語嗎?(逃)

hakiooi03/21 20:04推文真兇幫補血 prompt分享很正常網路也很多好嗎

art103/22 00:21chatGPT 對我來說好用的地方是問句可以很模糊,常常也能給出

art103/22 00:21我需要的答案,這跟 google 需要關鍵字對才容易有答案是很大

art103/22 00:22的差異

※ 編輯: panger (220.130.192.46 臺灣), 03/22/2023 09:20:26

mathrew03/22 21:12出張嘴最強