譯者 | 崔皓
眾所周知ChatGPT可以寫代碼,但當(dāng)有一堆語言一起拋向它時(shí),它的表現(xiàn)如何呢?答案是:還不錯(cuò)(但并不完美)。
在過去的幾個(gè)月里,我們已經(jīng)領(lǐng)教了ChatGPT的編碼能力。我對(duì)它進(jìn)行了PHP和WordPress的測試,結(jié)果也反應(yīng)出了ChatGPT編程的優(yōu)缺點(diǎn)。
一、ChatGPT的編程知識(shí)能力有多強(qiáng)?
在本文中,我們將對(duì)O'Reilly Media 2023年受歡迎程度排名中的12種流行語言進(jìn)行“Hello, world”編程測試。
在測試中對(duì) “Hello, world”編碼進(jìn)行了一些調(diào)整,加入一些變化:讓ChatGPT輸出“Hello, world”十次,每次遞增一個(gè)計(jì)數(shù)器值。我還要求它檢查時(shí)間并在每個(gè)序列開始時(shí)輸出“早上好”、“下午好”或“晚上好”。
這樣的調(diào)整,在保證代碼量不大的情況下,我們可以了解程序流程和函數(shù)調(diào)用情況,每種編程語言我都會(huì)將ChatGPT的代碼輸出進(jìn)行截屏展示。
這里是我使用的ChatGPT提示:
在____中編寫一個(gè)程序,根據(jù)俄勒岡州的時(shí)間輸出“早上好”、“下午好”或“晚上好”,然后輸出十行包含循環(huán)索引(從1開始)、一個(gè)空格,然后是“Hello, world!”的詞語。
同時(shí),對(duì)于每種編程語言,我還要求ChatGPT描述其主要用途。這是我用于此查詢的提示:
對(duì)于以下每種語言,編寫一個(gè)簡短的描述,說明其主要用途和區(qū)別因素:Java,Python,Rust,Go,C ++,JavaScript,C#,C,TypeScript,R,Kotlin,Scala。
現(xiàn)在,讓我們來看看ChatGPT對(duì)于不同編程語言的駕馭能力吧。
1.Java
ChatGPT將Java描述為“一種通用語言,主要用于構(gòu)建桌面、Web和移動(dòng)應(yīng)用程序,并以其“編寫一次,隨處運(yùn)行”的理念而聞名。”
Java最初由Sun Microsystems開發(fā),但是當(dāng)Oracle收購了Sun時(shí),它也收購了Java。雖然Java規(guī)范是開放的,但這種語言歸Oracle所有。這導(dǎo)致了多年來一些驚人的法律爭端。
以下是ChatGPT的代碼:
2.Python
ChatGPT將Python描述為“一種通用語言,用于數(shù)據(jù)分析、人工智能、Web開發(fā)和自動(dòng)化,以其易讀性和易用性而著稱。”
我的建議:如果你計(jì)劃學(xué)習(xí)為AI應(yīng)用編寫代碼,請(qǐng)學(xué)習(xí)Python。幾乎所有AI代碼都緊密集成了Python。
以下是ChatGPT的代碼:
3.Rust
ChatGPT描述Rust為:“一種系統(tǒng)編程語言,用于構(gòu)建高性能和可靠的軟件,以其內(nèi)存安全性和線程安全性保證而著稱。”
以下是ChatGPT生成的Rust代碼:
4.Go
ChatGPT描述Go為“一種系統(tǒng)編程語言,用于構(gòu)建可擴(kuò)展和高效的網(wǎng)絡(luò)和服務(wù)器應(yīng)用程序,以其簡單性和內(nèi)置并發(fā)功能而聞名。”
Go是開源的,但由Google管理。
以下是ChatGPT的代碼:
5.C++
ChatGPT將C++描述為“用于構(gòu)建操作系統(tǒng)、游戲引擎和高性能應(yīng)用程序的系統(tǒng)編程語言,以其對(duì)硬件和內(nèi)存的控制而聞名。”
以下是ChatGPT生成的C++代碼:
6.JavaScript
ChatGPT將JavaScript描述為“一種客戶端腳本語言,用于構(gòu)建交互式Web應(yīng)用程序,以其廣泛用于Web開發(fā)和在Web瀏覽器中運(yùn)行的能力而聞名。”
以下是ChatGPT的代碼:
7.C#
ChatGPT描述C#為“一種通用語言,用于構(gòu)建Windows桌面應(yīng)用程序、游戲和Web應(yīng)用程序,并以其面向?qū)ο蟮奶匦院团c.NET框架的集成而聞名。”
同時(shí),C#是由Microsoft提供的專有語言。我在加州大學(xué)伯克利分校擴(kuò)展課程中教授了十多年的C#。對(duì)于想要在主要面向Microsoft環(huán)境編程工作的人來說,它是一個(gè)非常有趣的門戶語言。
這是ChatGPT的代碼:
8.C
ChatGPT將C描述為“一種用于構(gòu)建操作系統(tǒng)、嵌入式系統(tǒng)和高性能應(yīng)用程序的系統(tǒng)編程語言,以其效率和低級(jí)別控制而聞名”。
他們說你永遠(yuǎn)不會(huì)忘記你的初戀。在木制船只和鐵打程序員的時(shí)代,我自學(xué)了C語言編程,從此我就真正喜歡上了一門編程語言。但是當(dāng)我開始使用C并且我的世界改變時(shí),它就是我的愛。這門語言簡潔而簡單,從深層次和原始層面上對(duì)我說話。這可能有些過度分享了,但也是真的。C永遠(yuǎn)是我的第一種語法之愛。
這是ChatGPT的代碼:
9.TypeScript
ChatGPT 將 TypeScript 描述為“JavaScript 的超集,用于構(gòu)建大規(guī)模的 Web 應(yīng)用程序,并以其可選的靜態(tài)類型和先進(jìn)的語言特性而聞名。”
TypeScript 也是 Microsoft 的產(chǎn)品,但與 C# 不同,它是開源和非專有的。
ChatGPT 的代碼如下:
10.R
ChatGPT將R描述為“一種用于統(tǒng)計(jì)計(jì)算和數(shù)據(jù)分析的語言,以其強(qiáng)大的數(shù)據(jù)操作和可視化能力而聞名。”
以下是ChatGPT的代碼:
11.Kotlin
ChatGPT將Kotlin描述為“一種通用語言,用于構(gòu)建Android應(yīng)用程序、服務(wù)器端應(yīng)用程序和Web應(yīng)用程序,以其簡潔性和與Java的互操作性而聞名。”
Kotlin是由JetBrains開發(fā)的,這是一家小公司,也是我目前最喜歡的開發(fā)環(huán)境PhpStorm的開發(fā)者。
ChatGPT的代碼如下:
12.Scala
ChatGPT將Scala描述為“一種用于構(gòu)建可擴(kuò)展和分布式應(yīng)用程序的語言,以及因其對(duì)函數(shù)式編程的支持和與Java虛擬機(jī)的集成而聞名。”
以下是ChatGPT的代碼:
二、最后的想法
作為一名計(jì)算機(jī)語言愛好者,我覺得這個(gè)練習(xí)非常有趣。不過,需要聲明的是。首先,我沒有測試所有的代碼。測試這么多輸出超出了本文的范圍。盡管如此,我確實(shí)瀏覽了生成的代碼,并且對(duì)于大多數(shù)語言來說,代碼看起來都不錯(cuò)。
原文鏈接:https://www.zdnet.com/article/i-used-chatgpt-to-write-the-same-routine-in-12-top-programming-languages-heres-how-it-did/
譯者介紹
崔皓,51CTO社區(qū)編輯,資深架構(gòu)師,擁有18年的軟件開發(fā)和架構(gòu)經(jīng)驗(yàn),10年分布式架構(gòu)經(jīng)驗(yàn)。
文章內(nèi)容僅供閱讀,不構(gòu)成投資建議,請(qǐng)謹(jǐn)慎對(duì)待。投資者據(jù)此操作,風(fēng)險(xiǎn)自擔(dān)。
京東11.11采銷直播探廠為消費(fèi)者揭開答案。近日,京東3C數(shù)碼采銷走進(jìn)武漢攀升工廠、合肥聯(lián)想工廠和科大訊飛展廳,通過直播帶貨廠商爆款產(chǎn)品,并為消費(fèi)者帶來超值低價(jià)與福利。
奧維云網(wǎng)(AVC)推總數(shù)據(jù)顯示,2024年1-9月明火炊具線上零售額94.2億元,同比增加3.1%,其中抖音渠道表現(xiàn)優(yōu)異,同比有14%的漲幅,傳統(tǒng)電商略有下滑,同比降低2.3%。
“以前都要去窗口辦,一套流程下來都要半個(gè)月了,現(xiàn)在方便多了!”打開“重慶公積金”微信小程序,按照提示流程提交相關(guān)材料,僅幾秒鐘,重慶市民曾某的賬戶就打進(jìn)了21600元。
華碩ProArt創(chuàng)藝27 Pro PA279CRV顯示器,憑借其優(yōu)秀的性能配置和精準(zhǔn)的色彩呈現(xiàn)能力,為您的創(chuàng)作工作帶來實(shí)質(zhì)性的幫助,雙十一期間低至2799元,性價(jià)比很高,簡直是創(chuàng)作者們的首選。
9月14日,2024全球工業(yè)互聯(lián)網(wǎng)大會(huì)——工業(yè)互聯(lián)網(wǎng)標(biāo)識(shí)解析專題論壇在沈陽成功舉辦。