精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用ChatGPT來促進Android軟件開發的7個案例

哆啦安全 ? 來源:TechMerger ? 作者:TechMerger ? 2023-04-21 09:17 ? 次閱讀

ChatGPT 是由 OpenAI 公司創造的自然語言處理工具,對那些想要提高技能的軟件開發人員來說,它絕對是不容錯過的重要利器。

本文將展示使用 ChatGPT 來促進 Android 軟件開發的7個案例,你會發現憑借其易用性和定制功能,ChatGPT 能夠大大提高軟件開發人員的績效表現。

準備工作

訪問 ChatGPT

首先訪問官方的鏈接,并創建一個賬號。可以選擇直接注冊或是使用 Google、Microsoft 的現有賬號。

整體的界面如下:

ba4ef63c-dfd6-11ed-bfe3-dac502259ad0.jpg

ChatGPT 賬號默認會保留你和它的對話歷史,方便你在其他會話里再次訪問這些記錄。當然,如有需要,你也可以直接刪除某個或多個對話歷史。

使用前須知

想要有效使用 ChatGPT,有一點非常重要:應當使用編程領域的專業術語,制定出清晰的、客觀的提問內容。

在得到它的回答之后,也建議大家去評估這個回答與所提問題的關聯程度以及否適用,這對于我們檢查和優化提問內容非常重要。

另外,請記住 ChatGPT 可以支持多種語言,如果你還不太熟悉英語,可以選擇其他語言。

提問十分關鍵

與在搜索引擎里輸入關鍵字有所不同,在 ChatGPT 這里,你可以像和人交談一樣提出問題。只不過要確保問題內容盡可能多地包含詳細信息

盡量去避免提出那些主觀的、模糊不清的、寬泛的問題。

舉個例子,如果你問它 “在 Android 上如何實現注冊界面”,那它的回答結果很有可能是如何啟動 Android 項目并創建 XML 格式的組件,而這些回答其實也同樣含糊不清和寬泛

因此,更好的做法是針對你想要的東西、必要的細節去提出更加具體的問題。也不用擔心問得太啰嗦,涵蓋的細節信息越多,ChatGPT 的回答將越準確。

如下的例子里,我補充了技術細節和期待的具體東西。

可以看到,這次它給出的結果是按照提問要求提供了 Jetpack Compose 技術代碼,而且是幾乎可以在 Android 項目中直接使用的程度。

既然大家已經學會了如何恰當地提出問題,那么下一關就是去理解、評估這個答案。

評估回答是否有用

搜索引擎提供的結果里,通常你會在頂部看到一支廣告,然后可能是贊助商提供的帖子以及你搜索的第一個結果。我們打開第一個鏈接,往往會發現這不是自己想要的結果,這時候會有點擔心又不擔心,因為還有幾十萬頁的結果等著去一一確認。。。

ChatGPT 則不同于上面的情況,它永遠不會說不知道,它總會給你一個答案。而這個答案可能是對的、也可能是錯的。我們面對這個唯一的答案,如何正確地理解和辨別,就顯得至關重要。

ba81a51e-dfd6-11ed-bfe3-dac502259ad0.jpg

運用上下文信息

如果 ChatGPT 沒能正確地、完整地作出回答,你可以針對目標答案提供更多信息、隨時再問一遍。ChatGPT 本身會維護問題之間的上下文信息,所以它能夠明白你在討論什么。

舉個例子,讓 ChatGPT 改寫上面的代碼:將變量firstName改為completeName

如下的圖可以看到:它確實只改寫了firstName代碼,其他代碼和之前保持了一致。

ba933946-dfd6-11ed-bfe3-dac502259ad0.jpg

案例 1. 代碼生成

如上所述,ChatGPT 是全能型工具,可以幫助你處理很多領域,包括軟件開發者很關心的代碼生成。

盡管無法創建完整架構或是一個 App 的所有代碼,但我們可以將一個大的問題拆解成更小的問題。這樣的話,ChatGPT 便能給你提供有用的幫助。

baab86a4-dfd6-11ed-bfe3-dac502259ad0.jpg

除了提供代碼,ChatGPT 也能解釋代碼能夠奏效的原因,這可以幫助你更好地理解代碼的具體邏輯。

一定要去仔細評估這些回答內容,如有必要,你可以繼續請求它改寫、優化,以滿足你的需要。

bac5495e-dfd6-11ed-bfe3-dac502259ad0.jpg

案例 2. 修改 Bug

你可以拷貝一個代碼片段并詢問 ChatGPT 是否包含任何 Bug 或錯誤,它可以針對代碼質量進行反饋,進而幫你定位出潛在的問題。這些反饋包括:修改代碼的建議、提高代碼效率以及如何避免一般的錯誤。

這將節省開發者在調試、測試代碼上耗費的時間和精力,幫助我們構建更加可靠、高效的軟件。

badf236a-dfd6-11ed-bfe3-dac502259ad0.jpg

如果提供的代碼確實需要改善,那么 ChatGPT 會向你解釋可能會發生什么錯誤以及建議的解決辦法。

分享代碼的注意

代碼屬于公司的知識產權,而非員工個人。如果沒有獲得更高級別的許可,就將其分享給 ChatGPT 可能會產生違規。

除此之外,AI 能夠訪問和存儲敏感信息。如果員工們訪問了這些工具,他們可能在不經意間將信息傳遞給了 AI,造成安全違約和其他嚴重后果。

再惡劣一點的,如果黑客們入侵了這些工具,那么公司信息必將發生泄露。

所以,在給 ChatGPT 或其他 AI 工具分享敏感信息前,務必謹慎考慮這些風險。

案例 3. 寫單元測試

當然你也可以在拷貝代碼后問 ChatGPT 是否可以生成 Unit test 來檢驗該函數功能。ChatGPT 可以指引你完成 Unit test 的最佳實踐,以及建議你如何重構代碼去更加容易地進行測試。

baf5b904-dfd6-11ed-bfe3-dac502259ad0.jpg

和上述過程一樣,它將返回 Unit test 代碼并解釋這些測試代碼如何運行的。

案例 4. 寫文檔說明

ChatGPT 也能夠為現有的代碼生成文檔說明。

如下圖所示,我們可以指定代碼語言和規則。

bb0a2e16-dfd6-11ed-bfe3-dac502259ad0.jpg

案例 5. 解釋代碼邏輯

通過前面的章節,我們知道 ChatGPT 在生成代碼的同時會進行解釋。自然而然地,你也可以直接讓他解釋某段代碼,幫你理清其邏輯。

bb2556fa-dfd6-11ed-bfe3-dac502259ad0.jpg

案例 6. 解釋概念

概念類、架構類、工具類以及日常工作中可能遇到的問題,ChatGPT 都可以解答,可以放心大膽地提問。

如下圖,我們讓它解釋 Android 平臺上 Activity 和 Fragment 的區別。

bb3c4964-dfd6-11ed-bfe3-dac502259ad0.jpg

其實,我們可以問它任何問題,只不過本篇文章側重于闡述 ChatGPT 對于 Android 軟件開發的幫助。

案例 7. 幫助你求職

很多人沒想到 ChatGPT 甚至能幫助你找工作:比如你可以問它如何準備面試中的常見問題。

盡可能開動你的腦筋、好好利用它,讓你更加充分地準備面試。

bb534af6-dfd6-11ed-bfe3-dac502259ad0.jpg

再次提醒:時刻留意 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
    XML
    +關注

    關注

    0

    文章

    188

    瀏覽量

    33041
  • AI
    AI
    +關注

    關注

    87

    文章

    30134

    瀏覽量

    268411
  • OpenAI
    +關注

    關注

    9

    文章

    1043

    瀏覽量

    6406
  • ChatGPT
    +關注

    關注

    29

    文章

    1548

    瀏覽量

    7491

原文標題:使用ChatGPT改善Android開發效率的7個案例

文章出處:【微信號:哆啦安全,微信公眾號:哆啦安全】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    軟件開發(手機開發 網絡多媒體 linux開發 android開發

    或者相關專業;5年以上軟件開發經驗,優先考慮具有嵌入式系統開發以及Android系統開發經驗的候選人; 2、具有良好的項目管理和開發團隊管理
    發表于 12-13 17:23

    上海率眾招android軟件開發工程師,月薪兩萬!——電子圈

    android軟件開發工程師月薪15000~20000城市: 上海市學歷: 本科經驗: 1年行業: 通信與網絡公司: 上海率眾信息科技有限公司職位描述:崗位職責: 1. Android手機應用
    發表于 07-15 09:34

    RK3288 Android7.1軟件開發指南分享,絕對實用

    RK3288 Android7.1軟件開發指南分享,絕對實用
    發表于 03-04 07:39

    Eclipse嵌入式軟件開發平臺

    隨著嵌入式系統在通信、網絡設施、航空、航海和航天等領域的大范圍應用,需要功能強大的軟件開發平臺輔助嵌入式應用軟件開發。一好的軟件開發平臺
    發表于 12-01 15:37 ?55次下載
    Eclipse嵌入式<b class='flag-5'>軟件開發</b>平臺

    ARM嵌入式軟件開發

    ARM嵌入式軟件開發ARM嵌入式軟件開發ARM嵌入式軟件開發
    發表于 01-15 17:29 ?64次下載

    CFD軟件開發的三階段

    本白皮書結合歷史背景分析探討了產品開發用商業 CFD 軟件開發所經歷的三階段,并討論和展望了未來開發所面臨的挑戰和機遇。
    發表于 09-11 14:53 ?11次下載
    CFD<b class='flag-5'>軟件開發</b>的三<b class='flag-5'>個</b>階段

    Linux軟件開發環境

    Linux軟件開發環境介紹。
    發表于 03-25 15:46 ?7次下載
    Linux<b class='flag-5'>軟件開發</b>環境

    基于模型的嵌入式軟件開發

    對工具的分類和資質審核通過認證的方式發放證書應對復雜系統時,軟件開發人員的工作效率在降低解決復雜軟件開發效率低下的路徑:模塊化開發 (一復雜的系統包含很多模塊,每個模塊都比較簡單,這
    發表于 11-03 11:21 ?9次下載
    基于模型的嵌入式<b class='flag-5'>軟件開發</b>

    汽車軟件開發流程介紹

    在汽車軟件開發中,軟件開發流程是軟件工程的核心,因為它們為軟件開發實踐“提供了一骨架并確保了它的嚴謹性”。
    發表于 08-15 12:03 ?1.4w次閱讀

    軟件開發外包有哪些坑要注意?

    提起軟件開發外包,大家并不陌生,因為很多企業已經選擇了軟件外包,但是有人會說軟件開發外包就是坑,千萬別選擇軟件外包。 ? 其實
    的頭像 發表于 10-11 18:36 ?1404次閱讀

    軟件開發的流程和方法有哪些?

    軟件開發是根據客戶要求構建出軟件系統或者系統中的軟件部分,一般是通過程序設計語言實現的,比如C/C++/JAVA/JSP/ASP等開發語言。軟件開發
    的頭像 發表于 12-27 10:56 ?2072次閱讀
    <b class='flag-5'>軟件開發</b>的流程和方法有哪些?

    安全軟件開發的最佳實踐

    安全的軟件開發最佳實踐是必要的,因為安全風險無處不在。在網絡攻擊盛行的時代,它們可以影響每個人,包括個人、公司和政府。因此,確保軟件開發的安全性至關重要。 在這里,我們將解釋了什么是安全軟件,如何確保
    的頭像 發表于 05-08 10:51 ?790次閱讀
    安全<b class='flag-5'>軟件開發</b>的最佳實踐

    軟件開發必讀!華為云軟件開發生產線 CodeArts 深度體驗指南

    77 日-9 日,隨著華為開發者大會 2023 的到來,華為云軟件開發生產線 CodeArts 也走進了很多開發者的視野。
    的頭像 發表于 08-25 13:43 ?1207次閱讀
    <b class='flag-5'>軟件開發</b>必讀!華為云<b class='flag-5'>軟件開發</b>生產線 CodeArts 深度體驗指南

    基于Android的應用軟件開發實例初探

    電子發燒友網站提供《基于Android的應用軟件開發實例初探.pdf》資料免費下載
    發表于 10-09 16:57 ?0次下載
    基于<b class='flag-5'>Android</b>的應用<b class='flag-5'>軟件開發</b>實例初探

    嵌入式軟件開發軟件開發的區別

    嵌入式軟件開發軟件開發是兩不同的概念,它們在一些關鍵方面有著明顯的區別。嵌入式軟件開發是指開發嵌入在硬件設備中的
    的頭像 發表于 01-22 15:27 ?2175次閱讀