<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          GitHub Copilot 支持 IntelliJ IDEA啦,插件裝起來!

          共 2364字,需瀏覽 5分鐘

           ·

          2021-11-04 15:47

          大家好,我是TJ

          一個(gè)勵(lì)志推薦10000款開源項(xiàng)目與工具的程序員


          前幾天給大家介紹過一款I(lǐng)DEA編碼自動(dòng)注釋工具,可以幫助小伙伴們的編程效率,想必很多人已經(jīng)下載使用了,還沒看過想了解下的小伙伴點(diǎn)這里:IDEA編碼自動(dòng)注釋工具,讓你的開發(fā)更有效率

          然而此時(shí)此刻TJ君腦海中有一個(gè)大膽的想法,如果有一款工具,能反過來根據(jù)注釋自動(dòng)給出編程代碼,是不是程序猿們都會(huì)笑的合不攏嘴,爽歪歪?

          別以為TJ君說的是天方夜譚,就在前不久的?GitHub Universe 2021開發(fā)者大會(huì)上,GitHub官方正式宣布了一款名為?Copilot工具的更新。

          說起Copilot這個(gè)名字,相信一直關(guān)注GitHub的小伙伴馬上腦海中會(huì)浮現(xiàn)出今年早些時(shí)候看到的新聞。

          就在今年夏天,GitHub 官方和OpenAI聯(lián)合發(fā)布了一款A(yù)I自動(dòng)編程工具,其名字正是?GitHub Copilot?。就像前文TJ君想的那樣,通過Copilot,程序員只需輸入注釋,即可自動(dòng)生成代碼!

          當(dāng)時(shí)一時(shí)間在程序猿圈子里還引起了不少的轟動(dòng),但更多的是對(duì)這個(gè)工具的疑問,還因此引發(fā)了一個(gè)快速平方根倒數(shù)算法事件

          快速平方根倒數(shù)算法,是當(dāng)年紅極一時(shí)的雷神之錘3(Quake 3,也是TJ君當(dāng)年的最愛之一)的開發(fā)者約翰·卡馬克用的一段代碼。


          卡馬克大神


          這段使用多項(xiàng)式逼近計(jì)算平方根的代碼,至今都沒什么人能明白卡馬克的腦子是怎么想出來的,以至于這段代碼阿注釋直接是what the f***?很貼切了

          而有開發(fā)者在Copilot發(fā)布后不久就發(fā)現(xiàn),只要輸入 快速平方根倒數(shù)算法(Fast Inverse Square Root,當(dāng)然是英文)作為注釋,Copilot 就會(huì)逐行逐字地重現(xiàn)了這段神奇的算法,一字不差,甚至連那個(gè)夸張地注釋都沒變。

          這下子仿佛在程序猿小伙伴中間投了顆原子彈,大家都在問難道Copilot只是把別人的代碼拿來復(fù)制一下就是所謂地自動(dòng)生成了?

          那這之后各種版權(quán)問題咋搞,萬一用了Copilot生成一段代碼卻被人起訴了怎么辦?甚至有科技公司直接宣布禁止旗下員工使用Copilot開發(fā)公司產(chǎn)品,就是為了減少不必要的麻煩。

          一時(shí)間各種針對(duì)Copilot地非議愈演愈烈,甚至傳出了自動(dòng)生成內(nèi)容是某個(gè)公司大佬身份證這樣的消息,當(dāng)然后來被澄清是一個(gè)笑話。

          但是GitHub并沒有退縮,認(rèn)為Copilot并沒有簡(jiǎn)單的抄襲其他人的內(nèi)容,而是經(jīng)過大量訓(xùn)練的AI自動(dòng)生成所需代碼,和抄襲完全是兩回事。反正這件事情后來也么了下文,當(dāng)時(shí)Copilot也只支持 Visual Studio Code。

          不過前幾天的這次更新之后,Copilot將全面支持Neovim 和 JetBrains IDE,包含開發(fā)者常用的 IntelliJ IDEA、PyCharm 等。同時(shí)增加了對(duì) Java 中多行補(bǔ)全的支持,并計(jì)劃在未來幾個(gè)月內(nèi)支持Python、Java、Type、Ruby 和 Go之外更多的語言,似乎真的是要大干一場(chǎng)。

          如果想用Copilot的話,需要將 IntelliJ IDEA 和 PyCharm 升級(jí)到 2021.2 或以上版本、Neovim 的版本則需要升級(jí)成 0.6 或以上版本,并且需要安裝 Node.js v12 或以上版本。

          安裝重啟之后就可以在工具欄看到安裝好的Copilot

          然后登陸GitHub賬號(hào),同意相關(guān)條款

          那說了那么久,這款號(hào)稱可以自動(dòng)編碼的插件具體使用效果如何呢?就讓TJ君帶你領(lǐng)略一下或許是未來的編碼趨勢(shì)與潮流:

          例如在項(xiàng)目里新建了test類,Copilot馬上就會(huì)給一個(gè)建議生成的主體

          此時(shí)只需要輕按一下tab鍵,就可以接受建議自動(dòng)生成,無需手打這段代碼。

          同樣的如果輸入了一個(gè)函數(shù)標(biāo)題,也會(huì)自動(dòng)出現(xiàn)推薦的函數(shù)主體內(nèi)容,一樣是用tab鍵接受。

          當(dāng)然,Copilot不止會(huì)給出單一的自動(dòng)編碼推薦,用戶可以使用Alt+]或者Alt+[來逐個(gè)切換不同的推薦,就像逐個(gè)挑選一件件商品一般,選中之后輕按一下tab鍵使用即可。

          而通過Alt+Enter可以直接打開各種推薦的列表,便于查找。

          至于TJ君之前夢(mèng)想的根據(jù)注釋自動(dòng)生成代碼,有一個(gè)前提就是必須輸入的注釋能讓機(jī)器看懂,也就是說,需要英文注釋。當(dāng)輸入中文注釋,Copilot不一定看得懂含義,畢竟中文可是博大精深滴。。。

          那如果小伙伴的英語水平不錯(cuò),Copilot還真的能節(jié)省不少時(shí)間,例如當(dāng)用戶寫了如下一段關(guān)于給圖像增加邊框的注釋:

          //?find?all?images?without?alternate?text
          //?and?give?them?a?red?border
          void?process()?{

          Copilot會(huì)自動(dòng)生成相應(yīng)的功能代碼,感覺比自己寫的還順暢:

          除了上述Alt+]Alt+[Alt+Enter,最常見的操作還包括使用Esc拒絕推薦和Alt + \觸發(fā)關(guān)聯(lián)建議。這里TJ君提到的操作模式都是基于windows操作,如果使用MAC的小伙伴要注意將ALT鍵換成Option鍵就可以了。

          TJ君覺得如果對(duì)于Copilot的使用熟練了并且對(duì)英文注釋的掌握沒有問題的話,Copilot真的能讓編程省時(shí)省力,省卻許多手打基礎(chǔ)代碼的功夫,讓程序猿更多的精力花在整體架構(gòu)設(shè)計(jì)或者邏輯實(shí)現(xiàn)上。不過到底怎么樣,還是要用一用才知道,所以小伙伴們趕緊來獲取倉庫地址和插件下載方法,趕緊試試吧,地址如下:

          點(diǎn)擊下方卡片,關(guān)注公眾號(hào)“TJ君

          回復(fù)“copilot”,獲取倉庫地址

          關(guān)注我,每天了解一個(gè)牛x、好用、有趣的東東

          瀏覽 52
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  人人精品一起草 | 久久肏逼网| 成人伊人AV | 夜夜撸www | 欧美亚洲俺也去欧美 |