文件上传类的设计

在很早之前就有问题困扰着我,我至今才找到答案。瞬间 豁然开朗了。问题是 让你设计一个 文件上传类,你会怎么设计?主要问题是考虑到 上传时的错误处理,和配置上传到那个目录。怎么去解决系统的藕合和聚合问题?

之前呢,我也看过几个项目的处理方式,有的是错误直接抛出,让外面的系统去处理异常(typecho好像是这样的), 有的能是类的内部自己处理异常(用属性存储错误信息,提供方法获取错误信息) 百度ueditor视乎是这样,配置的话有的是使用 常量,有的是是函数获取,还有的是使用类获取。

感觉都很杂乱,耦合度很高,知道今天我才体会到什么叫面向对象。对象编程要比过程舒服得多,解决问题也简单些。

如果让我设计 错误信息我会参考百度 ueditor的思路,配置 我会留1个属性,2个方法,1是外部调用设置 配置方法,1个是外部获取配置方法。之前我考虑是留3个方法,第3个方法是给系统使用的,上传类内部调用,让它主动去拿配置。

我细细想后,第3个方法多余了,设计得不合理,还是有藕合。可以在继承中实现 获取配置的方法,这样就实现了类和系统分离。低耦合了。

你有没有觉得这个真的很巧妙,很有趣???文件上传类 用常量 或者是 类来获取配置,又或者是系统初始化时就传入配置给上传类,感觉都没这个舒服。

书山有路勤为径,学海无涯苦作舟

添加新评论