回覆列表
  • 1 # 科技指北針

    首先明確一點,的確有人創造了一種中文的程式設計軟體,“易語言”就是,不過這麼多年了,基本處於沒人管的狀態了。

    究其原因,個人覺得將程式語言由英文替換成中文其實是偽需求。原因如下:

    第一、意義不大:

    首先,雖然在常人看來程式碼看起來特別難懂,就像是天書,但是大學只要學過計算機語言的都能知道,程式碼裡那些看起來特別“高大上”“難懂”的英文只是表面工夫,重點是裡面的演算法、邏輯。

    比如一些程式碼常用的英文,在一般人看來是:

    Compile、Run、Class、Object、System、out、print、line、variable、type、static、array、parameter、method、function、public、default、get、private、import、set、package、access、protected、void、final......

    但是常年跟程式碼打交道的程式設計師看到的是:

    編繹、執行、類、物件、系統、輸出、列印、行、變數、型別、靜態的、陣列、引數、方法、函式、公有的、預設、得到、私有的、匯入、設定、包、訪問、受保護的、無(返回型別)、最終的不能改變的......

    所以,這樣對比下來,程式碼裡出現的那些英文相對於四六級來說,簡直是so easy了~將英文替換成中文的意義不是很大~

    第二、沒必要:

    那些英文單詞根本就不是阻礙成為程式設計師的障礙,相反的,程式碼裡那些一般人看不見的演算法、邏輯才是最難學習的。

    以一個C語言中一個經典的演算法舉例。

    題目:打印出所有的“水仙花數”,所謂“水仙花數”是指一個三位數,其各位數字立方和等於該數本身。例如:153是一個“水仙花數”,因為153=1的三次方+5的三次方+3的三次方。

    不具備演算法思維的人的方法:

    一個個的試下去?費時費力不說,人容易變瘋吧。

    具備演算法思維的人的方法:

    利用for迴圈控制100-999個數,每個數分解出個位,十位,百位。然後for迴圈一寫。

    ————————————

    程式原始碼:

    main()

    {

    int i,j,k,n;

    printf(“‘water flower’number is:”); 

    for(n=100;n<1000;n++) 

    {  

    i=n/100;/分解出百位/  

    j=n/10%10;/分解出十位/  

    k=n%10;/分解出個位/  

    if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)   

    {   

    printf(“%-5d”,n);   

    } 

    }

    printf(“\n”);

    }

    ————————————

    所以,還是那個觀點,語言不是難的點,演算法才是!不管用什麼語言來書寫程式碼,裡面涉及到的演算法邏輯都是大同小異的,而程式碼裡的那些演算法一個比一個難,比如:

    遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法等。

    如果能學會掌握了這些演算法,那麼,那幾個英文單詞又有什麼難的呢?

    最後,最簡單的一點!

    換成中文後敲鍵盤次數變多了啊~比如“RUN”,英文敲擊鍵盤3下,中文拼音輸入法敲擊鍵盤“yun xing”7下,對於時間如此寶貴的程式設計師哥哥們來說,浪費時間就是犯罪呀~當然了,這只是玩笑~

    最後總結一下:

    綜上所述,將程式碼中的英文替換成中文意義不大且沒必要。

  • 2 # 銅礦21

    你從小學的數學全是用阿拉伯語,希臘語,羅馬語表述的,為什麼不用中文表述呢?因為麻煩啊,三點一四一五九二六和3.1415926,表訴效率差N個數量級,更復雜數學公式那差距就更大了,這也是中國古代科學技術落後的原因之一。

    計算機程式設計和數學類似,全世界都用英語作為程式設計表訴語言,包括意德法日的程式設計師程式設計也是用英語,是因為英語對邏輯問題表訴效率最高,語法最清晰,學習最容易。

    像阿拉伯語用於數學的就10個字元,所以阿拉伯語好不好和數學水平沒有半毛錢關係。英語用於程式設計的總共就30多個單詞,英語好不好和程式設計水平也沒有太大關係。

    但因為全球90%論文和技術資料是英文的,無論是數學,物理,化學,還是計算機,英語水平可以直接影響相關領域水平提升,所以不要老想繞過英語,向世界先進科技學習遠比我們自己閉門造車有價值得多。

  • 3 # 編碼之道

    從這個問題來看,題主有一腔熱情,但是又對計算機程式設計的認識不夠深刻。在此先說明一下,不是沒有中文程式設計軟體,而是不實用,難以解決現實問題,所以知道的人並不多。

    先看一段簡單的中文程式,關鍵字、型別、註釋等等全是中文,可是這對程式設計師來說,並沒有實際意義,甚至還不如使用英文關鍵字高效。為什麼這麼說呢,講點理論性的東西,就當是做一次科普,希望題主能看懂。

    假設某計算機的全體機器指令組成的集合為X,從X中取出一些指令(可重複取同一指令)並組成一個有效的序列稱x,則x就是一段用機器語言編寫的程式。假設某高階程式語言的全體指令組成的集合為Y,從Y中取一些指令組成一個有效的序列y,則y就是一段用該語言編寫的程式。高階語言編寫的程式不能直接執行,需要編譯器(針對編譯型語言,如C/C++等)或者直譯器(解釋型語言,如javascript、python等)將它們轉換為機器語言,也就是將一個由集合Y的元素組成的變數,對映為一個由集合X的元素組成的變數,這就是程式設計軟體做的工作。所以從理論上來說,中文程式設計、英文程式設計、或者其它語言程式設計,只需要將集合Y中的指令和關鍵字換位不同的語言,就可以實現不同語言程式設計,這並不難實現,甚至不用改變編譯器的原始碼,只要使用一些技巧就可以實現中文程式設計,如上面的程式所示。

    既然中文程式設計可行,為什麼沒有大範圍推廣呢,這就要從程式語言的功能說起。程式語言的根本功能是要方便將現實問題用一種高效的方式描述,並轉換為計算機可以理解和執行的指令。每一種程式語言就是一種描述問題的方式,對應有一套自己的方法論,比如組合語言是面向指令的程式設計,C語言是面向過程的程式設計,C#、Java等是基於虛擬機器的面向物件程式設計,Lisp是函數語言程式設計語言,Ptyhon是混合程式設計,此外還有如Labview、Prolog以及PLC中的梯形圖,都有不同的程式設計模型與方法論。開發一門新的程式語言的本質就是要開發一套新的方法論,而這個一方面需要對實際問題的深度認識,另一方面需要紮實的計算機理論知識。

    計算機最先起源於歐美,所以很多程式語言由它們發明是很自然的事情,但是隨著計算機應用的不斷推廣,中國在這方面也逐漸追趕上來,相信在不久的未來一定會有一套由華人提出的程式設計方法論以及配套的程式語言。

  • 4 # 程式設計小蟬

    其實是有的。這個程式語言叫做易語言,但是為什麼不通用?第一,這個程式語言現在主要用來做破解,破解是違法的,嚴重的要入獄。第二,這個語言是收費的,做程式設計師的產品,最忌諱的事情就是收費,這也是他沒有被推廣的一個原因。第三,在如今英語已經作為全球性通用語言的環境下,且有大量優秀的用英文作為基礎的程式語言,再去創造一門中文的程式語言,意義不大。並且創造一門程式語言要花費大量的精力和財力,與回報不成正比,也就沒人去做了。

  • 5 # 淺夢涼城

    為啥總是追求中文程式設計,無論中文還是英文,只是一種載體,而英文或者說符號化在程式設計領域有著中文無法比擬的優勢,就是簡潔,比如if,英語只需要兩個按鍵,中文需要ruguo5個按鍵,還有,程式設計與英語無關,只是借用英語這個語言,英語啥都不會也不影響學習程式設計,一個程式語言就那幾個關鍵字,其他的都用拼音不也一樣,我就是學習計算機的,英語極差,但也不影響我學習程式設計

  • 6 # 靜幽若蘭666

    語言是一種工具️而已,軟體、網路開發最早起源於美國,英文具有延續性和生態完整性,在部分情況下換成中文替代完全可以,但是必要性不大,重點在於演算法邏輯和資料處理架構。

  • 中秋節和大豐收的關聯?
  • 中超哪個球隊老闆最有錢?