使用和滥用内部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.linksj.com/hynews/20151126/n2386.html