static void Main(string[] args) { Console.WriteLine("学生甲抄的试卷:"); TestPaper A = new TestPaperA(); A.TestQuestion1(); A.TestQuestion2(); A.TestQuestion3(); Console.WriteLine("学生乙抄的试卷:"); TestPaper B = new TestPaperB(); B.TestQuestion1();…
 本文参考文献:GeekBand课堂内容,授课老师:李建忠 :大话设计模式 其余的模式方法请自行查看Geekband相关课程,在此不累述. 这周的课题是: 针对DrawingSystem中的基类Shape和各个子类Line.Rec.Circle.为支持更多的形状子类,请使用某种模式来支持灵活地创建它们.使用松耦合面向对象设计方法和思想,可使用伪码表示设计. 课程中提到了四种模式,“工厂方法”.“抽象工厂”.“原型模式”.“构建器”模式.最后聚焦在了“工厂方法”和“抽象工厂”这两种方法,那么第一个…
原文地址:[Head-First设计模式]C#版-学习笔记-开篇及文章目录 最近一年断断续续的在看技术书,但是回想看的内容,就忘了书上讲的是什么东西了,为了记住那些看过的东西,最好的办法就是敲代码验证,然后将书上的内容和自己的总结一起分享出来,这样看书的效果就会有大大提升. 最近在看一本讲JAVA设计模式的书,本人是C#开发,并想将书上的内容转换成C#的,然后写到博客上,以后查阅也方便,大家也可以参考参考. 本篇是开篇,也是文章目录. 01.策略模式-上篇 02.单件模式 03.命令模式 参考文…
学无止境,精益求精 十年河东,十年河西,莫欺少年穷 今天一起探讨模板模式,如下: 一.概念 上一篇文章讲了大话设计模式:原型模式,原型模式主要是通过Clone()方法<深浅复制>,创建新的对象,免去了初始化的过程.模板方法模式也特别会“偷工减料”,把不变的行为搬移到超类,去除子类中的反复代码,将代码的复用优势展现的淋漓尽致.它为我们提供了特定的结构和样式,我们仅仅需关心填充数据内容就好,省心啊- 以下让我们来看一下它的准确定义: 模板方法(TemplateMethod)模式:定义一个操作中的算…
负载均衡算法,轮询方式 2018-04-13 17:37 by 天才卧龙, 13 阅读, 0 评论, 收藏, 编辑 学无止境,精益求精 十年河东,十年河西,莫欺少年穷 学历代表你的过去,能力代表你的现在,学习代表你的将来 首先说下这个算法的背景: 假设公司需要存储的信息量非常非常大而且访问量也是非常非常滴大(例如淘宝,天猫,京东等数据存储量和访问量都很大) 就拿天猫来举例: 马云:小陈啊,最近公司业务发展,数据存储量及访问量灰常灰常大,为减轻服务器的负载,限你们技术部提出一个解决方案? 小陈:马…
C# Json反序列化   Json反序列化有两种方式[本人],一种是生成实体的,方便处理大量数据,复杂度稍高,一种是用匿名类写,方便读取数据,较为简单. 使用了Newtonsoft.Json,可以自行在nuget中导入 Json源数据: var data = "{'jingdong_ldop_receive_trace_get_responce':{'code':'0','querytrace_result':{'data':[{'opeTitle':'快递签收','opeRemark':'货…
原文:乐在其中设计模式(C#) - 模板方法模式(Template Method Pattern) [索引页][源码下载] 乐在其中设计模式(C#) - 模板方法模式(Template Method Pattern) 作者:webabcd 介绍 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中.Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤. 示例 有一个Message实体类,对它的操作有Get()方法,每次Get()之前要使用ValidateU…
博客原文地址:折腾Java设计模式之模板方法模式 模板方法模式 Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Template method lets subclasses redefine certain steps of an algorithm without changing the algorithm's structure. 翻译过来就是,把算法的框架定…
什么是“反模式” 反模式是一种试图解决问题的方法,但通常会同时引发别的问题. 反模式分类 (1)逻辑数据库设计反模式 在开始编码之前,需要决定数据库中存储什么信息以及最佳的数据组织方式和内在关联方式. 这包含了如何设计数据库的表.字段和关系. (2)物理数据库设计反模式 在确定了需要存储哪些数据之后,使用你所知的RDBMS关系型数据库技术特性尽可能高效地实现数据库管理. 这包含了定义表和索引,以及选择数据类型.也需要是要SQL的“数据定义语言”,比如Create Table语句. (3)查询反模…
目标:简化数据库架构 一些开发人员不推荐使用引用完整性约束,可能不使用外键的原因有一下几点: 1.数据更新有可能和约束冲突: 2.当前的数据库设计如此灵活,以至于不支持引用完整性约束: 3.数据库为外键建立的索引会影响性能: 4.当前使用的数据库不支持外键.比如MySQL的MyISAM存储引擎,或者比SQLite3.6.19早的版本: 5.定义外键的语法并不简单,还需要查阅. 反模式:无视约束,即不使用约束 省略外键约束能使得数据库设计更加简单.灵活,或者执行更加高效,但是你不得不在其他方面付出…