摘要:
TY 用策略就是动态改变对象的方法了怎么还要有访问者的出现 有点晕 STST 策略所改变的同一性质的方法的不同实现,如记录日志,策略1记录在文本文件,策略2记录在Access文件里 ,......访问者则改变的是完全没有相似点的方法,如一个是打印,一个统计,一个是邮件通知 访问者要求对象的结构稳定,变化的是行为 结构稳定,就是指被访问者对象的类继承层次是稳定的,不会经常变化... 阅读全文
摘要:
CZ 匠友们,请教一个细节问题: 在一张表里,有一个字段"图件类型",包括 "平面图,柱状图,统计图",我现在是将该字段设计为 varchar 类型,直接存放类型名称。 现在有同事建议,应该设计为interger类型,然后定义一个枚举变量, enum MapType{AllMapType=0,Plane=1,Histogram,Cartogram};理由是, 1)这样查询的效率高。 2)避免使用... 阅读全文
摘要:
HZ 动态代理学了 不知道在工作中杂用哦 HE 现在一般不会直接用吧,一般都是用aspectJ这种完整aop的实现 STST 拦截方法调用 HZ 我见过把所有accessor方法放到切面的 还有transaction肯定都是在切面的 STST 比如一个方法,记录要保存起来用来验证用户名密码,如果不拦截的话就要如下处理bool Valid(string ... 阅读全文
摘要:
"设计模式,需要则用之,否则为了设计模式而设计模式反而不好,我们前段时间,大量的删除由于设计模式多出来的类和方法",一哥们这么说 关于这个,我认为: 为了设计模式而模式,肯定是不行的,基本上所有的模式都是用复杂性换取代码的其他属性(可维护性,灵活性等)使用了模式的代码肯定比平铺直叙的代码要复杂,但是带来了其他方面的好处,所以设计的时候应该先按照平铺直叙的方式设计,然后遇到重复的问题后回... 阅读全文
摘要:
今天,和一哥们讨论到简单工厂,正好我也对此关注了很长时间,所以有感而发,写点东西,供以后回味这段历史。 简单工厂的用途在现代语言(具有运行时强类型系统支持的语言,如Java,.Net),确实用途不大,感觉不到想起他模式一样重要,但是在不具备运行时强类型系统支持的语言(如C/C++等,C++具有编译时的强类型,运行时没有),这是一个极其重要的模式。 比如一个简单的... 阅读全文
摘要:
设计:抽象共同点,封装不同点模式:实现设计的手法语言:实现模式的载体不要一开始就进行模式套用,这样只会带来复杂性,而很少会带来好处,在重构过程中应用模式才有说服力! 阅读全文
摘要:
HB:真正人才是几个层面的人才:1. 思维层面:他本身的思维方式就是高端的,这种思维方式导致他学习能力、解决问题能力是比别人强的。2. 技术层面:熟悉底层的东西,底层的东西变化比上层少,而对于核心的认识,导致对于新的上层技术的理解也快。有自己精通的语言可以实现自己想要的东西3. 流程层面:可以从大的... 阅读全文
摘要:
STST 这一点我有话要说,不吐不快 1,没有什么"单纯地看测试一说" 2,销售额和利润暂时不说,进度这里,测试的好处就是保证好的进度,而不是"想当然"的认为测试占用了时间,而导致进度慢,实际经验中证明恰恰相反,"猴子一样乱弹琴的测试"除外 3,测试带来好的进度,好的质量,难道不会影响到销售额和利润? FN 现在的敏捷不就是将涉及研发进度的测试都交给开发人员完成了吗? STST 深层次... 阅读全文
摘要:
我刚在.Net下做了测试,对于尾递归,在Debug模式下,不会被优化为非递归结构,在Release模式下,会被优化为非递归结构,就不存在栈溢出的问题了 STST 这是我模拟的文件结构类 STST 这是非尾递归版本 STST 这是尾递归版本 STST 这是测试代码 STST 这是CreateDir的定义 STST 结果: 1,在Debug模式下,无论是不适尾递归,... 阅读全文
摘要:
今天与人再次聊到这个话题,有人在为"到底该用什么模式"而烦恼,我相信,每个都经历过这个阶段一定都会感觉很熟悉这个烦恼我认为,模式不是目的,只是工具,达到设计目标的工具,我们不会因为"为了使用锤子"而去"使用锤子",一定是因为其他目的"比如敲打钉子"而去"使用锤子".我们应该也同样不要因为"想用那个模... 阅读全文