每隔幾天,就會有人在網媒上討論中文編程的問題,甚至有編程的套件發布,每次都會引發一場大討論。但是在程式設計師的圈子裡,卻很少看到有人關注這個話題。
為什麼漢語編程這個話題總能引吸一些人的眼球呢?我們就開動腦筋,來想一想漢語編程能帶來的好處。
1) 民族榮譽感增強,這種感覺就像是以後我們的子孫再也不用學習英文了,而是英國人,美國人,世界各國人民都擠破腦袋來學習漢語,中華民族可以把學習英語的大 把時間節約下來,去做更有意義的事情。這以後,你去國外旅遊,當地人一聽說你是中國來的,會說漢語,就好吃好喝好妹子的招待你,只求能和你有一個練習口語 的機會。萬一你失業了,實在是找不著工作,你還可以找個地方傳授別人通關漢語四六級的秘訣。
等到漢語編程取待英語編程的那一天,咱們一定要讓老英老美把咱們中國人吃過的苦頭挨個吃一遍。這個看來,上升到民族大義的高度,漢語編程還真值得下功夫。
2)漢語編程能降低中國人學習編程的門檻,中國的軟體水平有機會領先世界。
對於第一點,帽子太大,我無法發表觀點,大多數打著為國為民旗號的行動最後看來都是扯蛋,為自己才是真的。第二點中提到的降低中國人學習編程的門檻,看來更具現實意義。
但筆者調查發現,大多數程式設計師的英語水平一般,越是頂尖的程式設計師英語水平越不敢恭維。為什麼,碼農們把大把的時間都花在編程這件事上,哪有時間學習英語。另外,如果擁有良好的英語能力,那麼你的就業選擇面就非常廣了。其實,沒有多少人願意把青春砸在寫代碼這件事上。
英語水平不行確實會為程式設計師的職業生涯帶來很多的麻煩,但寫代碼並不能提高你的英語水平。英文水平差的程式設計師在讀英文資料時會有很大的障礙,但沒聽說過有程式設計師因為英語不過關就讀不了代碼,寫不了代碼。
寫代碼用來的英文其實並不是通常意義的英文。英文不好並不會成為你編程路上最致命的障礙。反過來說,漢語編程,並不會在多大程度上方便中國人學習編程這門手藝。只有外行人把編程和英文混為一談,程式設計師們從來就沒有這麼想過。
如果要為漢語編程找一個用武之地,我想,可能最大的用途在於讓中國兒童學習編程。但我回答不了,為什麼要讓兒童學習編程呢,如果用漢語來設計程式語言,用圖形來設計,是不是更好呢,更易於兒童學習呢。
說了這麼多,漢語編程,在技術上是完全可行的,但我還是找不來漢語編程能帶來的實實在在的效益。
從漢語編程這個話題來看,得有多少人願意學習編程這門手藝呀。
下面,我們來欣賞一段比較接近漢語編程的代碼,看看漢語寫代碼是個個麼屌樣,注意,這段代碼是可以執行的。
下面代碼可向下滾動哦
#code.漢.jsvar 醜化JS = require("uglify-js");var _ = require("underscore");var 翻譯工具 = require("./translate_util");var 翻譯對象 = {}; module.exports = function(原始碼, 回調){ var AST的代碼 = 醜化JS.parse(原始碼); var 無功節點 = []; var 參考節點 = []; var 跨語言 = []; AST的代碼.walk(new 醜化JS.TreeWalker(function(結){ if (結 instanceof 醜化JS.AST_SymbolVar){ 無功節點.push(結); 跨語言.push(結.name); } })); AST的代碼.walk(new 醜化JS.TreeWalker(function(結){ if (結 instanceof 醜化JS.AST_SymbolRef){ if (跨語言.indexOf(結.name) != -1) { 參考節點.push(結); 跨語言.push(結.name); } } })); 跨語言 = _.uniq(跨語言); console.log("翻譯中"); 翻譯工具(跨語言.join("\n"), function(E, 結果){ 翻譯對象 = 結果; 無功節點.forEach(function(結){ 結.name = 翻譯對象[結.name] || 結.name; }); 參考節點.forEach(function(結){ 結.name = 翻譯對象[結.name] || 結.name; }); 回調(null, AST的代碼.print_to_string({ beautif
小編推薦
大神班JAVA第一期教程+課件-——不!加!密!
文章來源 :創業邦