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