Laravel 使用通義靈碼 - AI 輔助開(kāi)發(fā)提升效率

2025-03-28 15:46 更新

一、引言

Laravel 是 PHP 常用的一種后端開(kāi)發(fā)框架,遵循 MVC(模型 - 視圖 - 控制器)架構(gòu),以簡(jiǎn)潔、優(yōu)雅的語(yǔ)法和強(qiáng)大的功能著稱(chēng),旨在提升開(kāi)發(fā)效率并簡(jiǎn)化復(fù)雜任務(wù)的實(shí)現(xiàn)。然而,它的開(kāi)發(fā)習(xí)慣可能與傳統(tǒng)的 PHP 開(kāi)發(fā)方式有所不同,對(duì)于新手來(lái)說(shuō),上手 Laravel 可能會(huì)面臨一定的學(xué)習(xí)曲線。此時(shí),擁有一位 AI 導(dǎo)師輔助指導(dǎo),將大大降低上手難度。本文將以通義靈碼為例,介紹如何使用這一 AI 工具輔助開(kāi)發(fā) Laravel 項(xiàng)目。


二、通義靈碼簡(jiǎn)介

通義靈碼是由阿里云技術(shù)團(tuán)隊(duì)精心打造的智能編碼助手。它基于強(qiáng)大的通義大模型,能夠?yàn)殚_(kāi)發(fā)者提供以下實(shí)用功能:

  • 代碼續(xù)寫(xiě)和優(yōu)化:根據(jù)現(xiàn)有代碼上下文,智能生成行級(jí)或函數(shù)級(jí)的代碼建議,幫助開(kāi)發(fā)者快速完成代碼編寫(xiě),并對(duì)代碼進(jìn)行優(yōu)化,提高代碼質(zhì)量和執(zhí)行效率。
  • 自然語(yǔ)言描述生成代碼:開(kāi)發(fā)者可以通過(guò)自然語(yǔ)言描述需求,通義靈碼能夠?qū)⑵滢D(zhuǎn)化為相應(yīng)的代碼,大大簡(jiǎn)化了代碼編寫(xiě)過(guò)程,尤其適用于復(fù)雜功能的實(shí)現(xiàn)。
  • 注釋生成和代碼解釋?zhuān)鹤詣?dòng)為代碼添加詳細(xì)注釋?zhuān)奖汩_(kāi)發(fā)者及團(tuán)隊(duì)成員更好地理解代碼邏輯和功能;同時(shí),能夠?qū)Υa進(jìn)行詳細(xì)解釋?zhuān)〝?shù)據(jù)庫(kù)表結(jié)構(gòu)分析、SQL 查詢過(guò)程解析等,有助于代碼的維護(hù)和優(yōu)化。
  • 單元測(cè)試生成:根據(jù)代碼自動(dòng)生成單元測(cè)試用例,確保代碼的可靠性和穩(wěn)定性,提高測(cè)試效率。
  • 研發(fā)智能問(wèn)答:作為基礎(chǔ)和核心功能,開(kāi)發(fā)者可以通過(guò)與通義靈碼的問(wèn)答對(duì)話,獲取所需的技術(shù)支持和解決方案,就像擁有一位智能的編程助手。
  • 代碼問(wèn)題修復(fù):能夠識(shí)別代碼中的潛在問(wèn)題,并提供修復(fù)建議,幫助開(kāi)發(fā)者及時(shí)解決代碼錯(cuò)誤和漏洞。

通義靈碼官網(wǎng):https://tongyi.aliyun.com/lingma/

通義靈碼支持:JetBrains IDEs、Visual Studio Code、Visual Studio,及遠(yuǎn)程開(kāi)發(fā)場(chǎng)景(Remote SSH、Docker、WSL、Web IDE),安裝后登錄賬號(hào)即可開(kāi)始使用。

本文采用PHPstorm進(jìn)行介紹,它是Jetbrains IDEs系列的成員,支持通義靈碼插件,集成的功能豐富,可以進(jìn)行代碼分析測(cè)試等功能。


三、環(huán)境配置

本文采用 PHPStorm 進(jìn)行介紹,它是 JetBrains IDEs 系列的成員,支持通義靈碼插件,集成的功能豐富,可以進(jìn)行代碼分析、測(cè)試等。

PHPstorm 的安裝方式和 IDEA 的是一樣的,可以參考IntelliJ?IDEA?中安裝和使用通義靈碼?AI?編程助手教程。

(一)安裝通義靈碼

  1. 點(diǎn)擊頂部菜單欄的 File -> Settings(在 macOS 上為 IntelliJ IDEA -> Preferences)。
  2. 在設(shè)置窗口的左側(cè)菜單中選擇 Plugins,然后點(diǎn)擊 Marketplace。
  3. 在搜索框中輸入 “通義靈碼”,找到插件后點(diǎn)擊 Install 按鈕進(jìn)行安裝。
  4. 安裝完成后,重啟 PHPStorm 以完成插件的加載。

(二)登錄通義靈碼

重啟 PHPStorm 后,在右側(cè)工具欄會(huì)看到 通義靈碼 的圖標(biāo)。點(diǎn)擊圖標(biāo)進(jìn)入插件界面。首次使用時(shí),需要點(diǎn)擊登錄按鈕,瀏覽器會(huì)自動(dòng)打開(kāi)阿里云登錄頁(yè)面,完成登錄后即可返回 PHPStorm 使用通義靈碼。


四、功能演示

(一)代碼續(xù)寫(xiě)

通義靈碼提供行級(jí)和函數(shù)級(jí)的代碼補(bǔ)全功能。

在 IDE 編輯器中編寫(xiě)代碼時(shí),開(kāi)啟自動(dòng)云端生成模式,它會(huì)根據(jù)當(dāng)前代碼文件及相關(guān)文件的上下文,自動(dòng)生成代碼建議。

開(kāi)發(fā)小提示:為了讓代碼補(bǔ)全功能更貼近我們想要的結(jié)果,我們可以先寫(xiě)代碼注釋描述其功能。例如上圖所示


通義靈碼提供了一組快捷鍵使用方式,可以更好的進(jìn)行代碼續(xù)寫(xiě)的控制:

操作 macOS Windows
接受行間代碼建議 Tab Tab
廢棄行間代碼建議 esc esc
查看上一個(gè)行間推薦結(jié)果 ?(option) + [ Alt+[
查看下一個(gè)行間推薦結(jié)果 ?(option)+] Alt+]
手動(dòng)觸發(fā)行間代碼建議 ?(option)+P Alt+P

你可以使用快捷鍵快速接受、廢棄或切換代碼建議。


(二)智能問(wèn)答

通義靈碼的智能問(wèn)答功能強(qiáng)大,不僅可以回答你的技術(shù)問(wèn)題,還能進(jìn)行代碼創(chuàng)作。

你可以向它咨詢 Laravel 中某個(gè)功能的用法,或者請(qǐng)求它生成一個(gè)特定功能的代碼片段。

基于智能問(wèn)答,還能實(shí)現(xiàn)很多有用的功能,比如后續(xù)的代碼注釋?zhuān)a解釋?zhuān)瑔卧獪y(cè)試生成和代碼優(yōu)化,都是基于基于智能問(wèn)答實(shí)現(xiàn)的。


(三)會(huì)話創(chuàng)建和清理

智能問(wèn)答是一個(gè)持續(xù)對(duì)話的過(guò)程,為了提高 AI 生成答案的質(zhì)量,應(yīng)該適時(shí)清理會(huì)話。你可以通過(guò)創(chuàng)建一個(gè)新會(huì)話或者清理來(lái)實(shí)現(xiàn)。

  • 清理會(huì)話:在對(duì)話框中輸入?/clearContext?,然后點(diǎn)擊確定即可。

  • 創(chuàng)建新會(huì)話:在智能問(wèn)答的右上角有一個(gè)圓形 ??+?? 號(hào)按鈕,點(diǎn)擊即可創(chuàng)建新對(duì)話。


代碼小技巧

通義靈碼生成的代碼一般都會(huì)在右上角有這四個(gè)小按鈕,分別對(duì)應(yīng)著插入、復(fù)制、新建和合并的功能,后續(xù)的功能會(huì)用到這些小技巧。

  • 插入 :會(huì)把 AI 生成的代碼替換到我們選中的代碼位置,一般在代碼注釋和代碼優(yōu)化中應(yīng)用。

  • 復(fù)制 :則是復(fù)制 AI 生成的代碼,我們可以自己選擇插入的位置。

  • 新建 :則是新建一個(gè)文件,把 AI 生成的代碼放進(jìn)去,一般而言生成測(cè)試代碼會(huì)選擇新建一個(gè)文件夾存放。

  • 合并 :則是把代碼黏貼到文件中,比如黏貼到選中的代碼后,一般我們?cè)谥悄軉?wèn)答中得到我們需要的代碼可以用合并。


(四)代碼注釋

通義靈碼能夠根據(jù)代碼生成對(duì)應(yīng)的注釋?zhuān)奖愦a閱讀和維護(hù)。

使用時(shí),先選中需要注釋的代碼,在右鍵菜單中找到通義靈碼的代碼注釋選項(xiàng),點(diǎn)擊后右側(cè)對(duì)話欄會(huì)生成帶注釋的代碼,可直接合并到原文件或復(fù)制后自行操作。

也可以用快捷鍵shift+alt+V,或者右鍵菜單中也有代碼注釋功能。

會(huì)在左側(cè)顯示代碼注釋結(jié)果


(五)代碼解釋

通義靈碼提供了代碼解釋功能,該功能可用于分析數(shù)據(jù)庫(kù)的表結(jié)構(gòu),也可以用來(lái)分析 SQL 查詢的過(guò)程,幫助程序員深入理解數(shù)據(jù)庫(kù)操作和優(yōu)化查詢性能。 


(六)單元測(cè)試生成

通義靈碼可以根據(jù)我們的代碼,設(shè)計(jì)對(duì)應(yīng)的測(cè)試用例。

通義靈碼甚至還能貼心地生成對(duì)應(yīng)的測(cè)試代碼:

測(cè)試用例代碼一般是復(fù)制后到一個(gè)專(zhuān)門(mén)的測(cè)試用例文件中,方便后續(xù)測(cè)試。也可以用新建文件,通義靈碼會(huì)再幫你創(chuàng)建一個(gè)測(cè)試用例文件。


(七)代碼優(yōu)化

通義靈碼能夠識(shí)別選中代碼可能存在的問(wèn)題,并進(jìn)行優(yōu)化。

它會(huì)根據(jù)代碼的邏輯結(jié)構(gòu)、性能瓶頸等方面提出優(yōu)化建議,如改進(jìn)算法、調(diào)整 SQL 語(yǔ)句結(jié)構(gòu)、增加索引等,從而提高代碼的執(zhí)行效率和質(zhì)量。

代碼優(yōu)化一般使用合并(diff)操作來(lái)把原代碼替換成優(yōu)化后的代碼。


(八)AI 程序員

通義靈碼的 AI 程序員功能使 AI 能夠像專(zhuān)業(yè)程序員一樣協(xié)助進(jìn)行代碼的修改。

在項(xiàng)目開(kāi)發(fā)中,面對(duì)多個(gè) SQL 文件,AI 程序員可以輔助進(jìn)行代碼的檢查、優(yōu)化和修改。


五、總結(jié)與展望

通義靈碼作為一款智能編碼助手,為 Laravel 開(kāi)發(fā)提供了全方位的輔助功能。

從代碼編寫(xiě)、注釋、優(yōu)化到智能問(wèn)答,它都能有效提高開(kāi)發(fā)效率和代碼質(zhì)量。

隨著 AI 技術(shù)的不斷發(fā)展,相信通義靈碼會(huì)在未來(lái)的 Laravel 開(kāi)發(fā)中發(fā)揮更加重要的作用。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)