Spirent TestCenter Application 升级到4.24之后,原来的ROBOT
ATC 跑不过了。现象是两个,1)提示TCL
版本不兼容;2)第2个端口上收不到包。索性趁这个机会重构了对外接口。1)RunSequencerDoCheckList :使用两个预定的端口,分别作为us...
分类:
移动开发 时间:
2014-05-17 02:31:40
阅读次数:
413
本文主要分析了中介者模式、观察者模式、备忘录模式、访问者模式、状态模式、解释器模式,介绍它们的定义、优缺点、使用场景,以及实例代码。为了深刻地理解设计模式,最重要的还是动手编写代码。
我参照书中的例程重新构想了一些更加生动、易于理解的例子,希望大家喜欢。
代码可以通过以下链接进行浏览:
http://git.oschina.net/caipeichao/java-design-pattern
这些代码都经过编译运行,保证没有错误。...
分类:
其他好文 时间:
2014-05-12 23:20:22
阅读次数:
436
同步或者重构Activiti Identify用户数据的多种方案比较
相信每个涉及到用户的系统都有一套用户权限管理平台或者模块,用来维护用户以及在系统内的功能、数据权限,我们使用的Activiti工作流引擎配套设计了包括User、Group的Identify模块,怎么和业务数据同步呢,这个问题是每个新人必问的问题之一,下面介绍几种同步方案,最后总结比较。
如果你在考虑直接使用Activit...
分类:
编程语言 时间:
2014-05-12 23:14:12
阅读次数:
549
前言
前期为了快速开发,项目结构较为混乱,代码维护与功能扩展都比较困难,为了方便后续功能开发,最近对项目进行的重构,顺便在重构的过程中将之前的部分操作进行了异步处理,也第一次实际接触了JMS与消息队列。项目中采用的消息中间件为ActiveMQ。什么是JMS
Java消息服务(Java Messa.....
分类:
其他好文 时间:
2014-05-12 11:37:52
阅读次数:
438
本文主要分析了模板方法模式、命令模式、责任链模式、策略模式、迭代器模式,介绍它们的定义、优缺点、使用场景,以及实例代码。为了深刻地理解设计模式,最重要的还是动手编写代码。
我参照书中的例程重新构想了一些更加生动、易于理解的例子,希望大家喜欢。
代码可以通过以下链接进行浏览:
http://git.oschina.net/caipeichao/java-design-pattern
这些代码都经过编译运行,保证没有错误。...
分类:
其他好文 时间:
2014-05-11 04:44:19
阅读次数:
289
上文已讲述了回溯法以及01背包问题的原理,本文讲述如何顺序执行解决01背包问题以及通过模板模式重构软件。
一、顺序执行流程图
图1无剪枝函数的01背包问题顺序执行算法流程图
图2 有剪枝函数的01背包问题顺序执行算法流程图
无剪枝函数是通用的深度遍历算法,为了减少搜索深度可通过剪枝函数处理完全不可能的分枝。与递归方案的区别主要表现在i>=n后需要“回溯”,即用后进先出的方式将物...
分类:
其他好文 时间:
2014-05-09 22:15:22
阅读次数:
675
目的是做一个分发的php脚本,根据客户端的不同需求,分发到不同的功能脚本。所以需要首先检验客户端发来的HTTP包中的请求类型,然后再进行分发。分发脚本:<?php
/*
*Thisfileistodistributetherequeststodifferentservers,isdividedbyfunctions
*Para:Http-Request
*Data:2..
分类:
Web程序 时间:
2014-05-08 16:43:06
阅读次数:
347
应用中的数据很少只是简单的key-value,常常他们是包含了日期,地理位置坐标,对象,数组等结构化的。想要把这些数据存储起来,如果使用行列式的关系型数据库,就好象把你制作好的结构化数据塞到一个excel表格中一样,这样做就得把你的数据重构造以符合数据表格的约束,当然从数据库中取出所需的数据还要反向...
分类:
其他好文 时间:
2014-05-08 15:34:46
阅读次数:
273
1. 永远不要复制代码
不惜任何代价避免重复的代码。如果一个常用的代码片段出现在了程序中的几个不同地方,重构它,把它放到一个自己的函数里。重复的代码会导致你的同事
在读你的代码时产生困惑。而重复的代码如果在一个地方修改,在另外一个地方忘记修改,就会产生到处是bug,它还会使你的代码体积变得臃肿。现....
分类:
其他好文 时间:
2014-05-08 14:52:34
阅读次数:
304