編程軟體有沒有用中文編寫的?
我發現編程軟體都是用英文代碼,中國有沒有開發出用中文編碼的軟體。
現在上大學,都是先學c語言,再學c++,然後是java和c#,
對於中國的編程人才來講 這些編程門檻是不可避免的。尤其是在初高中都沒有接觸過c的,上來就看這些頭很大,然後很多bug,都沒有中文文獻。很多中文翻譯的書,都詞不達意,讓人很難理解。出了故障之後,還得翻譯成英文,到老外的社區去問。
是,我知道上面4門語言都已經樹大根深了,我就想問問,有沒有國內的編程輔助軟體,能夠幫助我們自動生成c和c++,以及java,c#的代碼的編輯器+代碼生成器。
說白了,就是能夠把博大精深的華夏文明的思想,能夠翻譯成 c和c++,以及java,c#的代碼。
我知道,有些人,喜歡把出師表 往編輯器里拖拽,然後就自動跳轉到詞法分析編輯器,我們校對後,則進入了語法分析編輯器。最後,中文 被編輯器對應的代碼生成器,自動翻譯成想要的語言的代碼。
以後記住不要再犯誘導投票的毛病了
其實,編程軟體早就有用中文編寫的了。
剛才還有人做了一個完全由中國自主研發,具有完全自主知識產權的,完美兼容 Python 3 語法的,可以完全使用中文編程的屬於中國人自己的編程語言。
我管這玩意兒叫 鳥語言。
大家可以把這個軟體下下來,粘在一個文件裡面(比如說叫 編譯器.py),然後寫出自己的程序,起名字叫 文件.鳥。
執行以下命令:
python 編譯器.py 文件.鳥
然後就可以獲得結果了。
下面是完全自主研發的編譯器源代碼,遵從我國自主設定的 CGPL v3:
import token
import tokenize
import io
import sys
import os
trans_kw_en2zh = {
"and": "且",
"as": "作為",
"assert": "斷言",
"break": "終止循環",
"class": "類",
"continue": "下一循環",
"def": "函數",
"del": "移除",
"elif": "不然",
"else": "否則",
"except": "捕獲",
"exec": "執行",
"finally": "最終",
"for": "每一個",
"from": "從",
"global": "全局變數",
"if": "如果",
"import": "導入",
"in": "屬於",
"is": "是",
"lambda": "泛函",
"not": "否",
"or": "或",
"pass": "放行",
"print": "輸出",
"raise": "拋出",
"range": "範圍",
"return": "返回",
"try": "嘗試",
"while": "當",
"with": "同",
"yield": "產生",
}
trans_kw_zh2en = {}
for i in trans_kw_en2zh:
trans_kw_zh2en[trans_kw_en2zh[i]] = i
def translate_code(code, tdict):
def __translate_tokens(s_io, tdict):
for tok_num, tok_val, _, _, _ in tokenize.generate_tokens(s_io.readline):
if tok_num == token.NAME:
tok_val = tdict.get(tok_val, tok_val)
yield tok_num, tok_val
return tokenize.untokenize(__translate_tokens(io.StringIO(code), tdict))
a = translate_code(open(sys.argv[1], "r", encoding="utf-8").read(), trans_kw_zh2en)
f = open(sys.argv[1] + ".trans_py", "w", encoding="utf-8")
f.write(a)
f.close()
os.system("python "%s.trans_py"" % sys.argv[1])
os.remove("%s.trans_py" % sys.argv[1])
然後附上樣例代碼:
每一個 變數 屬於 範圍(1, 10):
如果 變數 % 2 == 0:
平方 = 變數 * 變數
輸出(變數, "的平方是", 平方)
否則:
輸出(變數, "是奇數")
放行
你們看看,是不是充滿了我國傳統文化的魅力,富有傳統韻律的氣息,體現了一個文化古國在現代化科技發展中的突破性進步。
另外其他的 approach 短時間也不打算寫了... 不想耗時間。
至少目前看來,我覺得花大精力在搞所謂中文編程上不如做好各種文檔以及編程工具的翻譯。
中國文化博大精深,我們常常把對現代問題的疑惑放置於某些古老知識的框架中,試圖從中尋求解答。例如,我們試圖用中醫去解讀西醫,用三國演義來推演現代戰爭,用儒家道學來看待政治格局。
在這些嘗試中,最有趣的,我認為莫過於許多人對於「中文編程」的執念。
你可能很難想像,那些充滿著神秘符號和花花綠綠字母的程序代碼,居然可以用中文來寫,事實上,中文編程並不是一個新鮮事物,早在十多年前,中文編程的旋風就已颳起,並且比後來的任何時候都更加猛烈。
在當時,引領這股旋風的,就是易語言。
易語言的編程語言是中文,而且怎麼說呢,中文的非常簡單粗暴,例如其它編程語言中的if,在易語言中就成了「如果」,在易語言裡面寫代碼,寫出來是這樣的:
對代碼諱莫如深的外行人看見這個會露出會心的微笑,而不像看C++代碼那樣皺起眉頭,但是幾秒鐘後,他們的笑容就會凝固:雖然每個字都認識,但是這一堆東西寫了啥,腦子裡一片空白。這樣的情況也會發生在擁有多年經驗的熟練開發者身上,由於中文筆畫繁多,易語言使用中文書寫的程序結構十分難以辨認,任何人一眼看去,都有一種被文字糊了一臉的感覺。
例如一個簡單的冒泡演算法,易語言寫出來是這樣的:
而用python寫同樣的一段代碼,看上去就乾爽了很多:
易語言幾乎是名聲最不好的編程語言。一方面的原因是,百分之八十以上的低端外掛和病毒都是由易語言寫的,另一方面的原因則是,使用易語言的開發者很多都文化程度不高(無法閱讀英文技術文檔),缺乏計算機基本知識和演算法功底,在程序員鄙視鏈里,屬於最底端的存在。
我可以肯定的說,沒有任何的大中型項目在使用易語言,也不會有商業公司使用易語言,不過,這也並不是易語言的使命所在——它是很多人編程的開端:基於對編程的興趣,從學習易語言開始,然後轉到主流的開發語言上,這是很多人的成長路徑。我小時候也會喝那種五毛錢的袋裝可樂,它味道奇怪,糖精的味道甜的發澀,但誰能說它是童年可以或缺的呢。
值得一提的是,易語言是唯一到今天仍然有大量的使用者的中文開發語言,他們大都是剛入編程這行的新人,或者靠這門手藝吃飯的病毒木馬外掛開發者。
相對於簡單粗暴的『翻譯式』中文編程,另外一些中文編程語言就顯得文雅一些,例如 Haifu,在Haifu語言中,陰和陽代表著計算機語言中的true和false,運算符也非常特殊,加減乘除變成了「生克怕愛」,例如計算5+3,在Haifu中就得寫作「5 生 3」,相應的,5-3寫作「5克3」,這兩個其實還好理解,但用「5 怕 3」來替代5除以3,「5愛3」來替代5乘以3,就令人不得不驚嘆於作者的腦洞了。
如果說,Haifu用陰陽五行來搞編程,那麼,用古詩詞來搞代碼也不是不可能,事實上,確實有這種語言。
台灣程序員唐風在2002年發布了一個基於perl的中文模組,叫做PerlYuYan,用它來寫代碼,是這樣的:
用籌兮用嚴 井涸兮無礙。
印曰最高矣 又道數然哉。截起吾純風 賦小入大合。習予吾陣地 並二至純風。當起段賦取 加陣地合始。陣地賦篩始 繫繫此雜段。
終陣地兮印 正道次標哉。輸空接段點 列終註泰來。
這段程序的意思是,輸入一個整數,輸出所有不大於這個整數的所有質數。雖然其他語言2,3行就能解決,但用這種語言寫出來,卻多了一種屈原的感覺,讓人實在仍不住多吃一個粽子。
中文編程語言有許多奇怪的名字,但我覺得最讓人有立正敬禮衝動的是這個語言了:習語言。在某個政治事件後,習語言改名成了曦語言。如果說易語言是中文的VB的話,那麼習語言就是中文的C語言了。習語言的特點是,家族龐大,而且還大都姓習,例如:
- 習語言:中文C語言編程系統
- 習佳佳:中文C++開發伴侶
- 習佳娃:中文Java編程的利器
- 習麗妞:linux系統下的中文編程系統
- 習姐:習語言解釋版本
- 習51:51單片機中文開發伴侶
- 中匯:X86中文彙編
- 中文構建工具(中文版的make工具)
中國文化實在有太多東西可以發掘了,除了陰陽五行和古詩詞外,周易也被人盯上了,出生於1937年,被譽為中文電腦之父的朱邦復就設計了一款名為「中文培基」的語言,它的寫法是這樣:
10 卜=0
20 入 水, 火
30 從 日 = 水 到 火
40 卜 = 卜+對數(日)
50 下一 日
60 印 卜
翻譯一下就是:
10 Y=0
20 INPUT E, F
30 FOR A = E TO F
40 Y = Y + LOG (A)
50 NEXT A
60 PRINT Y
另外,還有一些搞怪的中文編程語言,例如「草泥馬語言」,「CHTML」等等,由於它們實在太怪了,而且政治也不正確,所以就不贅述了。
追求中文編程的推行,很大程度是在追求一種民族和文化的信心,它不至於有錯,但意義卻不是很大,因為其實很多主流編程語言的作者,都不是英美,甚至英語語言國家的,例如C++ 和 C# 的發明人都是丹麥人,母語是丹麥語。Python 的發明人是荷蘭人,母語是荷蘭語。Ruby 的發明人是日本人,母語是日語。總的來說,開發語言是為了解決問題,而非展現民族自豪感的。如果英語都能成為瓶頸和門檻,那這個人恐怕真的不具備寫代碼的能力。這就好比一個人連電路知識都沒有,卻叫他造衛星一樣。
程序員們應該慶幸,中文編程沒有在這個國家成為主流,不然,看一個大點的項目的源代碼就會耗掉一個人的一生。不過,中文編程必定在編程史上有自己的位置,它荒誕而真實,像是編程圈裡的堂吉柯德,讓人唏噓。
評論區有個大神,我已經精選了,快去拉黑。
沒有,中文不是編程語言,你用易語言寫一個那也不是中文。
而且我見過一個用易語言玩這個的,還做出了支持智能補全的IDE,可以說是吊打80%的天天黑易語言的人了。
沒什麼人看之後的補充,這是真心話你們這些黑易語言的,其實也只是為了站隊+及時勸退那些有可能走低門檻入門的人,以保住自己在編程界的地位的。所以說開始因為中文而黑易語言的那些人,在開口的時候就已經輸了。
還有一個著名中文編程軟體,太丑就不放了。
程序語言編程:
if (a &< b) min = a;
else min = b;
或
min = a &< b ? a : b;
英語編程:
If a is less than b, assign a"s value to variable min, else assign b"s value to variable min.
中文編程:
如果a小於b,那麼給min賦值a,否則給min賦值b.
民科追捧的「中文編程」:
如果 (甲 &< 乙) 最小值 = 甲;
否則 最小值 = 乙;
# The Sieve of Eratosthenes - 埃拉托斯芬篩法
. 當起段賦取 加陣地合始.
. 陣地賦篩始 繫繫此雜段. . 終陣地兮印 正道次標哉. . 輸空接段點 列終註泰來.audreyt/lingua-sinica-perlyuyan
轉;侵不刪。——機靈抖完了,正經回答一下問題。
很多高級人士可能會對中文編程沒什麼好感(包括以前我也是)。大家都認為編程最重要的是思想,英文這道障礙都突破不了還想學編程云云。確實,思想是主要的,語言的困難總是可以克服的。
但是後來想一想,其實也不是那麼一無是處。
以前另一位答主在類似的問題上回答過(找不到原答案了)。公司的程序員英文水平不高,造成程序可維護性差;於是boss直接規定變數名都用中文,方便易懂。
知乎上的大佬們可能都在某些領域有重大的貢獻,見得太多了,所以他們會鄙視那些呼喊"中文編程"的人,覺得他們把精力花在這種沒意義的事情上。
但是最基本的事情總得有人做,最簡單的手機APP,網頁,桌面軟體都要有人做。如果真的有這樣一個工具,用中文編程(不一定真的是語法通順的中文,至少可以是漢字),附帶上中文的API,對於底層的不那麼高端的碼農或許也是一種福利。
現在clang已經支持中文的標識符了,C#和VB等語言也可以直接用中文標識符。易語言可能開了一個不好不壞的頭。我們如今有了腳本精靈,有了一個走過七年已經相對成熟的T語言...希望有生之年真的可以看到成熟的中文編程語言吧。
我並不是中文編程黑,也不是中文編程吹。我希望某些鼓吹中文編程的人還是少花點時間各種呼籲,多做點有意義的有說服力的事情。
以上,一己之見,歡迎批評。沒有
計算機和數學是同源的,同樣都是用Latin字母表示更加方便。用中文編程無異於用中文解數學題,十分蹩腳,如:1 2-3*4用中文寫就是:一加二減三乘以四看起來還可以,對吧?再如:f(x)=x^2-2*x 1用中文寫就是:函數(未知數)等於未知數的平方減去二乘以未知數減一麻煩不?直觀不?更不要提中文輸入效率低了。弘揚中華文化不代表這些東西也要弄所謂的「中文化」,就算是讓中國人發明計算機最後也會殊途同歸,因為符號語言的確比中文要方便。試想在上古時代計算機剛出現用戶交互,到底是字型檔很小易於顯示的符號語言還是字型檔巨大難以顯示的中文更適合呢?答案非常明顯。----------------分割線----------------有些人真是不裝逼難受,C++模板可變參很稀罕?手寫編譯器都沒說什麼,難道生成的編譯器很難寫?
不不。 寫程序的壁壘不是英語。而是清晰的邏輯。很多人用軟體都不太明白,更別提編程了
從語法角度來看的話,用漢字做語法標註沒有用英語做語法標註方便,畢竟漢字肯定比英文字母難打。不懂英語的話,最大的問題倒不是在於語言本身,語言本身就30多個語法關鍵詞,即使不懂英文,硬背語法單詞也不難。
但是編程很重要的一項是調用第三方的庫,這時候不懂英文的問題就很大了,如果不懂英文,很難看到方法名就猜出方法的作用,而方法名通常都是英語寫的,如果不懂英語,這塊會遲鈍很多。
不懂英文還有一個很困難的事情是變數起名字,和上面的說的方法名一樣,你又說根據軟體工程理論,不要起變數的名字a b c i j k,因為那樣失去了變數名字的意思,但是英語又不會,那就只能用拼音了,你看,都用拼音了乾脆直接用漢字得了唄,把你累的。據說開發用拼音的情況在我國並不算一個特別少見的情況。
如果說方法名,變數名也沒有多少的單詞,還是可以背,但是你要背,是不是得查文檔懂API的意思然後才能背?API文檔大部分都是英文寫成的,不懂英文的話,就只能用谷歌翻譯成中文之後慢慢猜文檔的意思,沒辦法因為現在翻譯軟體只能達到譯出大概意思。如果耐心好不容找到的文檔,還是不知道多少年前版本的翻譯成中文。即使要看視頻,看文檔學習編程,英語的資料也遠多於中文的資料。中文的資料大部分都是二手資料,更多有很多資料只是翻譯過來就把原來免費的資料收費,而且收費的還不少。畢竟不懂英語,得交稅啊。不懂英語,就不能很好的運用谷歌,StackOverflow,GitHub,不能很好的理解外國公開課,效率會進一步降低。
更不要說很多語言的IDE都是英文的,如果不懂英文,可能連字號都設置不明白。IDE上面的英文都看不懂,你還敢按嗎?IDE反倒降低效率了。再加IDE菜單欄上面的英文是不能直接複製到翻譯軟體之中的,這時候只能使用有道詞典的指譯一點一點看設置的意思,效率會很低。當然你會說去查IDE官方的教程,查IDE的官方說明,悲哀的發現IDE的官方說明和教程也是英文。你說慘不慘?
在debug的時候,很多時候控制台輸出的都是英文日誌,如果這時候不懂英文,連日誌都不能正常看懂,真的能指望每次出問題都把日誌粘貼CSDN來解決問題?
說了這麼多,主要是說,易語言的存在並非完全沒意義,在不懂英語,卻還想編程的人群中,易語言確實是一個不壞的選擇。再加上易語言的類庫非常適合寫一些小程序,這對於新手來說還是很友好的。君不見C語言還沉浸在語法的泥潭之中,易語言說不定已經可以寫小程序自己玩了。
當然了,根據勃學理論,不懂英語根本就不配編程,所以易語言不過是權宜之計,過後一定要想辦法學好英語,才能走的更遠。
私以為很多人學習編程的時候會被英語關鍵字絆倒,是因為他們有時真的以為那些英語關鍵字只是英語。編程語言是另一種「語言」,和數學中的符號邏輯很相似,只是恰巧用一些英語符號來表達特定的意思。把那些符號替換成中文字元毫無難度,但是這對於理解編程幾乎沒有什麼助力。
編程的核心在於理解這些符號背後的邏輯,之後就是使用的事情了。符號本身是if-else還是數學上的ε-δ之類的,區別並不大。
首先, 對表示英文不是編程的阻礙的聲音, 已經有不少國外開發者有不同的意見. 遠的有: Brian:以英語為母語的人寫代碼時是什麼感覺?
近的在 吳烜:如何評價 qwas982 請求 C# 團隊開發特製的中文版的行為?: "I do think that a language, grammar and culture barrier creates a steep curve in non-English and especially non-Western countries. "
連國外開發者都有此感同身受, 真不明白還堅持什麼...
回歸技術, 可以在基本所有主流語言中使用中文命名:
在各種編程語言中使用中文命名
也可以在一些框架中使用一定程度的中文命名:
中文代碼示例之Vuejs入門教程(一)
中文代碼示例之Spring Boot 1.3.3演示
編程語言試驗之Antlr4實現"圈2"
已經有把編程語言關鍵詞漢化的項目和中文編程語言的開源項目:
國人創造中文編程語言的優勢 最後的列表
注意. 這裡的漢化是通過修改語言本身的編譯器, 而不是像多數這裡提出的方案(添加一步預處理/翻譯源碼, 或者在C源碼中添加define)
最後, 正如其他很多回答指出, 已經有很多商用的中文編程語言/工具, 如易語言,習語言, 按鍵精靈等等.
這就好比有人看到一道用英語寫的數學題. 他覺得如果是用中文出的題自己就會做了.
然而, 題目是微積分, 他的數學水平只是四則混合運算.
認為"英語"是學習編程的最大問題的人, 其實就是和上面那個例子一樣錯誤地把學習編程的障礙歸結到了那26個字母上.
實際上, 就如同文盲也會打撲克, 知道J,Q,K,A. 文盲也會打麻將, 認識條, 餅, 萬, 花一樣.
在編程裡面那些個字母組合無非就是一個或許具備某些意義(但是絕對不超過麻將牌)的符號而已.
有人會覺得學不會打麻將的最大障礙是認不出條子,筒子和萬字么?
然而事實上就是這麼回事. 所謂的"英語"障礙的說法根本就是懶的借口而已.
你要是基礎差到不認識26個字母, 那我同樣可以認為你不具備初中數學知識, 比如代數什麼的, 那確實也不用學什麼編程了. 學了你也寫不出什麼像樣的東西來.
既然認識26個字母, 也具備初中數學知識, 那剩下的也就是死記硬背幾個關鍵詞了. 這幾個(或者幾十個, 一種成熟的語言關鍵詞也不會太多)關鍵詞也就是你口中"最大的障礙"了.
要說我玩個魔獸世界都要記下那麼一大堆的技能圖標呢, 懶成那樣子的話是不是連遊戲都只能玩到連連看的檔次(並且段位也不會高到哪裡去)
並不是沒有用中文來作為編程語言,例如有的答主答的 易語言,但是易語言直到現在也沒有發展起來,究其原因,可能會引申出許多論點,特別是用英文作為編程語言比用中文作為編程語言的 n 個好處,以及用中文作為編程語言的 n 個壞處。
然而這並不是真正的理由,而是很多人用現在的現象來反推原因,並以此來說服自己和別人。試想一下,如果當初西方是說中文的,而我們是說英文的,你覺得當年發明編程語言的,真的會去比較世界上各個語言哪個最適合作為編程語言?然後還選中了他們非母語的英文?然後在發明編程語言之前還自己跑去學英文?在推廣的時候,還要求使用者必須要懂英文??需要使用者付出如此巨大的成本,你覺得使用者真的會接受並使用這種編程語言?相反的,以中文作為編程語言,就無需付出如此巨大的成本,所以以中文為編程語言的語言必定會淘汰掉使用英文的編程語言。或許到時候,就能夠在知乎中看到各種用中文作為編程語言比用英文作為編程語言的 n 個好處,以及使用英文作為編程語言的 n 個壞處的答案了吧。
目前的編程語言界仍然是西方主導的,而且這些人根本就幾乎沒有幾個懂得中文的,自然就不會想著放棄英文而跑去開發使用中文作為編程語言了。而國內有能力發明中文編程語言的又基本沒有這樣的願望,畢竟他們也是一開始就是接觸英文作為編程語言了,這對於他們來說,使用英文作為編程語言已經是他們接受並習慣了的事情,所以就沒多大的願望去改變現狀了。
更別說一旦換成中文編程語言,以前的一切都要推倒重來了,所有程序員都要重新學新的編程語言,但是得到的收益卻並沒有那麼高。
最後,很多人都認為中文編程僅僅只是將英文關鍵字換成中文,所以本質上中文編程跟英文編程並沒有任何不同,所以真正想要實現中文編程,最首要的問題就是創造出新的編程形態,並逐漸淘汰掉舊有的、傳統的編程語言,再在時間的積累下,從而實現真正的中文編程的普及化。
那麼何謂新的編程形態呢?
中國編程新人的編程夢:
- 做中國的操作系統
- 把編程語言變成中文的
- 黑遍美國政府的網站
哥們,這麼好的問題居然,都不邀請我。看我已經饑渴難耐了。
國人學編程,為什麼需要別人帶?
為什麼代碼不自己走,不自己演示給學生? 那麼接下來就看看吧
一說中文編程,你們的腦海浮現的就是這個?
一幫 被 什麼vs,vim,sublime,記事本的 慣壞了的 老朽們而已。
請思考一個問題, 什麼是中文編程,什麼是中文,什麼是編程。
什麼是國人思想的編程。
國人慣性思維是什麼。
別告訴我是這些
是,你們的腦海里,就只有這些玩意,為什麼?
因為看起來比較高大上,而且還能掙點銀子花,
其實呢,我不想多說了,自己都知道自己是怎麼回事。
這個看起來,似乎已經很多都中文化了,但是這是編程嗎?這肯定不是,只能說,是結構描述圖
因為這玩意不能運行。
而且,作圖的人似乎,也忽略了一個最大的問題,那就是這麼扁平化的東西,給我們提供的信息太少了。
事實上,我要做一個創新。那就是改變編程方式,
由最原始的逐個字母的擊打,中間增加一個拖拽,重組的環節。
然後再帶上動畫。
比如 點圖片,會播放GIF動畫演示
這只是我的想法的一個展示。樓主,感謝和贊千萬別吝嗇。
if家族邏輯解析器和代碼生成器的一部分。
執行器的局部代碼
你們對我的支持,就是對這個工具的支持。點贊,點收藏。知乎會記錄你們的功勞。
如果這個工具,不能裝13,或者不能逗別人樂,我堅決不做
這是1.0版本,後來發現這個只能作為輔助。
所以說,很多人都在走我這條路,只不過是誰的腦洞大開,
更符合看四大名著那幫人的想法了。
這都是冰山一角。還在完善之中。很多東西,都只是剛剛開始而已。
因為什麼?因為就到現在,還沒人敢說精通cpp。
不看圖,你們怎麼知道我走了多遠,想要幹什麼呢?
顯然,這些都是冰山一角。 暫時不多貼了。給你們看看,這些東西,將來會顛覆性的存在。
抽象必須計算機化,必須圖形化,思路也必須圖形化,人們才能走得更遠。
什麼都靠人工智慧,,哥們說笑了,你智力不如人工智慧,是人工智慧駕馭你,還是你駕馭人工智慧? 拍拍後腦勺能想明白嗎》?
而且我希望,這種答題方式要在知乎裡面推廣。
圖形化,動畫,可以生成對應語言源碼。可以把各種數據結構和演算法,以及流程,等等一切都用動畫表現出來,同時,又是執行的代碼。這個腦洞開的非常之巨大,沒有個半年,你們接受不了這個事。
點個收藏慢慢品。
雖然,雖然我喜歡止戈,但是我比較喜歡氣勢
你們會問這東西到底是怎麼造的,能幹什麼。
其實,是為了拯救c和cpp這種靜態語言本身的能力不足。因為他們不動態,不透明,不能圖形化等等吧。
正常一個人,寫代碼過程是這樣的。
字母---》代碼塊--》函數---》class---》class的構造器 和 class的朋友圈構造器,class下屬構造器,對應環境的封裝器,指定領域的協調器。等等吧。
顯然這麼龐大的架構和流程。沒有思想架構工具,你們是根本無法掌控的。
好好想想我說的,你們會發現,是不是有點國人的人工智慧的味道
什麼叫做國人思想的編程。那就逃不掉歷史。和文字。
這套工具,必須要能給那幫研究三國的人用。
而且必須能夠讓20+的人,可以從0開始,學會微積分,離散數學,概率論和線性代數,等等。一些數學基礎工具。
為什麼發動機是這種架構呢? 是不是。。
那麼一個c編譯器,就相當於一個工廠,每一個程序相當於小汽車的。
你要是這麼想的話,配套圖形化,c編譯後的程序,也可以想像成各種模塊的組合。
那麼,找到一個合理解釋c語言運行時的圖像模型,用於理解c語言,那絕對是顛覆性的。
那麼合誰的理?肯定是合國人的理!
就像線性代數,要是硬算,硬學,那多痛苦,但是如果配合圖像化,就不那麼神秘了
有人居然勸我去學習java?貼兩個cpp的代碼,證明,我確實搞過這玩意,
不是什麼精深的東西。但是大部分人,都接觸不到
這是啥。自己想,模板可變參嘛。不是什麼高深的東西,為什麼cpp當年不自帶。
這是什麼?顯然,我要是自己寫的話,累出翔來。當然是代碼解析器+代碼生成器,生成的代碼了。
這年頭,時間就是寶貴的啊。
在國內,你不研究這個?
你不研究這個?
你不研究三國?
別鬧了,好嗎!!
咱們用腦袋思考一下,1千字以上的文章,該怎麼看,
難道看文字?超過100,恐怕你們就不想看了。
沒有圖形化,動畫化,遊戲化,你們就會與知識的掌控擦肩而過。
在不遺餘力的推廣中文編程上面,我真的不怕 小軟,小歌跟我競爭。
因為啥,因為他們不懂中文。應該說,他們肯定不看二十四史,也不看資治通鑒。
不看這些,就想跟我競爭?我勸他們最好看看。
「美國人愛談未來,中國人愛講歷史,為什麼」
思考一下,為什麼大學要學c 和cpp。就是因為指針和面向對象。
指針是星星之火。
面向對象,字元串--》代碼塊---》函數---》Class--》object
可以復用。模板則是思路的復用。
目的是駕馭各路牛鬼蛇神的
一般人 頂多 double **,高級點的double***,精通的 double *****
所以說,你們都不懂c和c++, 懂得這麼深的,只有我嗎?
還記得這個面試題嗎?為什麼這麼簡單。。面試官為什麼要這麼照顧你們?
難道。。那裡就需要這種水平的?
趕緊給我點贊和感謝吧。
如果你實在不想點,那就不點了。好嗎?
饒了我吧,就算不行也不能點反對和沒有作用啊。
我都被你們點到排得很靠後了。
你們居然疑問這麼多,那麼咱們先談談圖形化,在圖形化的基礎上,再談中文。
這樣的編程形式,接受嗎?
這樣呢
這樣呢?
這樣行不行?
這樣規整的呢
還是說這樣的
還是說這樣的,來個gui調試的。
還是說這種類似圖(graph)的。
還是說這樣的類似狀態機的。
你們要求還真高啊,這都不滿足
這樣的,行為樹的呢
到底行不行,你們快說
是不是這樣的,你們編程就喜歡了?
趕緊叫大佬們去做啊。去翻譯啊。
這樣的,有點簡陋,會喜歡嗎?
這樣好一些吧?但是依然不能一目了然
莫非是這樣的?
來大家評理一下。要是行的話,趕緊叫這幫人朝這個方向去做。
難道你們需要的是這款
當然了,也有人往這個方向努力
在我眼裡,這絕對是令人驚艷的開始。
只要這幫人,付出他們所有的時間,都在發展這個領域。絕對會走出自己的一片天地的。
這位答主,其實在告訴大家如何圖形化進程。不放參考一下。至於局限性就別管了。
語法樹該如何圖形化
我們來探討一個問題。可以看出來,我貼的這些都是 國人寫的代碼。
我們可以看到。一般人你要是沒有注釋,基本很難理解a,h,r代表啥。
這個是給最新的人思考的。
為什麼要這麼寫?請告訴我。很多人都這麼寫?是不是中式思路,美式語法?
為了表達自己的意願,只能放到注釋里
畫風突變了。這還是簡單版本的模板。如果嵌套的多點。什麼樣的人能看懂?
說實在的,這東西寫多了,你自己都感覺自己是英語達人了。
你的夥伴如果這麼寫代碼,你們是不是要絕交了?
嗯是的,你們要的是這個。
這些都是來自代表程序員的美學那貼。
你們說中文有這有那的,那麼咱們就來看看現實。什麼叫做程序員之美。
所才是大家想要的。
1:如果 答案是 為字打頭的成語 那麼 執行某項操作
2:非為字為首成語不繼續
next:doSomething()
local chengyuMap ={ "為所欲為"=1,"為虎作倀" =2 }
local v=string.sub(answer,1,1)
if v=="為" and chengyuMap[answer] then
goto next
end
怎麼樣,還是漢語簡單的吧?你們啊,其實並不懂如何遣詞造句。
是啊,除了我,還有誰呢
說白了,你們的思維僵化在,那個轉換階段了。沒有人想往一個掙不到名利的方向努力。
如果只是黑白的字的話,看起來是不行的。但是圖形化+顏色配比,立馬反而高大上了。
難道不是嗎?
我時常被老外問起,「你們這麼厲害。。為什麼。。編程語言。。很少有中文特色的呢?
我們想學中文編程啊,可是。。。學到最後,發現還是 我們的語法。。我們的原理。。」
所以說,不是沒有人嘗試。只是醞釀需要時間。
編程語言不是自然語言,英文單詞在裡面只是符號而已,沒有自然語言的文法和語義,所以編程語言既不是英文,把英文單詞翻譯成漢字,也仍然不是中文。有沒有用自然語言編程的方法呢?目前應該還沒有,如果能實現的話那就是強AI時代到來之日了。
就編程這件事而言,我認為語言,包括關鍵字是英語文檔是英語這些,是最低的一個門檻。如果說有比它再低的門檻我只能想到裝IDE配環境了。
推薦閱讀:
※零基礎自學C語言需要什麼軟體?什麼視頻教程比較好?
※c++虛函數的作用是什麼?
※為什麼學習編程一定要多寫多敲代碼?
※程序分析中的 {path,context,flow}-sensitive 問題?
※Lua 語言的靈活、高擴展性優點體現在哪裡?