無生有、無勝有 PK 設計模式

######無生有、無勝有 PK  設計模式

 無生有,無勝有!

  如果一個事物從無發展到有,那麼它以後的發展將受到這個“有”的因子的影響。並且有時,如果這個“有”的因子,是非常致命、強勢、根基,那麼後續它所衍生的子孫,可能都必須沿着它在幾個世紀前規定好的歷史固定的路線走,地球圍繞太陽的橢圓軌道運行,才能“允許出生”,“名列宗祠“!

  就如一個線程安全的模塊,後來基於它所發展出來的模塊,就必須且一定是,帶有線程安全的血緣基因!線程安全的子孫不能再變成非線程安全,退卻、縮變回去了。但是,如果這個模塊在初始設計的時間,就是非線程安全的!那麼,其在後面生命發展的進程中,就可以至少沿着兩條路進行行走、發展。一:保持革命本色,繼續非線程安全的特性,沿着二萬五千里長徵路進行行進。二:模塊整體上,進行一個很”薄“、簡單地包裝,成爲線程安全的模塊,從此獲得無生有的生命第二春!

  從這裏,我們可以看到,模塊設計時,一個理想化的追求原則,就是保持一種“無”的狀態!!因爲無生有,無勝有,呵呵!
  
  但是,理想是美好的,現實是殘酷的,“無”是一個非常理想化的目標,我不知道在現實中其可以不可以實現。但是,有一個弱化的目標,恐怕是我們能夠做到的,就是,在設計模塊的時間,我們可以儘可能地將“模塊所對外界的假設作到最少、最簡單”。因爲在假設最少、最簡單的情況下,從模塊設計的反方向來看,模塊的使用者只需要作很少的事情,就可以複用其這個模塊來,而不是需要模塊的使用者,準備了一大籮頭”東西“!這個視角可以算作是“假設最少”設計,從其反面來看時的一個鏡子。

   如果,一個模塊是一個假設、約束衆多,我們只能說,這個模塊太難用了,然後這個模塊就隨之失去了價值,存在的意義。我記得,一個計算機界牛人曾經有這麼一個哲言:”軟件的價值,存在於它被長久地使用“,這也是每一個稱職的程序員所應該夢寐以求追求的目標。

  在我看來,馮諾伊曼的“存儲執行”計算機計算模型,很好地提現了“假設最少”的設計原則,纔是馮諾伊曼機器結構在幾十年間都沒有怎麼變化過,確實值得追捧的模型的!

  困了,睡覺了,呵呵,一時興起,就寫了以前自己的一點感悟!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章