未來(lái)會(huì)不會(huì)出現(xiàn)這樣的編程語(yǔ)言?
網(wǎng)友解答: 先說(shuō)執(zhí)行效率和操作硬件。這兩件事歸根結(jié)底其實(shí)是一件事,暫且除去0/1編碼不去講,比起C和C++來(lái)說(shuō),無(wú)論是執(zhí)行效率還是硬件操作性,其實(shí)都是匯編更高一籌。但是由于硬件之間本身就
先說(shuō)執(zhí)行效率和操作硬件。這兩件事歸根結(jié)底其實(shí)是一件事,暫且除去0/1編碼不去講,比起C和C++來(lái)說(shuō),無(wú)論是執(zhí)行效率還是硬件操作性,其實(shí)都是匯編更高一籌。
但是由于硬件之間本身就存在巨大的差異,舉一個(gè)我們身邊的例子:計(jì)算機(jī)CPU復(fù)雜指令集和精簡(jiǎn)指令集至今還存在各自的不同使用價(jià)值和巨大差異。這些差異存在的原因除了技術(shù)本身之外,還有深遠(yuǎn)的商業(yè)價(jià)值和目的在里面,因此單就硬件層面來(lái)說(shuō)要實(shí)現(xiàn)編程語(yǔ)言大一統(tǒng)就是相當(dāng)困難的。
再說(shuō)連接數(shù)據(jù)庫(kù)的難易性,幾乎所有的高級(jí)編程語(yǔ)言連接數(shù)據(jù)庫(kù)的難易程度是在一個(gè)量級(jí)上的,而其實(shí)這所謂的容易或困難僅僅只是各編程語(yǔ)言自己的封裝來(lái)決定的。各大數(shù)據(jù)庫(kù)廠商為了贏得競(jìng)爭(zhēng),自己也會(huì)針對(duì)自家產(chǎn)品推出面向熱門主流編程語(yǔ)言的開發(fā)包,所以這一條其實(shí)也沒(méi)什么太大意義。
然后是跨平臺(tái)性,我覺(jué)得題主既然以Java為例,那應(yīng)該指的就是軟件在不同的計(jì)算機(jī)操作系統(tǒng)上的再編譯及運(yùn)行的問(wèn)題了。其實(shí)好像除了微軟家的東西,其它的語(yǔ)言或多或少都是有一定的跨平臺(tái)性的,比如常年玩Linux的人一定會(huì)有過(guò)下載各類軟件源碼自己編譯運(yùn)行的經(jīng)歷吧。只是在這件事上JVM多做了一些事情。
題主后面那句“像H 5那樣制作網(wǎng)頁(yè)和js”本身概念有問(wèn)題,H5是H5,js是js。另外早些年很多程序員都是利用各種后端語(yǔ)言以cgi-bin形式來(lái)開發(fā)網(wǎng)頁(yè)的,例如C/C++,甚至Perl,只是比起現(xiàn)在的Web開發(fā)方式來(lái)說(shuō)顯得效率過(guò)于低下了,但不是說(shuō)它們就不能制作網(wǎng)頁(yè)。
最后是易學(xué)性,我覺(jué)得吧這事兒不是什么好事兒,真要是編程語(yǔ)言大一統(tǒng)了,還超級(jí)容易學(xué)習(xí),誰(shuí)誰(shuí)都能很容易學(xué)會(huì)了,那程序員就真不值錢了。
況且人類本身就是個(gè)復(fù)雜的群體,你覺(jué)得一門語(yǔ)言足夠好了,足夠大一統(tǒng)了,但架不住總會(huì)有人超級(jí)嫌棄這門語(yǔ)言,這不好那不好的,覺(jué)得這不是自己理想中的好語(yǔ)言。
要是這人能力再?gòu)?qiáng)點(diǎn)兒,興許他又會(huì)自己設(shè)計(jì)一門新語(yǔ)言出來(lái),并且呼朋喚友召集志同道合的人成立新語(yǔ)言的社區(qū),一起來(lái)推廣這門語(yǔ)言。實(shí)際上好多語(yǔ)言也就是這么來(lái)的。
所以我個(gè)人還是覺(jué)得,要實(shí)現(xiàn)編程語(yǔ)言各方面大一統(tǒng)真得是太難太難了,但哪天真要是實(shí)現(xiàn)了,一定是個(gè)驚天動(dòng)地的大事件了