ruby程序是適配還是修改
作者:佚名 時間:2012-06-13 分享到:
不可否認的是,修改一個類或者單個實例以支持你需要的接口,要比創建一個甜酸器簡單多子,如果你修改原始類或者對象,那么你就不需要額外的甜酸器類,也不需要擔心如何用甜酸器包括被甜酸的對象,事情就是如此簡單,但是這種修改技巧帶有嚴重的封閉沖突,你直接打開一個類就進行修改,那么你何時應該用一個甜酸器而又在何時可以任意地修改類的內部結構呢?
這里有一些適用的方法,能夠幫助別在何種情況下可以修改類:
1.當對類的修改是簡單而明顯的,比如,我們之前的救命中為方法創建別名的情況,就是一個簡單修改的很好例子.
2.理解你要修改的類并且熟練掌握它的工作原理,在沒有仔細研究過一個類的結構的情況下,就對那個類進行大規模修改的話,可能會導致無法設想的后果.
同時,在下列的情況中,我們通常更喜歡使用適配器的方法
1.兩個類之間的接口大相以庭,比如,你可能不會想修改一個字符串對象,使它看上去類似于一個fixnum對象.
2.你不子解所使用的類是如何工作的,盲目地修改類將導致你付出慘痛的代碼.
工程設計的目的就是公平交易,適配器保留子被適配對象的封閉,但付出子增加性的代價,直接修改類可能使你的工作簡單許多,不過需要仔細的判斷和思考
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/help/20151126/n960.html