
设计模式
老任物联网杂谈
这个作者很懒,什么都没留下…
展开
-
从Java Collections源码分析迭代器模式
一、 引言 迭代这个名词对于熟悉Java的人来说绝对不陌生。我们常常使用JDK提供的迭代接口进行java collection的遍历: Iterator it = list.iterator(); while(it.hasNext()){ //using “it.next();”do some businesss logic } 而这就是关于迭代器模式应用很好的例子。二、 定义与结构 迭代器(Iterator)模式,又叫做游标(Cursor)模式。GOF给出的定义为:提供一种方法访问一个容器(原创 2011-05-31 16:56:00 · 2655 阅读 · 1 评论 -
Groovy与JAVA实现Visitor模式的对比
本篇文章旨在突出Groovy的闭包和动态类型特性,所以建议阅读前有相关知识结构。设计模式与JAVA的默契程度不可小视,但部分模式使用Groovy的闭包和动态类型特性来实现更显得轻巧与灵活。下面使用JAVA和Groovy分别实现Visitor模式,并分析两者的优劣:首先是Visitor模式的定义及使用场景:GoF对访问者模式定义为:表示一个作用于某对象结构中各元素的操原创 2011-11-30 17:36:09 · 701 阅读 · 0 评论 -
Web开发设计模式PRG:Post/Redirect/Get,防止重复提交表单
Post/Redirect/Get 简称PRG,是一种用来防止表单重复提交数据的一种Web设计模式,典型的重复提交form内容的情况像用户刷新提交响应页面等可通过PRG模式来得到避免。当一个表单通过HTTP POST被请求提交的时候,用户在服务器端返回响应期间如果刷新了响应页面,将会导致原始HTTP POST过来的内容重复提交,可能会导致一些不可预期的结果,比如重复提交数据。转载 2012-03-22 17:08:21 · 7923 阅读 · 1 评论