就问个比较那个啥的问题吧
假如现在写一个功能,下载不同的文件。大家会怎么组织代码呢?
是这样?
public void DownLoadFile(string fileName,string fileType){
string downUlr = "";
if(fileType=="picture"){
downUlr = "AU";
}else{
downUlr = "BU";
}
//然后,下载去吧
}
又或者是这样
public void DownLoadPicture(string name){
string url = "AU";
DownLoad(url );
}
public void DownLoadOtherTypeFile(string name){
string url = "BU";
DownLoad(url );
}
public void DownLoad(string url){
//下载
}
----------------------------------------------------------------
你们怎么看?
方法 一般是从通用到 细化
对于你上面的方法 这个就是通用的
public void DownLoad(string url){
//下载url}
至于怎么获得这个 url 以及限制 后缀什么的那就需要细化
在执行 这个方法前 执行一个
bool checkExt(string url,param string[] extarray)
{}
至于 后缀里面是 Picture 还是其他的什么 那么是更加细化的问题
总得来说 代码应该是这样
if(checkExt(url,"jpg","png"))
{
DownLoad(url);
}
回答的很用心。
不过,,,我问题也没说太清楚,
其实问题中下载不同文件,不是扩展名不一样,而是,, 图片,视频,mp3 这种差别
那么不同的文件,通常都会放到不同的目录吧(不管服务器上,还是本地)
那么下载和保存的时候 路径是不一样的(根据不同类型的文件而不同)
---
其实我这个问题没有什么正确的答案的。
这个答案写了这么多很用心,十分感谢
不过,不知道,我的问题这里描述的更清楚之后,答案会不会不同
哈哈 。。。我就这么一说,。,。这个方法也很好(还是那句话这个问题没有正确答案 哈哈)
做个简单的工厂就完了,更简单点就是放个字典
恩恩,,3Q for 回复,也是个办法
用第一种吧,可以减少代码量