Groovy 设计模式 -- 借贷
借貸模式
http://groovy-lang.org/design-patterns.html#_loan_my_resource_pattern
The Loan my Resource pattern ensures that a resource is deterministically disposed of once it goes out of scope.
This pattern is built in to many Groovy helper methods. You should consider using it yourself if you need to work with resources in ways beyond what Groovy supports.
?
?
模式反例
def reader = f.newReader() reader.splitEachLine(' ') { wordList -> println wordList } reader.close() // => // [ "Mon", "Jun", "18", "22:38:17", "EST", "2007" ] // [ "RunPattern" ]?
模式正例
def withListOfWordsForEachLine(File f, Closure c) { def r = f.newReader() try { r.splitEachLine(' ', c) } finally { r?.close() } }Now, we can re-write our code as follows:
withListOfWordsForEachLine(f) { wordList -> println wordList } // => // [ "Mon", "Jun", "18", "22:38:17", "EST", "2007" ] // [ "RunPattern" ]?
This is much simpler and has removed the explicit close(). This is now catered for in one spot so we can apply the appropriate level of testing or reviewing in just one spot to be sure we have no problems.
?
轉載于:https://www.cnblogs.com/lightsong/p/8724254.html
總結
以上是生活随笔為你收集整理的Groovy 设计模式 -- 借贷的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 创新之短视频风口
- 下一篇: 大话目标检测经典模型(RCNN、Fast