自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C++和C++程序員誰(shuí)先完蛋?

開(kāi)發(fā) 前端
AI很有可能最終取代我,也許不是以程序員的身份,而是以C ++程序員的身份。但是一些新技術(shù)將殺死C ++本身的可能性很小。

直到昨天,我還以為AI永遠(yuǎn)不會(huì)取代我成為程序員。

好吧,從一開(kāi)始,編程作為一種職業(yè)就已經(jīng)陷入了自己的死亡之中。我想,當(dāng)有人第一次提出匯編程序時(shí),很多人都認(rèn)為這就是結(jié)局。

什么?一個(gè)可以將人類(lèi)可讀的筆跡轉(zhuǎn)化為真實(shí)機(jī)器代碼的程序?那么每個(gè)經(jīng)理現(xiàn)在都可以編寫(xiě)代碼嗎?我們過(guò)時(shí)了嗎?我們已經(jīng)自動(dòng)化了嗎?是時(shí)候收拾東西走了嗎?

[[383809]]

然后很快就出現(xiàn)了足夠多的高級(jí)語(yǔ)言。諸如FORTRAN和COBOL之類(lèi)的語(yǔ)言?,F(xiàn)在,這肯定使真正的程序員變得不必要了,不是嗎?您可以是機(jī)械工程師或業(yè)務(wù)分析師,并且精通計(jì)算機(jī)。您不再需要程序員為您編寫(xiě)代碼。

然后歸納編程來(lái)了。具有Haskell的功能或Prolog的邏輯。歸納編程的思想是-您無(wú)需編寫(xiě)代碼,只需設(shè)置程序應(yīng)在其中運(yùn)行的約束條件,并且在可能的情況下,語(yǔ)言將為其編寫(xiě)代碼。

隨著語(yǔ)言發(fā)展到計(jì)算機(jī)代數(shù)系統(tǒng),它成為不可知的語(yǔ)言?,F(xiàn)在,您可以在Python筆記本中編寫(xiě)一些方程式,并將其解轉(zhuǎn)換為其他任何語(yǔ)言的代碼。因此,不僅您不需要程序員來(lái)編寫(xiě)代碼,甚至都不需要自己編寫(xiě)代碼。

盡管所有這些事情都威脅著要終止編程作為一種職業(yè),但是,卻有大量的程序員崛起,崛起并繼續(xù)崛起。指數(shù)也是如此。每五年,這個(gè)數(shù)字就會(huì)增長(zhǎng)兩倍。比人類(lèi)增長(zhǎng)的速度快得多。以這種速度,到2075年,我們所有人(約有100億)將各自擁有三個(gè)編程工作。

當(dāng)然,這種增長(zhǎng)必須在某個(gè)時(shí)候停止。世界上沒(méi)有足夠的可卡因來(lái)使我們所有人日復(fù)一日地不停地進(jìn)行編程。但這不會(huì)因?yàn)槟承╊嵏残约夹g(shù)而停止,只有在其他行業(yè)的需求超過(guò)程序員的需求時(shí),它才會(huì)停止。

諸如匯編,高級(jí)語(yǔ)言,歸納編程或AI之類(lèi)的破壞性技術(shù)只能改變我們進(jìn)行編程的方式,而不能殺死編程作為一種職業(yè)。

還是我昨天想過(guò)。

您可能會(huì)認(rèn)為,我與GPT-3聊天,它最終說(shuō)服了我從事男性妓女的光輝事業(yè)。但不是。實(shí)際上,昨天只是另一天,我只是在做我的工作。好吧,不是我的工作。我當(dāng)時(shí)正在從事C ++應(yīng)該為我完成的工作,但失敗了。我正在將一段高性能代碼從MSVC移植到GCC。

是什么讓程序在2021年快速運(yùn)行?內(nèi)存仍然相對(duì)較慢,并且說(shuō)來(lái)話長(zhǎng),因此必須進(jìn)行顯式內(nèi)存管理?,F(xiàn)在每個(gè)CPU有許多內(nèi)核,因此我們需要并行計(jì)算。而且,處理器的滴答速度并沒(méi)有比20年前快很多,但是現(xiàn)在它們確實(shí)有很多傳送帶,因此,如果我們要快速編寫(xiě)代碼,就必須對(duì)所有內(nèi)容進(jìn)行超標(biāo)量。所以這三件事。

C++糟透了這三個(gè)方面。

  • 是的,在C++中有一種分配對(duì)齊內(nèi)存的標(biāo)準(zhǔn)方法,但MSVC不支持。
  • 開(kāi)箱即用的并發(fā)性太糟糕了,您必須依靠第三方庫(kù),例如英特爾的TBB。
  • 編譯器嘗試在可能的情況下利用SIMD,但是它們無(wú)法有效地利用SIMD,因此您必須使用內(nèi)部函數(shù)編寫(xiě)代碼才能獲得所有好處。

如果您終生堅(jiān)持使用Microsoft和Intel,那沒(méi)關(guān)系。

但是,當(dāng)您嘗試將事物從一個(gè)平臺(tái)移植到另一個(gè)平臺(tái)時(shí),您會(huì)發(fā)現(xiàn)多年來(lái)C ++悄然失去了可移植性游戲。是的,您可以通過(guò)定義來(lái)解決對(duì)齊不一致的問(wèn)題。從技術(shù)上講,您可以為ARM進(jìn)行TBB克隆,因?yàn)橛⑻貭柪硭?dāng)然地不愿意支持他們的競(jìng)爭(zhēng)對(duì)手。但是,有了內(nèi)在函數(shù),您就有了句號(hào)。固有特性是特定于處理器的,因此您的代碼未得到優(yōu)化或可導(dǎo)入。

具有諷刺意味的是,由于C最初是為了將UNIX從PDP-7移植到PDP-11而發(fā)明的。其唯一目的是實(shí)現(xiàn)可移植性。50年后的今天,我們面臨著令人不安的事實(shí)。為了使性能最大化,您必須比編譯器更好地使用處理器指令。因此本質(zhì)上就像最初的程序員一樣編寫(xiě)代碼。

> Rainer Gerhards, CC BY-SA 3.0, via Wikimedia Commons

好的,但是它與AI有什么關(guān)系?

很高興你問(wèn)。我覺(jué)得,盡管對(duì)程序員的需求仍然追隨全球市場(chǎng),但對(duì)創(chuàng)新的需求卻在70年代急劇上升,并在隨后的幾年中逐漸下降。

歸納編程的需求為零,因此不會(huì)有像歸納編程甚至高級(jí)語(yǔ)言一樣出色的破壞性技術(shù)。對(duì)于C ++缺乏高性能計(jì)算方面的開(kāi)發(fā),我顯然感到不滿意,但您猜怎么著。我不是不高興去創(chuàng)造另一個(gè)FORTRAN。顯然,沒(méi)有人。

C++的作品。這不是理想的,但也沒(méi)有那么糟。這就是為什么它會(huì)留下來(lái)。

是的,我花了一天的時(shí)間將代碼從MSVC C++重寫(xiě)為GCC C++,這很無(wú)聊,而且我寫(xiě)了這句話,但這并沒(méi)有改變。一天就是一天。頭就是頭。

現(xiàn)在為破壞性技術(shù)。盡管AI尚無(wú)法滿足客戶想要的一切,但它具有完成我無(wú)聊的工作的全部能力。它可以解決交叉編譯器的不一致問(wèn)題,也可以在固有級(jí)別上優(yōu)化代碼。甚至用std :: threads重新實(shí)現(xiàn)parallel-for看起來(lái)也很繁瑣,足以委派給機(jī)器。

之后,AI甚至可以為我寫(xiě)書(shū)。

對(duì)于擁有比我更多的人工智能經(jīng)驗(yàn)的人來(lái)說(shuō),這一切都是可能的,有利可圖的,并且可能很有趣。我們已經(jīng)使用SymPy用C ++編寫(xiě)代碼,利用AI優(yōu)化該代碼將只是一步之遙,但是人們很樂(lè)意為此付出代價(jià)。它具有啟動(dòng)潛力,所以我希望它會(huì)很快出現(xiàn)

AI很有可能最終取代我,也許不是以程序員的身份,而是以C ++程序員的身份。但是一些新技術(shù)將殺死C ++本身的可能性很小。

原文鏈接:https://medium.com/swlh/what-will-die-out-sooner-c-or-c-programmers-f4659dc243c0

 

責(zé)任編輯:趙寧寧 來(lái)源: 今日頭條
相關(guān)推薦

2010-01-12 10:40:22

C++程序員

2012-11-08 09:49:30

C++Java程序員

2010-01-12 14:30:41

C++程序

2010-01-14 18:07:30

C++語(yǔ)言

2016-11-07 20:43:37

C程序員Protocol Bu

2023-07-17 10:28:00

C/C++編程接口

2011-03-30 09:26:20

c++程序員

2010-04-01 09:17:02

C++程序員

2016-03-25 11:57:23

Java程序員C++

2010-01-14 13:24:49

CC++語(yǔ)言

2011-05-24 17:20:57

程序員

2010-01-11 10:41:05

C++編程

2011-04-11 17:41:35

C++程序員

2011-03-29 09:01:27

C++程序員

2014-03-06 09:18:48

C++CIDE

2019-12-13 10:08:57

程序員技能開(kāi)發(fā)者

2011-02-15 13:12:02

JavaC++

2013-07-18 09:58:18

C++程序員

2011-03-29 14:31:41

CC++

2010-01-28 10:33:10

C++開(kāi)發(fā)程序
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)