你已经在了解了闭包,闭包是一个逻辑块,可以直接把闭包作为参数到处传递,从方法调用返回闭包,或者存储起来,在后面再使用。
闭包促进集中的资源处理,这样使你的代码更可靠,这不需要任何花费,事实上,代码库从结构重复方面得到了减轻,增强了表达性和维护性。
定义和使用闭包是出乎意料的简单,因为所有困难的任务(如引用的跟踪和方法回调到 代理对象)都是透明的,如果你不关心范围规则,每一件事情都天生的自然有序,如果你想了解机制和执行例如调用代理对象的任务,你是可以做到的,当然,高级的用法需要更加注意,当从一个代理返回时你也需要小心一点,特别是在使用了别的语言的for循环或者相似 的结果的情况。这比groovy的新手需要更小心,尽管行为是合乎常理的。
对于许多开发者来说,闭包也许打开了做一些工作的新途径的一扇门,例如currying,刚开始出现的时候也许让人感到害怕,但也可以使用少量的代码实现强大的功能,加之闭包能使相似的设计模式简单甚至不再需要相应的模式。
虽然你对groovy的数据类型和闭包有了一个好的理解,你仍旧需要了解你的程序的执行流程,这通过控制结构来完美的实现。