05 2013 档案
摘要:在逛CodeProject的时候,偶然发现了一个老外写的代码,里面有一个自定义的用户控件,类似任务管理器里面CPU使用记录的图表,如下截图: 因为自己之前没有做过这样的图表,觉得很赞,所以将这个用户控件给抠了下来,做了一个小的demo,接下来我就分析下这个用户控件的实现过程。 先看代码:/// <summary>/// Summary description for UsageHistoryControl./// </summary>public class UsageHistoryControl : UserControl{ /// <summary> .
阅读全文
摘要:有这样的场景,淘宝开放平台上有销售订单API,销售订单金额API,商品上下架API,退款API等各种开放的 API,稍微有点规模的商家都会自己开发基于淘宝平台的信息管理系统,里面会涉及到订单管理,采购管理,库存管理,售后管理等,这些管理系统里面的数据都是通过API获取,或者通过API推送到淘宝平台上,这些系统的好处就是避免工作人员直接在淘宝后台进行各项操作。 基于上面的情况,那么自然会有很多后台程序来跑这些 API,刚开始我是这样设计的。 在一个后台程序里面开几个线程,每个线程对应几个API,这样也能够满足日常需求,但是随着业务量增大,会有各种数据或者任务需要处理,这个时候上面的程序也...
阅读全文
摘要:没有记错的话,应该是去年此时,我和另一个同事在技术经理的指导下对我们开发人员使用的开发辅助工具进行重构。当时技术经理提出运用MVP模式进行开发,因为另一同事在上一家公司运用过此种开发模式,便让他写了一个Demo,我也是照着葫芦画瓢,赶鸭子上架的开干起来了,当时也在网上了了解了这个开发模式,并没有深入的去研究它,现在想想确实不该啊,为什么只让自己做一个搬砖的人了,虽然身处搬砖的位置。今天我就来说一说对MVP开发模式的理解。 MVP英文全称:Model-View-Presenter,翻译过来就是模型-视图-表示器,它是MVC模式的一个变种,表面上看两种模式的M和V的职责应该是一样的,MVC的Co.
阅读全文
摘要:之前在CodeProject上看到一个老外写的文章,里面提到一句话翻译过来就是:依赖倒置是一种软件设计的原则,控制反转是一种软件设计模式。下面我就说说我对这句话的前半部分的理解。 DIP 的英文全称是:Dependency-Inversion Principles,翻译成中文就是依赖倒置原则。这里借《大话设计模式》里面的描述就是:1).高层模块不应该依赖底层模块,两个都应该依赖抽象。2).抽象不应该依赖细节,细节应该依赖抽象。这个里面谈到了一个词“抽象”,这个词在百度百科里面的解释是“从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。”此时,也许你会情不自禁的想到抽象类和接...
阅读全文
摘要:工作了几年,却一直没有做过将数据导出至Execl,想想也很奇葩。 最近我们在做一个供应链系统,这类系统,里面自然会涉及到操作Execl的功能,正好我所负责的功能里面有这个。 导出Execl的需求大概是这样的,一个主表,一个从表,关系是一对多,主从表关联,导出的数据是主表有多少条数据,那么Execl里面就有多少行数据,这里自然会涉及到合并单元格的动作,并且数据里面还有图片列,但看这需求总结出两点:1) 合并单元格,2) 显示图片。 最后导出的效果图截取部分: 部门里面的架构组提供的导出Execl组建不支持对指定列合并单元格功能,依赖于NOPI,所以后来选择了Aspose.Cell...
阅读全文