Blog信息 |
blog名称: 日志总数:1304 评论数量:2242 留言数量:5 访问次数:7593096 建立时间:2006年5月29日 |

| |
[Python]一个FTP小工具 软件技术
lhwork 发表于 2007/1/10 9:44:37 |
百度空间上的背景音乐时不时会更新下,每次都是通过FlashFXP上传的。又是登录,又是选择目录的,着实麻烦。于是写了这个小工具。 开发环境:Eclipse3.2+Pydev+Python2.4 技术上,没有太多的新意,几乎就是ftplib的基础应用。在开发方式上,通过写“死”的测试Demo,抽取出“活”的部分。整个迭代过程,比较自然。思路会随着写的过程,逐渐清晰。一些在设计之初没考虑到的细节部分,也会中途逐渐显现。 主要功能有三个。list,显示ftp站点某目录的内容;download,下载文件到指定目录下;upload,上传文件到指定目录下。 还是看代码,比较简单。一定程度上,考虑到了程序的可扩展性。 conf/config.xml:
| |
[设计模式]『蚂蚁学模式』之迪米特法则(LoD) 软件技术
lhwork 发表于 2007/1/10 9:39:58 |
一个对象应当对其他对象有尽可能少的了解。
11.1 迪米特法则的各种表述: 1)只与你直接的朋友们通信。 2)不要跟“陌生人”说话。 3)每一个软件单位对其他的单位都只有最少的知识,而且局限于那些与本单位密切相关的软件单位。
11.2 狭义的迪米特法则 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。
朋友圈的确定 “朋友”条件: 1)当前对象本身(this) 2)以参量形式传入到当前对象方法中的对象 3)当前对象的实例变量直接引用的对象 4)当前对象的实例变量如果是一个聚集,那么聚集中的元素也都是朋友 5)当前对象所创建的对象 任何一个对象,如果满足上面的条件之一,就是当前对象的“朋友”;否则就是“陌生人”。 缺点:会在系统里造出大量的小方法,散落在系统的各个角落。
与依赖倒转原则互补使用
1 |
|
[codehaus.org]『蚂蚁学模式』之实例化抽象工厂模式及碎言 软件技术
lhwork 发表于 2007/1/10 9:33:37 |
延续『蚂蚁学模式』之实例化简单工厂、工厂方法模式中工厂方法模式的实例。 而这次,汽车厂(MotorFactory)有新的需求,不只要生产国产车(NativeMotor),还需要生产进口车(ForeignMotor)。这两种车都包括公交(Bus)和小轿车(Car)。 1. com.cleversoft.designpatterns.abstractfactory.MotorFactory.java
| |
[设计模式]『蚂蚁学模式』之实例化建造者模式 软件技术
lhwork 发表于 2007/1/10 9:25:51 |
建造者模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。
UML图示:
1. com.cleversoft.designpatterns.builder2.PostalClert.java:
| |
[设计模式]『蚂蚁学模式』之实例化适配器(Adapter)模式 软件技术
lhwork 发表于 2007/1/10 9:23:22 |
结构模式:描述如何将类或者对象组合在一起形成更大的结构。
适配器模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 使用场合: 1)系统需要使用现有的类,而此类的接口不符合系统的需要。 2)想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。这些源类不一定有很复杂的接口。 3)(对对象的适配器模式而言)在设计里,需要改变多个已有的子类的接口,如果使用类的适配器模式,就要针对每一个子类做一个适配器类,而这不太实际。
类/对象的适配器模式: 1. com.cleversoft.designpatterns.adapter.Target.java:
| |
|