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