本站首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告
 本博客在此声明所有文章均为转摘,只做资料收集使用。

我的分类(专题)

日志更新

最新评论

留言板

链接

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:

阅读全文(4856) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之迪米特法则(LoD)
软件技术

lhwork 发表于 2007/1/10 9:39:58

一个对象应当对其他对象有尽可能少的了解。

11.1 迪米特法则的各种表述:
1)只与你直接的朋友们通信。
2)不要跟“陌生人”说话。
3)每一个软件单位对其他的单位都只有最少的知识,而且局限于那些与本单位密切相关的软件单位。

11.2 狭义的迪米特法则
如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。

朋友圈的确定
“朋友”条件:
1)当前对象本身(this)
2)以参量形式传入到当前对象方法中的对象
3)当前对象的实例变量直接引用的对象
4)当前对象的实例变量如果是一个聚集,那么聚集中的元素也都是朋友
5)当前对象所创建的对象
任何一个对象,如果满足上面的条件之一,就是当前对象的“朋友”;否则就是“陌生人”。
缺点:会在系统里造出大量的小方法,散落在系统的各个角落。

与依赖倒转原则互补使用

1


阅读全文(3677) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之实例化简单工厂、工厂方法模式
软件技术

lhwork 发表于 2007/1/10 9:34:04

我想“一切从实例开始”是我最易接受的方式。网上有太多的理论和经验总结,于已而言,吸收亦成乐事。
先看实例,很简单。UML图也懒得画了,更喜欢CRC卡片的方式。
一、简单工厂模式
1. com.cleversoft.designpatterns.simplefactory.Motor.java
阅读全文(2813) | 回复(0) | 编辑 | 精华 | 删除
 


[codehaus.org]『蚂蚁学模式』之实例化抽象工厂模式及碎言
软件技术

lhwork 发表于 2007/1/10 9:33:37

延续『蚂蚁学模式』之实例化简单工厂、工厂方法模式中工厂方法模式的实例。
而这次,汽车厂(MotorFactory)有新的需求,不只要生产国产车(NativeMotor),还需要生产进口车(ForeignMotor)。这两种车都包括公交(Bus)和小轿车(Car)。
1. com.cleversoft.designpatterns.abstractfactory.MotorFactory.java
阅读全文(2729) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之实例化单例模式(一)
软件技术

lhwork 发表于 2007/1/10 9:31:57

饿汉式单例
com.cleversoft.designpatterns.singleton1.Singleton.java:
阅读全文(2730) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之实例化单例模式(二)
软件技术

lhwork 发表于 2007/1/10 9:31:03

前面说了单例模式,这次说说单例模式的推广——多例模式。

有上限多例模式
com.cleversoft.designpatterns.multiton.Die.java:
阅读全文(3192) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之实例化建造者模式
软件技术

lhwork 发表于 2007/1/10 9:25:51

建造者模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。

UML图示:


1. com.cleversoft.designpatterns.builder2.PostalClert.java:
阅读全文(3008) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之实例化原型模式
软件技术

lhwork 发表于 2007/1/10 9:23:58

用意:通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象。

1. com.cleversoft.designpatterns.prototype.Prototype.java:
阅读全文(2542) | 回复(0) | 编辑 | 精华 | 删除
 


[设计模式]『蚂蚁学模式』之实例化适配器(Adapter)模式
软件技术

lhwork 发表于 2007/1/10 9:23:22

结构模式:描述如何将类或者对象组合在一起形成更大的结构。

适配器模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。
使用场合:
1)系统需要使用现有的类,而此类的接口不符合系统的需要。
2)想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。这些源类不一定有很复杂的接口。
3)(对对象的适配器模式而言)在设计里,需要改变多个已有的子类的接口,如果使用类的适配器模式,就要针对每一个子类做一个适配器类,而这不太实际。


类/对象的适配器模式:
1. com.cleversoft.designpatterns.adapter.Target.java:
阅读全文(2815) | 回复(0) | 编辑 | 精华 | 删除
 


[OpenSymphony]Quartz Cron Expression
软件技术

lhwork 发表于 2007/1/10 9:19:04

原文解释: Field Name Mandatory? Allowed Values Allowed Special

阅读全文(6250) | 回复(1) | 编辑 | 精华 | 删除
 


« 41 42 43 44 45 46 47 48 49 50 »



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.109 second(s), page refreshed 144777725 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号