前天看到一個網(wǎng)友提問:“為什么中文不能用來編程轻抱?”,我回答了該網(wǎng)友的提問旦部,結(jié)果一發(fā)不可收拾祈搜,目前我的回答轉(zhuǎn)載量已經(jīng)超過百较店,評論也有將近兩百條,瀏覽量已經(jīng)超過22萬人容燕,這個問題的總瀏覽量已經(jīng)超過數(shù)百萬人瀏覽和參與梁呈,,而且到目前數(shù)量還在不斷增加蘸秘,那么為何一條小小的問題會引起如此大的爭議和關(guān)注官卡?下面我來總結(jié)一下我的觀點和網(wǎng)友的觀點。
首先醋虏,我是做開發(fā)的寻咒,我說說個人理解的吧,如有錯誤歡迎指正颈嚼,技術(shù)本來就是大家互相學(xué)習(xí)互相交流的毛秘,有什么錯誤也并不是不可饒恕。計算機最早從美國誕生阻课,而美國使用的是英語進行編程叫挟,英語是目前世界上使用最廣泛的語言。它用26個英文字符組成限煞,通俗易記抹恳。其實,計算機的底層只認識二進制0001111之類的晰骑,也就是說計算機本身只能識別0和1适秩,并不認識其他數(shù)字、英文和字符硕舆,但是每個程序和計算都使用二進制并不容易記秽荞,這樣對編程人員的技術(shù)要求很高,也很難操作抚官,而且一般人很難理解二進制代表的是什么東西扬跋,也就不知道它到底執(zhí)行的是什么,為了方便記憶和理解凌节,it界就誕生了用英語編寫的更利于記憶的編程語言钦听,包括匯編、C倍奢、C++朴上,java,C#卒煞,php等痪宰。但是計算機并不認識0和1之外的字符。那么它是怎么識別編程語言的呢?其實衣撬,它的底層是把編程語言翻譯城二進制乖订,也就是0和1組成的字符。就像咱們跟英國人交流一樣具练,必須把漢語翻譯成英文乍构、把英文翻譯成漢語或者把各自知道的語言翻譯成大家都識別的語言。
那么從上面看漢語能否作為計算機語言呢扛点?答案是絕對沒問題哥遮,那么為什么現(xiàn)在很少用中文編程呢?一方面中國計算機技術(shù)發(fā)展比較晚占键,在國際上沒有話語權(quán)昔善,如果重新開發(fā)一套中文編程代價和成本太大,所謂無利不起早畔乙,如果沒有很大的利益大家也都不愿意去摸索和發(fā)展君仆。再者一套中文編程看似簡單,實際上涉及的范圍太廣工程太過浩大牲距。使用的技術(shù)也很多返咱,實現(xiàn)起來并不容易。也沒有自己成熟和讓大家接受的中文操作系統(tǒng)牍鞠,而且很多技術(shù)只有國外有咖摹,英語編程都有很大的交流圈,技術(shù)和社區(qū)都很成熟难述。
中國前十多年誕生了自己的全中文語言易語言萤晴,但是一直不溫不火,社區(qū)不夠成熟胁后,計算機支持的也不大好店读,而且用易語言編寫的軟件很多都會被殺毒軟件報毒,殺毒軟件不識別易語言攀芯。所以一般用戶看到殺毒軟件報毒都會認為是病毒屯断,其實大多數(shù)易語言編寫的軟件并沒有毒只是殺毒軟件不識別。
有人認為因為英文節(jié)省空間也就是字節(jié)侣诺,如果用中文編程消耗的空間太大殖演,學(xué)過技術(shù)的人都知道編程中一個中文字符所占的字節(jié)等于兩個英文字符所占的字節(jié)。那么我們看看這種字節(jié)是否是影響中文編程的關(guān)鍵問題年鸳?我的答案是否定的趴久,為什么?因為英文和中文比起來并不節(jié)省空間搔确,相反占用的空間更大彼棍。我們打個比方已添,“控制器”在中文只有三個字符,但是在英文“controller”中所占的字節(jié)遠遠超過三個中文字符滥酥。“靜態(tài)”在中文中兩個字符占據(jù)四個字節(jié)畦幢,而英文“static”占據(jù)了六個字節(jié)坎吻。“常熟”中文占四個字節(jié)宇葱,英文“const”占據(jù)五個字節(jié)瘦真,由此可見,因為中文字符占據(jù)空間大并不成立黍瞧。如果你非要拿“如果...”和“if...”做比較我也無話可說诸尽。
不管網(wǎng)友怎么評論怎么理解,大家的意思都只有一個印颤。那就是“中文是可以編程的”您机,這個是沒有爭論的,就是看有沒有必要實現(xiàn)中文編程罷了年局。中國主要還是技術(shù)接受的晚际看,別人都在用計算機上天了,中國還不知道計算機為何物矢否,怎么可能發(fā)展的起自己的全中文編程語言仲闽?這個就像很多國民笑話專家一樣。研發(fā)的“自主操作系統(tǒng)”其實最后發(fā)現(xiàn)都是基于linux的僵朗。
為什么那么多網(wǎng)友都熱衷于中文的操作系統(tǒng)和中文的編程技術(shù)赖欣?我想還是民族自尊心的問題,這個總體上我還是很高興的验庙。你也許會問為啥顶吮?這不恰恰說明國人越來越關(guān)注自己國家了嗎?大家不僅關(guān)心國家的硬實力而且也開始關(guān)注國家的軟實力壶谒,都期盼有一天中華民族能夠站立在世界的頂端云矫。我們的神州飛船可以把人送上天,我們的武器可以打擊世界任何一個地點汗菜,我們的國產(chǎn)航母即將下水让禀。但是遺憾的是我們卻沒有自己的中文系統(tǒng)和完整的中文編程,對愛國的普通百姓來說這是很難接受的陨界。所以大家就一起自嘲巡揍,自嘲的同時有對國家和企業(yè)抱有很大的期盼。難道有了自己的系統(tǒng)和自己的編程技術(shù)就證明國家牛逼可嗎菌瘪?這個很難說腮敌,不同的人有不同的看法阱当。但是有了自己的技術(shù)體系確實能增加民族自豪感,而且能夠保證國家的信息安全糜工。增加自己的民族凝聚力弊添。中國老百姓為啥對自己國家要求很高?主要我想還是民族自尊心捌木,中國曾經(jīng)在世界的大部分歷史當中油坝,都是國力最強盛的,武力也最輝煌的刨裆,大小征戰(zhàn)無數(shù)次澈圈,老百姓自然希望自己國家能夠再次恢復(fù)昔日榮光。
那么中國以后能有自己成熟的編程語言嗎帆啃?我相信會有瞬女,只是這個需要漫長的過程,等到中國的技術(shù)真正超越國外努潘,并主導(dǎo)了計算機技術(shù)等的時候一定會研發(fā)自己成熟的技術(shù)诽偷。