設萬維讀者為首頁 廣告服務 聯繫我們 關於萬維
簡體 繁體 手機版
分類廣告
版主:諍友
萬維讀者網 > 教育學術 > 帖子
ZT/漢語是世界上唯一一種面向對象的高級語言
送交者: mihu 2009年10月07日23:07:51 於 [教育學術] 發送悄悄話
漢語是世界上唯一一種面向對象的高級語言
.     

【】一個勞動人民群眾喜聞樂見的好地方:http://www.
ZT/  在網上看到過很多有關漢語和英語比較的文章,他們寫的都很不錯,並且列舉了大量的事例來證明漢語或者英語是優秀的。不過,我想用計算機軟件設計的觀點,來理性地分析漢語和英語的優缺點。經過分析,我可以斷言:漢語是世界上唯一一種面向對象的高級語言。而以英語為首的其他語言,則屬於密碼型的索引語言。下面通過問答的方式來解釋這種觀點,如有不妥之處,請大家指摘。

一.什麼是“對象”?

在計算機世界裡,對象(Object)就是人們要進行研究的任何事物。小到螺絲釘,大到飛機,都可以被看成是對象,並且有具體的屬性和操作。以“狗”為例:顏色、體重等是它的屬性;而吃飯、撒嬌、警衛等則是它的操作。

同樣,對於語言來說,一個漢字或者一個單詞也可以被看成對象。再次以“狗(dog)”為例: 發音和拼寫可以被看成是屬性,而它的定義 則可以被看成是操作。

二.什麼是“面向對象”? 它有哪些主要特點?

面向對象主要是指程序的設計方法。它主要有三大特徵:封裝、繼承、多態。

三.什麼是封裝?

在軟件設計中,封裝是指將接口與實現顯式地分開,並對內部的實現提供保護(即掩藏實現細節)。封裝防止了程序相互依賴性而帶來的變動影響,是保證軟件部件具有優良的模塊性的基礎,是面向對象設計的前提條件。

四.如何考察自然語言的封裝性?

封裝的兩個特點就是:接口和實現分開 以及保護內部的實現。同樣的道理,我們可以用下列四個標準來考察自然語言的封裝性:

1.外形接口:所有詞彙的外形是否是一致的。

2.定義接口:特定詞彙的定義是否只有一個。

3.讀音接口:特定詞彙的讀音是否只有一個。

4.拼寫方法是否固定的。即不會隨着場景的變化而變化。

五.漢語和英語具有封裝性嗎?

(1)首先來考察一下漢字。

1.漢字的外形接口:眾所周知,所有漢字的外形都是四四方方的方形。

2.漢字的定義接口:大多數漢字的定義只有一個,當然也存在數量不多的多義字。

3. 漢字的讀音接口:絕大多數漢字的讀音只有一個。當然也存在多音字(一般也是多義字),最典型的是“重”字,它有兩個讀音zhong和chong,前者是分量大、主要的意思,後者是重複繁冗的意思。但是像這樣的多音字數量很少,讀音也最多只有兩個,常見的多音多義字只有100多個。

4.漢字的拼寫方法是否固定的,不會隨着場景的變化而變化。雖然漢字有繁簡之分,但是不可能在一段文章中同時出現繁簡兩種字體,因此姑且不論。

(2)再來看看英語:

1.英語單詞的形狀不是固定的,有短有長。短的有象“I”(我),只有一個字母;而長的有“pneumonoultramicroscopicsilicovolcanoconiosis”(矽肺病),總共有45個字母。

2.英語中的多義詞太多了,比如我們熟悉的“book”,不僅有書和課本的意思,還有預訂、登記、立案的意思。再如“man”,除了有人和男人的意思之外,還有操縱、配備人員的意思。

3.英語單詞的讀音會隨着拼寫的變化而變化。

4.英語單詞的拼寫方法不是固定的,會隨着場景的變化而是變化。不僅字母有大小寫、名詞有複數形態,動詞還也有讓人頭疼的時態變化。

複數形態的例子:“book”複數詞是“books”,“man”複數詞是“men”,拼寫和讀音都發生了變化。

動詞時態的例子:

一般現在時: I do it every day.(我每天做這樣的事)

一般過去時: I did it yesterday.(昨天我做了這件事)

一般將來時: I shall/will do it tomorrow.(明天我要做這件事)

現在進行時: I am doing it now.(現在我正在做這件事)

現在完成時: I have done it already.(我已把這件事做好了)

一個do需要do、did、doing、done這4種拼寫方法來表達"做"的各種狀態,而漢語僅僅加一些常用的副詞就可以表達了。

結論:漢語是封裝性的語言,但是並不完美,因為存在少量的多音字和多義字。而英語則完全沒有封裝性可言。

六.什麼是繼承?

在程序設計中,繼承是指子類自動享用父類的屬性和方法,並可以追加新的屬性和方法的一種機制。它是實現代碼共享的重要手段,可以使軟件更具有開放性、可擴充性,這是信息組織與分類的行之有效的方法,這也是面向對象的主要優點之一。繼承又分為單重繼承和多重繼承。單重繼承是指子類只能繼承一個父類的屬性和操作;而多重繼承是指子類可以繼承了多個父類的屬性和操作。熟悉IT的人都知道,Java是一種單重繼承語言,而C++是一種多重繼承語言。

想提醒的是,在計算機語言中,具有相同或相似性質的對象的抽象就是類。也就是說,對象的抽象是類,類的具體化就是對象。類是可以繼承的,對象是不能被繼承的。但是自然語言中並沒有類的概念,為了說明的方便,下面的解說中使用了對象繼承的說法,請計算機專家們諒解。

七.如何考察自然語言的繼承性?

只有一個標準:是否大規模地存在“字造字”、“詞生詞”的現象。

八.漢語和英語具有繼承性嗎?

(1) 首先說說漢字,漢字的一大特點就是形音字眾多,形音字具有“意音雙表”的功能。舉一個簡單的例子:圍、圓、園、圈。這4個字的外圍都是“口”字,是用來表意的;而中間的韋、員、元、卷則是用來表音的。用軟件設計的觀點來看,這就是單重繼承,被繼承的是“意”,而“音”則是它們各自的特徵。

除了單重繼承之外,漢語裡也存在大量的多重繼承,這就是詞組。“詞組”本來的定義是:由多個漢字所組合而成的語法單位。但是,從程序員的角度來看,“詞組”的定義是:從多個對象繼承而來的新對象。

下面例子分別標註了詞組分解前後的漢英解釋。可以一目了然地發現,無論是拼寫或是定義,詞組都是對漢字的完美繼承,而英語則毫無瓜葛。

飛機(plane) = 會飛行(flight)的機器(machine)

工人(worker) = 在工廠(factory)工作的人(man)

解放(liberate) = 解開(unlatch)後釋放(release)

計算機(computer) = 能計算(calculate)的機器(machine)

(2)英語也有繼承,那就是複合詞。比如:

football 足球

handwriting 書法

reakwater 防浪堤

或許是因為單詞長度限制(即缺乏封裝性)的原因,它們數量很少,所占的比例極低。對中國人來說有點難以理解的是,很多應該是複合詞的單詞,卻被不相干的詞彙所代替,比如:

豬 pig 公豬 boar 母豬 sow 小豬 piglet 豬肉 pork

牛 cattle 公牛 bull 母牛 cow 小牛 calf 牛肉 beef

羊 sheep 公羊 ram 母羊 ewe 小羊 lamb 羊肉 mutton

漢語的話,只需要7個基本漢字:豬、牛、羊、公、母、孝肉,其它的都是組合而成的。而英語則需要記住15個沒有任何關聯的詞彙。再比如:

一月 January

二月 February

三月 March

四月 April

五月 May

六月 June

七月 July

八月 August

九月 September

十月 October

十一月 November

十二月 December

漢語是用數字加上“月”表達月份,而英語卻使用12個完全沒有共同特徵的單詞來表達月份。

結論:漢語具有完美的繼承特徵。英語從總體上來說,還不能被稱為具有繼承性的語言。

九.什麼是多態?

多態是指相同操作接口的方法 在不同的對象中調用可以實現的不同結果。多態和繼承是對同一現象的不同描述,繼承是強調對象的共同特點,而多態則是強調對象的靈活性。繼承是設計層次上的概念,而多態是繼承在運行時的表現。

十.如何考察自然語言的多態性?

我們已經知道:多態的前提條件是繼承;好處是可以在運行時強調對象的靈活性。具體到自然語言,我們可以這樣理解:多態性的詞彙可以在相互交流的時候,增加理解的靈活性。具體做法就是在交流的時候,僅僅使用一些概念性的詞彙,讓不同的聽眾或讀者有不同的解讀。

所以,衡量自然語言是否具有多態性的指標是:

1.是否大量存在能表達概念性的詞彙。

2.這些概念性的詞彙是 被具體的詞彙所繼承。強調繼承的原因有兩點:一是因為多態性的定義,另外一個原因是它可以增加由虛到實、由概念到具體的聯想速度。

十一.漢語和英語具有多態性嗎?

(1)漢語的多態性無處不在,主要表現在兩個方面:一是有很多的被繼承的、能表達概念性的詞彙,另外一個就是漢語拼音。

首先說說被繼承的概念詞彙,它們主要在口語中被使用。比如:“我要坐車去上海”。這裡的車(car,vehicle)是一個概念性的詞彙,具體是哪一種車,則根據聽眾的不同而不同,可能是汽車(car)、出租車(taxi)、公共汽車(bus)、火車(train)等等。與英語不同,漢語的“車”字是被繼承的,所以人們會很快地聯想到汽車、出租車、公共汽車等詞組。而使用英語的人們則需要從記憶中搜索(而不是聯想)與車相關的交通工具。類似“車”的詞彙在漢語裡有很多,再比如:“去商場買一點肉”。這裡的肉(meat)有可能是豬肉(pork),也有可能是牛肉(beef),或者是雞肉 (chicken)等等。

再說說漢語拼音的多態性,漢語拼音有4個音調,在沒有標註音調時候,需要根據上下文的理解來決定是哪一個音調。比如 zhong guo的音調應該是zhōng guó。 即使是在標註音調場合,也需要根據理解來決定是哪一個漢字。再比如zhōng guó的漢字應該是“中國”,而不是“忠幗”。

由此我們也可以看出來:多態一方面可以降低了交流的準確性、另一方面也提高了說話的靈活性和信息量。

(2)英語雖然也有大量類似vehicle、meat的概念詞彙,但是卻沒有被廣泛地繼承。另外想提醒的是:英語的時態不是的多態性的表現。原因在於:

1.英語時態的主體是動詞(即動作),它強調了動作執行狀態的不同(沒做、正在做、做完了),而不是執行結果的不同。

2.多態是指具有相同特徵,但是因為對象不同而導致結果不同。它強調是執行結果的不同。

因此說時態不是多態。以軟件設計的觀點來看,如果對象的狀態發生了變化,就必須更換成另外一個對象,這是一件不可想象的事情,會導致對象無限增多從而失控。

結論:漢語具有多態性,而英語並不具備。但是多態對於語言來說,可能沒有太多的作用。

0%(0)
0%(0)
標 題 (必選項):
內 容 (選填項):
實用資訊
回國機票$360起 | 商務艙省$200 | 全球最佳航空公司出爐:海航獲五星
海外華人福利!在線看陳建斌《三叉戟》熱血歸回 豪情築夢 高清免費看 無地區限制
一周點擊熱帖 更多>>
一周回復熱帖
歷史上的今天:回復熱帖
2008: 看,一個“知名”科學騙子!
2008: 又是楊-米爾斯理論
2006: 海歸“SCDMA之父”陳衛突遭罷免
2006: 中共的掘墓人——厲以寧
2005: 試問誰人能得罪我們北大?
2004: 話說何祚庥 (1)
2004: 話說何祚庥 (2)