一個微笑裏的面向對象

昨天看電影時,發現了一個有趣的場景:一個騙子想騙一個壞人,於是他打電話給這個壞人,電話中他不僅聲音很和善,面部表情也很和善,但是掛了電話後,這個騙子立馬錶情嚴肅起來,可能在思考自己有沒有露出馬腳、也可能在考慮下一步如何安排。

於是我發現,發出和善的聲音,不僅僅是簡單的調節喉嚨或者控制講話速度,而是需要調整出一種和善的心態,這樣,發出的聲音才足夠和善。我剛纔試了一下,我先做了一個猙獰的表情,然後嘗試說話,說一些和善的話。無論我怎麼控制,說出的話都不夠和善,或者當我說出和善的話時,表情就沒那麼猙獰了。你也可以試試。不知道你做得到與否,但是我想,大部分人應該做不出。
作爲一個生命體、一個人,當然是由很多部分組成,所謂心肝脾肺腎,所謂眼耳口鼻嘴。做一件事往往需要很多身體部件配合。比如喫飯時,眼睛先看看,分辨哪些是土豆、哪些是姜,然後鼻子聞聞、用手拿起筷子夾起食物、張嘴、放入食物、咀嚼、吞嚥。當然,喫飯作爲一個重要的保持生命的活動,需要如此多部門聯合工作,並不奇怪。但是一個微笑,一個簡單的微笑,也需要很多工作要做。有的小朋友,當他生氣時,不論你怎樣教他,他都無法做出一個微笑,或者只是嘴角上揚,而臉部的肌肉、眼睛的神態都出賣了他心裏正在麻麥皮。當然作爲一個成年人,經歷得多了,也許臉上笑嘻嘻、心裏麻麥皮往往信手拈來。但是你仔細觀察你自己的內心時,往往就會發現:即使我心裏在麻麥皮,也是以一種和善的心聲來麻麥皮的。這時,你也可以像我一樣試試:先微笑,對着鏡子檢查一下你的微笑是否合格,然後心裏想着你討厭的人,然後用心聲說出:麻,麥,皮。不知道這次試驗的結果如何,反正我的實驗結果是:保持微笑時,罵人的心聲都會顯得悅耳。
原因很簡單,當保持和善的語氣、或者做一個微笑時,不僅僅是對喉嚨和語速的控制,或者僅僅對面部表情的控制,而是需要一個平穩而且略微積極的心態。這時候的微笑,即使是裝出來的,也顯得真誠。所謂真誠,不就是發自內心嘛。

面向對象是編程時,一個重要的概念,或者說一種方法、一種理念。它建議你完成一件事時,把參與這件事的各個部件(Object,也就是“對象”,我覺得把 Object Oriented 翻譯成面向東西都比面向對象好,整得你好像有很多對象一樣)都描述出來:這個部件多長多寬、多大多小、有哪些功能、做哪些事時需要哪些條件;另一個部件多長多寬、多大多小……另一個部件多長多寬、多大多小……這個部件和另一個部件是什麼關係、這些部件和那些部件有哪些關係。這樣,當事情發生時,就顯得理所當然、行雲流水。

問題也隨着產生了,函數式編程主義者就批評說:當我向他(面向對象主義)要一個香蕉時,他不僅給我了一個香蕉,還專門造了一隻猩猩拿給我,還爲這隻星星準備了一座熱帶雨林。是的,當你發出和善的聲音時,臉上和善的表情就顯得多餘且浪費了。這是面向對象的一個缺點,但同時也是優點。

優點之一上面已經說過了,“事情會顯得理所當然、行雲流水、發自內心”。優點之二就在於擴展性。比如今天客戶向你要一個香蕉,明天你當真只送一個香蕉過去的時候,他問:香蕉不應該由一隻黑猩猩或者長臂猿拿着嗎?香蕉樹呢?採香蕉的小姑娘呢?
當然,實際情況可能沒這麼誇張(也可能有),但是客戶變心,幾乎是必然事件。如果你寫了一段只能造出某一種香蕉的代碼時,這時讓你造另一種香蕉,你可能得把所有的代碼刪了,重寫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章