使用和濫用慣例優于配置模式
作者:佚名 時間:2012-06-27 分享到:
構建基于慣例白系統有一個危險是,代碼慣例可能是不完整的,從而影響到系統的功能,比如,我們這個消息轉發器在將宿主名轉化為ruby類名時做得不夠徹底。我們知道代碼可以將russolen.com這樣的簡單宿主轉化成russolsendotcom。但是如果我們向當前系統傳入諸如iclgis.com這樣的宿主名,就會得到icl-gisdotcomauthorizer這樣的非法類名,在一般情況下,你可以通過允許類名重載慣例的方法來解決這個問題,在我們示例中,可以允許每個誰類在需要的時候重載默認的宿主名映射,并指定它所需要的宿主。
另外一個可能的問題源是,當一個系統使用了很多慣例之后,它對于新用戶來說可能合成為一個謎團。使用配置文件雖然在編寫和維護的時候非常繁瑣,但是它的確以某種方式提供了認識系統工作流程的線索(雖然可能很難以理解)。相反,一個設計優良的苦于慣例的系統,需要通過文檔來說明系統工作流程。
另外,請記住當慣例應用得更深入,更復雜時,你需要更完整的單元測試來保證慣例工作正常,此外,一個采用不一致的,或錯誤的,慣例的系統可能會引起其他一些令人困惑的問題。
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/hynews/20151126/n2393.html