把FlvDownloader重构了一下

摘要:
为了更方便地下载电视剧,我们今天在FlvDownloader中添加了几个小功能,并重构了代码。支持Flv合并:分段视频将在下载后自动合并。因为整个FlvDownloader是同时设计和实现的,所以它将添加一个功能来满足新的需求。昨天,我们重新划分了模块。今天,我们重新组织了代码,删除了许多内容,并使结构更加简洁明了。当你有空的时候,有必要整理一下FlvDownloader的整个开发过程,并写一个日志。

为了更方便的下载电视剧,今天给FlvDownloader加了几个小功能,把代码也重构了一下。主要改动如下:

  1. 改善了探测过程:
    以前探测需要等待IE探测完改页面才能开始下载,并且如果页面比较多的时候需要一个个的探测和等待,比较麻烦。现在改善了一下,探测只需要输入URL和文件名即可关闭对话框,探测在后台自动进行。另外支持批量下载了,这样下载专辑就比较方便了。
  2. 添加下载进度保存的功能:
    退出的时候会将下载的进度保存起来,下次启动会自动载入,继续下载。
  3. 支持Flv合并:
    对于分段视频,下载完成后会自动将其合并。
  4. 改善了UI:
    一些界面的改动,改进了一些功能,看起来更舒服了点,用起来也更方便点。

把FlvDownloader重构了一下第1张

由于整个FlvDownloader是一边想一边做的,遇到个新需求就往里面加个功能。这样就导致没有规划,虽然编写程序还是考虑了一下架构和模块划分的,但随着功能的增多,代码就越写越乱,这样一个简单的程序也逐渐有不少Bad smell。这几个功能本想昨天晚上给它加上去,然后睡觉时就挂着下载的,但写着写着就发现需要对代码进行重构,不然的话加新功能将越来越难。于是昨天就重新进行了一下模块划分,今天将代码重新组织了一下,去掉了不少东西,结构也更加精简和清晰了。什么时候有空的话把整个FlvDownloader的开发过程整理一下,写个日志什么的是很有必要的。

一天编程下来,感觉wpf是很好很强大,随着主机的越强,更强的客户端必将带来更丰富的UI体验,如果日常应用程序的界面像游戏一样华丽的话,工作也是一件赏心悦目的事情。

免责声明:文章转载自《把FlvDownloader重构了一下》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇CSS的position(位置)Activity的生命周期下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

网页重构面试笔试题

1.什么是网站重构?div+css的布局较table布局有什么优点?2.如何理解css盒模型?3.平时做网页经常使用哪些hack?4.如何理解表现与内容相分离?5.如何解决ie6的双边距问题?6.如何定义高度为1px的容器?{heigh:1px; 10px; background:#000; overflow:hidden}ie6下这个问题是默认行高造成的,...

互联网开发模式的经验之谈

版权声明:本文由韩伟原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/238 来源:腾云阁 https://www.qcloud.com/community 作者介绍:韩伟,1999年大学实习期加入初创期的网易,成为第30号员工,8年间从程序员开始,历任项目经理、产品总监。2007年...

软件配置管理复习

软件配置管理 第1章    软件配置管理概念与目标 软件配置管理(Software Configuration Management, SCM) (1)    定义(多个): l  软件配置管理是指一套管理软件开发和维护过程中所产生的各种中间软件产品的方法和规则,它是控制软件系统演变的学科。 l  软件配置管理是一组针对软件产品的追踪和控制活动,它贯穿于项...

Idea快捷键大全

Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate)fori/sout/psvm + TabCtrl+Alt+T 生成try catch 或者 Alt+enterCTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里Ctrl + O 重写方法Ctrl...

【重构】Bilibili UWP 客户端下载视频文件重命名 2.0

代码已上传Github:https://github.com/zsy0216/BatchModifyBilibiliName 较 master 分支的改变: - 优化了重命名的代码,覆盖更全面,更准确; - 重命名过程中删除多余文件,文件更简洁; - 重构为 maven 更有利于二次开发; - 使用 NIO 操作文件,功能更强大,效率更高; 示例 1. 下...

数据库重构《Refactoring DataBase Evolutionary DataBase Design》介绍

说实话我也是前两周才知道有数据库重构这回事,当时听说这个概念的时候,唯一的反应就是:数据库居然也能重构?刚好上周去图书馆借书,看见了《数据库重构》这本书,就借回来看了几章。下面会结合自己的体会介绍一些这本书的一些观点。 数据库重构概念 数据库重构是对数据库Schema进行的简单改动,在保持行为和信息语义的前提下改进设计。 数据库重构可以重构数据库Schem...