使用和濫用內部dsl
作者:佚名 時間:2012-06-24 分享到:
內部dsl是可以對特殊各類的問題使用的一種獨特的解決方法,不過和其它所有的工具一樣,它們都不能被毫無節制地濫用,當你采用基于內部dsl時,你可以獲得所有ruby語法帶來的便捷,不過同時也被限制在內部dsl能夠解釋的有限范圍中,比如,你多半無法使用ruby編寫一個直接解釋原html代碼的dsl。
另外一個問題是處理錯誤信息,除非你考慮得非常仔細,不然內部dsl可能會制造出相當奇怪的錯誤信息。例如,萬一你不幸在backup,pr文件中應該鍵入b的地方鍵入了x;
那么你會得到類似如下的錯誤信息;
./ex6_multi_backup.rb:86;undefined local variable or method 'x'..
對于一個只希望做一些備份處理而對ruby一無所知的用戶來說,這個錯誤信息就不怎么人性化了,你可以通過細致地編碼和正確地使用異常捕獲來改善這個問題,不過,這類沒有推理的信息始終是使用內部dslr一個常駐問題。
如沒特殊注明,文章均為上海聯楷網絡原創,轉載請注明來自:http://www.ktcbnqb.cn/hynews/20151126/n2386.html