{eval=Array;=+count(Array);}
看看代數(shù)和物理公式用漢字天干地支表示好呢還是用英文符號(hào)表示好。數(shù)字用阿拉伯?dāng)?shù)字表示好還是用漢字一二三,十百千表示好。文字各有優(yōu)缺點(diǎn)。編程用英文符號(hào)我認(rèn)為比漢字好,這不是崇洋媚外。師夷長(zhǎng)技以自強(qiáng)這句話目前還沒過(guò)時(shí)。
目前英文是全世界科學(xué)屆的統(tǒng)一語(yǔ)言,這是一件非常好的事情。現(xiàn)在的科技不在是一個(gè)人在家里冥思苦想的牛頓時(shí)代,而是全球合作全球共享的時(shí)代。漢語(yǔ)只是一國(guó)語(yǔ)言,而且我國(guó)在高科技的很多方面都需要與世界合作。
假如有一天,中國(guó)人發(fā)明了一種編程語(yǔ)言,我也希望是英文的,不但語(yǔ)言是英文的,它的doc也應(yīng)該有原始的英文版而不是中譯英版,否則,只有咱們中國(guó)人自己玩。
在這次疫情中可以看到,我們的醫(yī)生在國(guó)際交流中沒有什么障礙。別的我不清楚,華西醫(yī)院的很多醫(yī)生都是從國(guó)外玩過(guò)一圈的,越是高科技,越是要與世界同仁一起分享和發(fā)展。
我知道有很多人不愿意學(xué)英文,希望生活中不要有英語(yǔ)的出現(xiàn),那你最好穿越回乾隆時(shí)代吧,現(xiàn)在的中國(guó)已經(jīng)無(wú)法撼動(dòng)的邁向了全球化。
在漢字編碼沒有搞清楚用utf還是gb系列之前,中文編程還是先別想了。經(jīng)常被漢字在程序中出現(xiàn)的亂碼搞得心煩意亂。中文編程敬謝不敏。
澄清幾點(diǎn)事實(shí):
第一,常用的英文編程語(yǔ)言都早已支持中文命名標(biāo)識(shí)符。由于標(biāo)識(shí)符在代碼中是業(yè)務(wù)邏輯最富集的部分,因此這個(gè)簡(jiǎn)單的方法已經(jīng)可以讓代碼對(duì)于母語(yǔ)是中文的開發(fā)者更易于理解許多。
幾個(gè)例子,Java:
MySQL:
JavaScript:
第二,在標(biāo)識(shí)符中文命名之外,也可以將英文編程語(yǔ)言的關(guān)鍵字和API漢化。十幾年前就有周蟒,是將Python2漢化了,它的作者最近還實(shí)現(xiàn)了TypeScript的漢化,效果如下:
第三,同樣重要的是對(duì)編譯器或者解釋器的反饋信息進(jìn)行漢化。VS Code中,TypeScript的反饋信息與IDE的語(yǔ)言設(shè)置相同,因此可以看到這樣的中文反饋信息:
問好.ts:7:30 - error TS2345: 類型“number[]”的參數(shù)不能賦給類型“string”的參數(shù)。
也可以通過(guò)修改英文編程語(yǔ)言實(shí)現(xiàn),比如Python控制臺(tái)修改后:
第四,當(dāng)然也可以更大程度地自創(chuàng)中文語(yǔ)法的編程語(yǔ)言,比如本人參考《兩周自制腳本語(yǔ)言》一書實(shí)現(xiàn)JVM語(yǔ)言:
以及純JavaScript實(shí)現(xiàn)的類LOGO語(yǔ)言:
簡(jiǎn)而言之,中文編程在編寫和閱讀理解代碼上對(duì)國(guó)內(nèi)開發(fā)者肯定更親近友好,這就和軟件界面漢化的效果一個(gè)道理。但和任何英文編程語(yǔ)言一樣,首先要能夠滿足目標(biāo)用戶群的基本功能要求。
中文編程容易閱讀理解,英語(yǔ)因?yàn)樘L(zhǎng)函數(shù)變量都是縮寫的,這樣沒能把意思正確表達(dá)出來(lái),c語(yǔ)言還喜歡用單字母表示變量更沒法看。中文編程語(yǔ)言器普語(yǔ)言全中文,語(yǔ)法結(jié)構(gòu)還突破編程語(yǔ)言語(yǔ)法,采用接近人類語(yǔ)言的語(yǔ)法,徹底中文化,比如加法就用加而不是+。這樣代碼跟讀小說(shuō)差不多,再多程序代碼都可以讀。所以他的目標(biāo)是自然語(yǔ)言編程,而不是代碼編程。
我很好奇,數(shù)學(xué)都是阿拉伯?dāng)?shù)字和拉丁文符號(hào),為什么沒人質(zhì)疑數(shù)學(xué)使用漢字和中文符號(hào)呢?
編程語(yǔ)言的保留字用了不少英文單詞,源代碼的編碼也使用了ASCII編碼標(biāo)準(zhǔn)(美國(guó)信息交換標(biāo)準(zhǔn)代碼)。但這并不意味著是在用英文編程。編程語(yǔ)言是獨(dú)立于英語(yǔ)的通用語(yǔ)言。這使得源代碼可以在不同的語(yǔ)言和平臺(tái)上編輯。就象數(shù)學(xué)是唯一全世界通用的語(yǔ)言一樣,拋開編程語(yǔ)言自身的設(shè)計(jì)和本地?cái)?shù)據(jù),所有的程序代碼也是全世界通用的。
中文編程只能把自己封閉起來(lái),所寫代碼只能在中文環(huán)境下編輯。假設(shè)抖音使用中文編程的話,那么它想到美國(guó)發(fā)布就得再用英文寫一遍代碼。這不僅僅是提高了開發(fā)成本,還得維護(hù)兩套以上的系統(tǒng)。很難想象成本如此之高的系統(tǒng),會(huì)有多少競(jìng)爭(zhēng)力。
中文編程沒有任何優(yōu)點(diǎn)...全是缺點(diǎn)...
就是這樣...
不適合就是不適合...
中文并不是萬(wàn)能的...缺點(diǎn)很多...
正如你現(xiàn)在用古印度文算數(shù)一樣...
用中文算數(shù)就是傻逼行為...
用中文編程也是傻逼行為...
8
回答10
回答6
回答9
回答10
回答10
回答4
回答0
回答4
回答10
回答