ChatGPT 是由 OpenAI 公司創造的自然語言處理工具,對那些想要提高技能的軟件開發人員來說,它絕對是不容錯過的重要利器。
本文將展示使用 ChatGPT 來促進 Android 軟件開發的7個案例,你會發現憑借其易用性和定制功能,ChatGPT 能夠大大提高軟件開發人員的績效表現。
準備工作
訪問 ChatGPT
首先訪問官方的鏈接,并創建一個賬號。可以選擇直接注冊或是使用 Google、Microsoft 的現有賬號。
整體的界面如下:
ChatGPT 賬號默認會保留你和它的對話歷史,方便你在其他會話里再次訪問這些記錄。當然,如有需要,你也可以直接刪除某個或多個對話歷史。
使用前須知
想要有效使用 ChatGPT,有一點非常重要:應當使用編程領域的專業術語,制定出清晰的、客觀的提問內容。
在得到它的回答之后,也建議大家去評估這個回答與所提問題的關聯程度以及否適用,這對于我們檢查和優化提問內容非常重要。
另外,請記住 ChatGPT 可以支持多種語言,如果你還不太熟悉英語,可以選擇其他語言。
提問十分關鍵
與在搜索引擎里輸入關鍵字有所不同,在 ChatGPT 這里,你可以像和人交談一樣提出問題。只不過要確保問題內容盡可能多地包含詳細信息。
盡量去避免提出那些主觀的、模糊不清的、寬泛的問題。
舉個例子,如果你問它 “在 Android 上如何實現注冊界面”,那它的回答結果很有可能是如何啟動 Android 項目并創建 XML 格式的組件,而這些回答其實也同樣含糊不清和寬泛。
因此,更好的做法是針對你想要的東西、必要的細節去提出更加具體的問題。也不用擔心問得太啰嗦,涵蓋的細節信息越多,ChatGPT 的回答將越準確。
如下的例子里,我補充了技術細節和期待的具體東西。
可以看到,這次它給出的結果是按照提問要求提供了 Jetpack Compose 技術代碼,而且是幾乎可以在 Android 項目中直接使用的程度。
既然大家已經學會了如何恰當地提出問題,那么下一關就是去理解、評估這個答案。
評估回答是否有用
搜索引擎提供的結果里,通常你會在頂部看到一支廣告,然后可能是贊助商提供的帖子以及你搜索的第一個結果。我們打開第一個鏈接,往往會發現這不是自己想要的結果,這時候會有點擔心又不擔心,因為還有幾十萬頁的結果等著去一一確認。。。
ChatGPT 則不同于上面的情況,它永遠不會說不知道,它總會給你一個答案。而這個答案可能是對的、也可能是錯的。我們面對這個唯一的答案,如何正確地理解和辨別,就顯得至關重要。
運用上下文信息
如果 ChatGPT 沒能正確地、完整地作出回答,你可以針對目標答案提供更多信息、隨時再問一遍。ChatGPT 本身會維護問題之間的上下文信息,所以它能夠明白你在討論什么。
舉個例子,讓 ChatGPT 改寫上面的代碼:將變量firstName改為completeName。
如下的圖可以看到:它確實只改寫了firstName代碼,其他代碼和之前保持了一致。
案例 1. 代碼生成
如上所述,ChatGPT 是全能型工具,可以幫助你處理很多領域,包括軟件開發者很關心的代碼生成。
盡管無法創建完整架構或是一個 App 的所有代碼,但我們可以將一個大的問題拆解成更小的問題。這樣的話,ChatGPT 便能給你提供有用的幫助。
除了提供代碼,ChatGPT 也能解釋代碼能夠奏效的原因,這可以幫助你更好地理解代碼的具體邏輯。
一定要去仔細評估這些回答內容,如有必要,你可以繼續請求它改寫、優化,以滿足你的需要。
案例 2. 修改 Bug
你可以拷貝一個代碼片段并詢問 ChatGPT 是否包含任何 Bug 或錯誤,它可以針對代碼質量進行反饋,進而幫你定位出潛在的問題。這些反饋包括:修改代碼的建議、提高代碼效率以及如何避免一般的錯誤。
這將節省開發者在調試、測試代碼上耗費的時間和精力,幫助我們構建更加可靠、高效的軟件。
如果提供的代碼確實需要改善,那么 ChatGPT 會向你解釋可能會發生什么錯誤以及建議的解決辦法。
分享代碼的注意
代碼屬于公司的知識產權,而非員工個人。如果沒有獲得更高級別的許可,就將其分享給 ChatGPT 可能會產生違規。
除此之外,AI 能夠訪問和存儲敏感信息。如果員工們訪問了這些工具,他們可能在不經意間將信息傳遞給了 AI,造成安全違約和其他嚴重后果。
再惡劣一點的,如果黑客們入侵了這些工具,那么公司信息必將發生泄露。
所以,在給 ChatGPT 或其他 AI 工具分享敏感信息前,務必謹慎考慮這些風險。
案例 3. 寫單元測試
當然你也可以在拷貝代碼后問 ChatGPT 是否可以生成 Unit test 來檢驗該函數功能。ChatGPT 可以指引你完成 Unit test 的最佳實踐,以及建議你如何重構代碼去更加容易地進行測試。
和上述過程一樣,它將返回 Unit test 代碼并解釋這些測試代碼如何運行的。
案例 4. 寫文檔說明
ChatGPT 也能夠為現有的代碼生成文檔說明。
如下圖所示,我們可以指定代碼語言和規則。
案例 5. 解釋代碼邏輯
通過前面的章節,我們知道 ChatGPT 在生成代碼的同時會進行解釋。自然而然地,你也可以直接讓他解釋某段代碼,幫你理清其邏輯。
案例 6. 解釋概念
概念類、架構類、工具類以及日常工作中可能遇到的問題,ChatGPT 都可以解答,可以放心大膽地提問。
如下圖,我們讓它解釋 Android 平臺上 Activity 和 Fragment 的區別。
其實,我們可以問它任何問題,只不過本篇文章側重于闡述 ChatGPT 對于 Android 軟件開發的幫助。
案例 7. 幫助你求職
很多人沒想到 ChatGPT 甚至能幫助你找工作:比如你可以問它如何準備面試中的常見問題。
盡可能開動你的腦筋、好好利用它,讓你更加充分地準備面試。
再次提醒:時刻留意 ChatGPT 回答的可靠性、準確性。
比如上面的例子,我們問它“我要面試初級 Android 開發者職位,有哪些需要準備的常見問題?”,它在回答中提到的部分組件(比如 AsyncTask、LinearLayout 和 RelativeLayout)現在已經不怎么考察了,有些過時了。
所以保持評估它給出的結果,不可盡信。
結語
確實,ChatGPT 有助于提高開發者的生產力,但必須認識到它存在一些局限性,這很重要。
1. 卡頓、不穩定
如果很多人同時訪問,免費版的 ChatGPT 會變得很卡、甚至完全用不了,這時候你得手動刷新頁面、碰碰運氣。
2. 存在付費版本
ChatGPT 提供了每月 20$ 的付費版本,讓你能夠獲得更快的響應、并且即便很多人同時訪問也不會影響你的使用。畢竟你要知道:官方可沒保證未來會持續提供免費版本。
3. 缺乏可靠性
如前面章節所述,ChatGPT 會回答任何提問,答案可能是正確的、也可能是錯誤的。所以,關鍵在于評估這些回答。可是即便結合你的經驗,你也可能忽視掉 ChatGPT 回答中的錯誤。所以最佳做法是把它當作你的助手,靈活地控制解決方案,如何決策在于你自己。
4. 缺乏最新數據
ChatGPT 是基于海量信息訓練的聊天機器人,并且訓練不是即時的。舉個例子,它可能不知道 Kotlin、Android 最新的更新內容,亦或最新的 Google IO 大會發生了什么。
5. 只能輸入純文本
當前 ChatGPT 還不支持上傳文件,所以想讓它 review 代碼的話,你得拷貝代碼片段,畢竟單個提問的文字長度被限制在 1000 個以內。
另外,它也不能像 Markdown、Slack 那樣,可以通過引號來格式化代碼,開發者只能用純文本格式向 ChatGPT 提問。
6. 缺乏安全性
ChatGPT 是 OpenAI 公司推出的工具,它利用網絡信息投喂其數據庫,這也包括你在對話中發送的內容。
所以,切勿發送機密信息。
最后的最后
綜上可以看到,ChatGPT 極有可能徹底改變開發者們的工作方式。盡管存在可靠性、響應速度、最新數據等局限性,ChatGPT 仍舊可以大大提高我們的生產力、改善我們的開發時間。
倒也不必擔心 ChatGPT 會竊取咱們的工作,因為從別的角度來說,這個工具確實可以給開發者提供非常有價值的支持、促使日常工作更加高效、幫助大家擺脫重復繁瑣的任務。。。
倘若能將 AI 人工智能和人類的創造性、技能完美結合,那么未來的軟件開發將變得極為高效和超乎想象!
審核編輯:劉清
-
Android
+關注
關注
12文章
3923瀏覽量
127133 -
XML
+關注
關注
0文章
188瀏覽量
33041 -
AI
+關注
關注
87文章
30134瀏覽量
268411 -
OpenAI
+關注
關注
9文章
1043瀏覽量
6406 -
ChatGPT
+關注
關注
29文章
1548瀏覽量
7491
原文標題:使用ChatGPT改善Android開發效率的7個案例
文章出處:【微信號:哆啦安全,微信公眾號:哆啦安全】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論