四大發明之活字印刷——面向對象思想的勝利

人文精神  >>>  技術的天空 溫和的思緒

       話說三國時期,曹操帶領百萬大軍攻打東吳,大軍在長江赤壁駐扎,軍船連成一片,眼看就要滅掉東吳,統一天下,曹操大悅,于是大宴眾文武,在酒席間,曹操詩性大發,不覺吟道:“喝酒唱歌,人生真爽。…………”。眾文武齊呼:“丞相好詩!”于是一臣子速命印刷工匠刻版印刷,以便流傳天下。

 

        樣張出來給曹操一看,曹操感覺不妥,說道:“喝與唱,此話過俗,應改為‘對酒當歌’較好!”,于是此臣就命工匠重新來過。工匠眼看連夜刻版之工,徹底白費,心中叫苦不喋。只得照辦。

 

 

       
 

 

        樣張再次出來請曹操過目,曹操細細一品,覺得還是不好,說:“人生真爽太過直接,應改問語才夠意境,因此應改為‘對酒當歌,人生幾何?…………’!”當臣轉告工匠之時,工匠暈倒…………!

        可惜三國時期活字印刷還未發明,所以類似事情應該時有發生,如果是有了活字印刷。則只需更改四個字就可,其余工作都未白做。實在妙哉。

 

        第一,要改,只需更改要改之字,此為可維護;第二,這些字并非用完這次就無用,完全可以在后來的印刷中重復使用,此乃可復用;第三,此詩若要加字,只需另刻字加入即可,這是可擴展;第四,字的排列其實有可能是豎有可能是橫排,此時只需將活字移動就可做到滿足排列需求,此是靈活性好

        而在活字印刷術之前,上面的四種特性都無法滿足,要修改,必須重刻,要加字,必須重刻,要重新排列,必須重刻,印完這本書后,此版已無任何可再利用價值。

       小時候,我一直奇怪,為何火藥、指南針、造紙術都是從無到有,從未知到發現的偉大發明,而活字印刷僅僅是從刻版印刷到活字印刷的一次技術上的進步,為何不是評印刷術為四大發明之一呢?

       做了軟件開發幾年后,經歷了太多的客戶(曹操)改變需求,更改最初想法的事件,才逐漸明白當中的道理。其實客觀的說,客戶的要求也并不過份(改幾個字而已),但面對已完成的程序代碼,卻是需要幾乎重頭來過的尷尬,這實在是痛苦不堪。說白了,原因就是因為我們原先所寫的程序,不容易維護,靈活性差,不容易擴展,更談不上復用,因此面對需求變化,加班加點,對程序動大手術的那種無耐也就非常正常的事了

      之后當我學習了面向對象分析設計編程思想,開始考慮通過封裝、繼承、多態把程序的耦合度降低(傳統印刷術的問題就在于所有的字都刻在同一版面上造成耦合度太高所制),開始用設計模式使得程序更加的靈活,容易修改,并且易于復用。體會到面向對象帶來的好處,那種感覺應該就如同是一中國酒鬼第一次喝到了茅臺,西洋酒鬼第一次喝到了XO一樣,怎個爽字可形容呀。

       再次回顧中國古代的四大發明,另三種應該都是科技的進步,偉大的創造或發現。而唯有活字印刷,實在是思想的成功,面向對象的勝利。不知您是否也有所感呢?


伍迷家園 2013-07-12 10:42:55

[新一篇] 伍迷創意隨想集 之 兒童樂學園

[舊一篇] 總結GDC 2013獨立游戲開發者的9大建議
回頂部
寫評論


評論集


暫無評論。

稱謂:

内容:

驗證:


返回列表