摘要: 迭代器模式:提供一个方法顺序访问一个聚合对象的各个元素,而又不需要暴露该对象的内部表示。选用场合:1.访问一个聚合对象的内容而无需暴露它的内部表示。2.支持对聚合对象的多种遍历。3.为遍历不同的聚合结构提供一个统一的接口(即,多态迭代)。迭代器模式由以下角色组成:1)迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口。2)具体迭代器角色(Concrete Iterator):具体迭代器角色要实现迭代器接口,并要记录遍历中的当前位置。3)容器角色(Container):容器角色负责提供创建具体迭代器角色的接口。4)具体容器角色(Concrete Container):具体容器 阅读全文
posted @ 2012-08-06 15:55 何长春 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 在做web开发的时候难免遇到一个问题,那就是,选择什么样的框架。下面把前端的框架简单的列一下。1、flexApache基金会已经发布了Flex 4.8版本,这是Adobe将Flex捐献给Apache基金会后发布的第一个版本。需要注意的是,Flex目前还在孵化阶段,还不是Apache的正式项目,Flex 4.8也不是一个正式的Apache版本。Apache称,该版本标志着Flex新时代的开始,Flex的未来将由社区来驱动,而不是由一个公司驱动。开发者可以通过贡献代码,来帮助改进Flex,如修复bug、增加功能等。从Macromedia卖给Adobe,然后又捐给apache,不知道搞什么名堂。不过 阅读全文
posted @ 2012-07-31 16:14 何长春 阅读(822) 评论(0) 推荐(0) 编辑
摘要: 创建型设计模式一共有5个:单例模式:Singleton,保证一个类只有一个实例,并提供一个访问它的全局访问点抽象工厂模式:Abstract Factory,提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。简单工厂模式:Factory Method,定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到了子类。建造者模式:Builder,将一个复杂对象的构建与他的表示相分离,使得同样的构建过程可以创建不同的表示。原型模式:Prototype,用原型实例指定创建对象的种类,并且通过拷贝这些原型来创建新的对象。简单工厂模式与抽象工 阅读全文
posted @ 2012-07-30 18:03 何长春 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。它主要面对的问题是:“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着剧烈的变化,但是他们却拥有比较稳定一致的接口。下面我克隆一个类,并修改名字和年龄,看看有什么变化package com.taobao.business;/** * 原型模式:创建型 */public class Prototype{ public static void main(String[] args) throws Exception { //先创建一个对象原型 Person p = n... 阅读全文
posted @ 2012-07-27 17:54 何长春 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 建造者模式:将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示。实用范围:1 当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。 2 当构造过程必须允许被构造的对象有不同表示时。角色:产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,一般会有比较多的代码量。实际编程中,产品类可以是由一个抽象类与它的不同实现组成,也可以是由多个抽象类与他们的实现组成。抽象建造者:引入抽象建造者的目的,是为了将建造的具体过程交与它的子类来实现。这样更容易扩展。一般至少会有两个抽象方法,一个用来建造产品,一个是用来返回产品。建造者:实现抽象类的所有未... 阅读全文
posted @ 2012-07-26 09:30 何长春 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式。抽象工厂模式可以向客户端提供一个接口,使客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象。举个简单的例子,比如用"勺子"喝"牛奶",用"筷子"吃"饭"……package com.taobao.design;/** * 抽象工厂模式:创建型 */public class AbstractFactory { public static void main(String[] args) 阅读全文
posted @ 2012-07-24 13:59 何长春 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 简单工厂模式是属于创建型模式,简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。package com.taobao.design;/** * 简单工厂模式:创建型 */public class SimpleFactory { public static void main(String[] args) { try { MusicFactory.createBox("Pianobox").play(); } catch (Exception e)... 阅读全文
posted @ 2012-07-23 10:23 何长春 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 有几天没有写博客了,今天闲着无聊,看了一下java中的加密、解密,主要是MD5和DES加密和解密,特意做成了一个工具类,方便需要的时候拿来使用,在项目中比如用户的密码比较隐私的信息可以采用MD5加密,像Cookie之类的可以采用DES加密,毕竟到服务端来的时候,你还要把信息解析出来!package com.taobao.frame.utils;import java.security.MessageDigest;import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.Mac;import 阅读全文
posted @ 2012-07-21 09:04 何长春 阅读(506) 评论(0) 推荐(0) 编辑
摘要: 在web开发中,倒计时随处可见,这里主要是用到了timer类,比较简单,直接上例子。<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955& 阅读全文
posted @ 2012-07-17 18:37 何长春 阅读(551) 评论(0) 推荐(1) 编辑
摘要: 在做图片切换的时候,grid操作的时候,可能有较多的信息,在一个控件中显示不了!那么自然就会有部分显示隐藏了,要想看到更多的信息时,自然会想到滚动条。但是滚动条有时并不完美,比如用户需要的是一屏一屏的去读取内容,或者用户是需要自动翻页,如果这样还让用户去点击滚动条,那用户可能要点着鼠标不放了!对用户体验自然也就差很多。不多说了,直接看代码:<?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="http://ns.adobe.com/mxml/2009&qu 阅读全文
posted @ 2012-07-17 18:08 何长春 阅读(964) 评论(0) 推荐(0) 编辑