成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

重構人工智能代碼:好的、壞的和奇怪的

人工智能
在軟件開發領域,生成式人工智能不再是一個新鮮事物:它越來越多地被用作編寫在現實生產中運行的代碼的助手。但是每個開發人員都知道從頭開始編寫新代碼只是他們日常工作的一小部分。開發人員的大部分時間都花在維護現有代碼庫和重構其他人編寫的代碼上。

 在軟件開發領域,生成式人工智能不再是一個新鮮事物:它越來越多地被用作編寫在現實生產中運行的代碼的助手。但是每個開發人員都知道從頭開始編寫新代碼只是他們日常工作的一小部分。開發人員的大部分時間都花在維護現有代碼庫和重構其他人編寫的代碼上。

當這些手不是人類的,或者由人工智能副駕駛生成的時候,做維修工作是什么感覺?像GitHub Copilot,Vercel的v0或CursorIDE這樣的人工智能工具可以用來減輕負載嗎?以下了解人工智能革命的下一階段是如何進行的。

人工智能編寫代碼:有用,有時也很奇怪

很多開發者都對生成式人工智能作為開發過程一部分的有用性表達了不同程度的熱情。他們也承認人工智能生成的代碼有其怪癖,而這些怪癖可能會使其難以維護和重構。

DevNag多年來一直在人工智能編碼工具領域工作,他是Query Pal的首席執行官,這是一家專注于人工智能票證生成的軟件公司。他將重構和維護人工智能生成代碼的過程描述為令人驚訝的挑戰。他說:“代碼通常在風格和命名約定上缺乏一致性,這會使代碼庫感覺脫節。”“我花了很多時間清理和標準化人工智能生成的代碼,以適應項目的慣例。”

IT服務和咨詢公司Pranshtech Solutions的首席執行官、SaaS開發公司Textdrip的首席技術官、經驗豐富的軟件開發人員Dhaval Gajjar對此表示贊同。他說:“基于人工智能的代碼通常在語法上是正確的,但往往缺乏人類開發人員對最佳實踐的理解所帶來的清晰度或潤色。”開發人員經常需要清理變量名、簡化邏輯或重構代碼以獲得更好的可讀性。

Innovative Solutions公司的首席技術官Travis Rehl致力于在云端遷移、現代化和構建下一代系統,對于他來說,使用人工智能編寫的代碼來重構或維護它的奇怪之處可能會更深入。他說:“當人工智能使用了不熟悉的模式或庫時,如果沒有對這些選擇的深刻理解,重構可能會很有挑戰性。”“還存在打破人工智能可能創造的復雜依賴關系的風險。這絕對是一種不同的體驗。您經常使用既熟悉又陌生的代碼。人工智能可能會使用對人類開發者來說似乎不尋常的方法。”

Nag和Gajjar都注意到,人工智能生成的代碼可能比實現相同結果的人類編寫的代碼更復雜。根據Gajjar的說法,“眾所周知,人工智能工具會過度設計解決方案,因此生成的代碼比用于簡單任務的實際代碼更龐大。開發人員必須刪減一些多余的步驟,或者為了效率和可維護性,必須實現一個簡化的結構。人工智能可以拋出一些并不總是必要的錯誤處理和邊緣情況。就好像它試圖炫耀它所知道的一切,即使一個更簡單的解決方案就足夠了。”

創新解決方案公司的Rehl很欣賞這種炫耀方式。“人工智能還會做一些事情,比如圍繞功能添加大量評論。這是一把雙刃劍。它對人類很有用,但它也給代碼庫增加了很多膨脹。但想想下次你使用人工智能的時候:你想要一些關于該功能目的的描述,以便人工智能稍后可以再次閱讀,以理解圍繞它的業務環境。”

人工智能克服自己的缺陷

盡管存在這些怪癖,但與我交談過的開發人員認為人工智能生成的代碼在軟件開發生命周期中占有一席之地。事實上,他們說人工智能工具在代碼維護和重構過程中可能會有所幫助。具有諷刺意味的是,人工智能工具甚至可以用來克服人工智能代碼中的一些缺陷。

例如,Rehl在Innovative Solutions部署了用于代碼分析和自動重構的人工智能工具。他說:“人工智能可以快速分析大型代碼庫,并識別需要重構、潛在bug或優化機會的區域。“對于更簡單的重構任務,比如重命名變量或提取方法,人工智能工具可以在整個代碼庫中以高精度執行這些操作。”Query Pal的Nag指出,他在代碼庫的變化中使用了人工智能,比如更新過時的API調用。

因為商業上可用的人工智能工具是根據他們從大量代碼庫中學到的最佳實踐和模式進行培訓的,所以它們也可以被部署來提出對人眼來說可能不太明顯的改進建議。Nag說:“人工智能工具在識別模式和提出改進建議方面非常出色,這可以顯著加快重構過程。”

Pranshtech的Gajjar補充說:“像GitHub Copilot這樣的工具可以簡化代碼,糾正效率低下的問題,甚至可以在從某些模式中識別出邏輯后重新構建邏輯。它可以幫助完成自動重復的任務,清理樣板代碼,甚至提示那些需要重構的部分。”

Rehl描述了一個他能夠使用人工智能工具重構人工智能輔助代碼的實際情況。他解釋說:“人工智能創建了一個復雜的React組件結構,但它與我在后端設置的數據模型并不完全一致。”

重構這一過程需要謹慎地保持人工智能的有效組件設計,同時調整它以適應我們的特定數據流。我發現特別有用的是使用人工智能(在本例中是CursorIDE)來輔助重構過程本身。我可以用自然語言描述我需要的改變,人工智能會建議修改代碼。這創造了一個有趣的循環,即人工智能生成的代碼在人工智能的幫助下被重構,而人類監督指導著這一過程。

仍然需要人類參與其中

很多開發者沒有人認為人工智能已經準備好在代碼庫中釋放出來了——至少現在還沒有。品牌開發公司Emerald OceanLtd.的開發人員兼首席執行官Jason Wingate表示,人工智能工具使他能夠加速重構,但人類的監督仍然是關鍵。他說:“總是審查和完善人工智能生成的代碼更改。

Wingate描述了在人工智能幫助下進行編碼的基本迭代過程。他說,“最基本的方法是請求重構建議,并給它一大塊代碼。包括關于語言、編碼標準和約定的基本信息。根據你真正想要的東西,你可以深入研究更多你真正想要實現的問題。你可以自己執行這些建議,也可以讓人工智能來執行。然后回顧一下,有可能再做一次。”

Wingate還提醒開發人員注意幻覺,并運行測試以確保工具正確地遵循提示。

QueryPal的Nag還指出,有必要仔細審查人工智能生成的代碼。他說,“根據我的經驗,在初始開發和重構中成功使用人工智能的關鍵是將其視為知識淵博但有時不可靠的初級團隊成員。你不會讓新員工在沒有審查的情況下直接將代碼推送到產品中,人工智能生成的代碼也是如此。我總是確保團隊中有經驗的開發者審查并調整人工智能的輸出。”

Rehl也不認為這種人類監督是暫時的。他說:“我相信重構過程確實需要人在循環中的體驗。在人工智能模型中,系統設計的商業背景可能會丟失,因此,人類將需要引導它。我開始相信QA工程師可能是未來的‘重構工程師’,他們負責驗證需求,比較輸出,并將內容反饋給人工智能。”

未來還沒有完全確定

與我交談過的每個開發人員和IT領導者都強調,人們仍處于生成式人工智能的早期階段。對于大多數商店來說,其代碼庫中人工智能輔助(或完全人工智能編寫)的代碼數量相對較少。但隨著人工智能輔助重構的雪球般滾雪球,它將不可避免地增長。

Rehl引用了絞藤的模式來解釋他是如何看待這個過程的:

當人們喜歡舊技術并想要創造新技術時,可以在舊系統的基礎上構建一個全新的系統,或者你可以在舊系統的基礎上構建新系統的組件。你開始交換組件樹和它的絞藤。他們進來掐死那棵樹。認為隨著時間的推移,這將會發生,因為人工智能。當人工智能作為副駕駛員暴露在現有系統中時,它將開始自動記錄樹周圍的情況。然后在一年后,它將有足夠的評論來理解它試圖實現的業務環境,然后它就可以接管了。

但對大多數商店來說,這一天還沒有到來。QueryPal的Nag表示:“總的來說,雖然人工智能編碼工具確實提高了我們在許多領域的生產力,但它們也在代碼一致性和維護方面帶來了新的挑戰。”它們并不是某些人所希望的靈丹妙藥,而是一種強大的工具,如果使用得當,可以顯著提高開發人員的能力。關鍵是找到適當的平衡,并始終在代碼庫中保持人情味。

責任編輯:華軒 來源: 機房360
相關推薦

2024-09-05 10:17:34

2022-05-07 10:01:20

好代碼壞代碼

2023-09-27 15:18:06

人工智能智能建筑

2016-09-24 22:49:31

2018-08-17 15:17:56

人工智能層次極端

2022-06-20 11:05:58

通用人工智能機器人

2021-01-23 23:27:13

人工智能深度學習數據

2023-10-17 10:20:23

2020-08-31 15:15:20

人工智能算法AI

2021-09-03 09:22:28

人工智能倫理AI

2022-11-03 15:16:27

人工智能

2022-06-29 14:30:24

人工智能氣候數據

2020-09-18 16:01:18

大數據

2024-12-18 07:45:18

2024-04-24 14:11:07

2022-05-10 14:11:55

人工智能金融科技機器學習

2022-01-13 06:59:40

人工智能無代碼IT

2022-07-29 15:47:25

人工智能AI

2024-09-27 12:04:48

2023-05-29 16:57:06

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区三区视频在线 | 午夜一级大片 | 波多野结衣一区二区三区 | av片在线免费看 | 密室大逃脱第六季大神版在线观看 | 国产亚洲www| 在线不卡| 欧美日韩不卡在线 | 精品1区| 中文精品视频 | 精品欧美一区二区精品久久 | 亚洲iv一区二区三区 | 中文字幕第一页在线 | 成人欧美一区二区三区在线播放 | 91精品国产91综合久久蜜臀 | 在线视频一区二区三区 | 免费观看一级特黄欧美大片 | 成人免费av在线 | 国产精品久久欧美久久一区 | 一级视频黄色 | 黄色片av| 欧美一级免费看 | 日本精品在线播放 | 日韩在线精品视频 | 国产日韩久久 | 国产91亚洲精品 | 91麻豆产精品久久久久久夏晴子 | 欧美激情一区 | 亚洲欧美日本在线 | 一区二区三区精品在线 | 欧美日韩综合精品 | 日韩欧美中文在线 | 午夜欧美| 国产日韩欧美一区 | 久久久精品| 欧美亚洲视频在线观看 | 日韩在线欧美 | 日本黄色一级视频 | 一区二区三区四区在线 | 日韩精品久久久 | www.久久久.com|