Jackyfei
上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 1.概念:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变算法的结构即可重新定义该算法的某些特定步骤。2.模板方法的特点: 当代码环境中,子类们的行为方法存在重复,通过抽取封装不变的行为到父类,从而去除子类重复代码,代码因重复利用变得简洁。 模板方法非常简单,其核心是利用了继承机制,AbstractClass是一个抽象模板,包括基本方法和模板方法。其中基本方法是一个已经实现的虚方法,模板方法是具体的方法,他们构成了顶级的逻辑骨架。而逻辑的具体操作延迟到具体的子类ConcreteClass来实现。代码示例:public class TestPaper {... 阅读全文
posted @ 2014-03-24 15:12 张飞洪[厦门] 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 通过复制产生一个对象,而不是通过new产生。这种复制是内存二进制流的拷贝,性能比new好很多。缺点也是优点是:构造函数是不会执行,减少构造函数的约束。浅拷贝共享深拷贝创建副本(不共享)改变新对象属性或字段不影响原型对象如果我们我们只需要原型对象中的属性不引用其他数据信息,可以使用浅拷贝;如果我们需要原型对象中所有的信息,包括引用的数据信息,可以使用深拷贝public class Mail : ParentMail,ICloneable{ public Mail() { _Text = new Test(); } public string Receiver{ get; set;... 阅读全文
posted @ 2014-03-24 15:09 张飞洪[厦门] 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 简单工厂简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。不修改代码的话,是无法扩展的。工厂方法工厂方法是针对每一种产品提供一个工厂类。通过不同的工厂实例来创建不同的产品实例。在同一等级结构中,支持增加任意产品。抽象工厂抽象工厂是应对产品族概念的。比如说,每个汽车公司可能要同时生产轿车,货车,客车,那么每一个工厂都要有创建轿车,货车和客车的方法。应对产品族概念而生,增加新的产品线很容易,但是无法增加新的产品。小结★工厂模式中,重要的是工厂类,而不是产品类。产品类可以是多种形式,多层继承或者是单个类都是可以的。但要明确的,工厂模式的接口只会返回一种类型的实例,这是 阅读全文
posted @ 2014-03-24 15:02 张飞洪[厦门] 阅读(406) 评论(0) 推荐(0) 编辑
摘要: 1.概念:提供一个创建一系列相关对象的接口,而无需指定具体的类。用简单工厂改进抽象工厂实例:public class DataAccess{ private const readonly string dbstr="MSSQL"; public static IUser CreateUser() { IUser user = null; switch (dbstr) { case "MSSQL": user = new SqlServerUser(); //这里的实例化是写死在程序里面 break; case "OR... 阅读全文
posted @ 2014-03-24 15:00 张飞洪[厦门] 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 1.简单工厂模式 对象的集中管理,是把对象放在工厂类当中,那么如何避免工厂类重复new操作? a.通过构造函数进行注入。 b.设置工厂类为Singleton模式或者使用static方式。static更像API的集合,因为他不能被继承,Singleton更像面向对象。 客户端调用: OperationFactory factory=new OperationFactory(); IOperation oper= factory.CreateOperation("+"); //或枚举 OperEnum.A oper.NumA = 1; oper.NumB = 2; ... 阅读全文
posted @ 2014-03-24 14:59 张飞洪[厦门] 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 一、创建型模式[静态] 1.1单件模式 1.2工厂方法模式 1.3抽象工厂模式 1.4模板方法模式 1.5建造者模式(生成器模式) 1.6原型模式 二、结构型模式[静态] 描述类和对象之间的组合继承 2.1适配器模式 2.2桥接模式 2.3装饰模式 2.4组合模式 2.5Facade模式 2.6享元(Flyweight)模式 2.7代理模式三、行为型模式[动态] 涉及到算法,对象间的职责分配。 描述到类和对象之间通信和交互。 行为类模式 行为对象模式 3.1责任链 3.2命令模式 3.3解释器模式 3.4迭代器模式 3.5中介者模式 ... 阅读全文
posted @ 2014-03-24 14:57 张飞洪[厦门] 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 1.定义: 某一个类只有一个实例,并且这个实例是在类内部进行实例化,并向整个系统提供该实例。 2.单例模式的通用代码: public sealed class Singleton { private static sealed Singleton _singleton = new Singleton 阅读全文
posted @ 2014-03-24 14:56 张飞洪[厦门] 阅读(3746) 评论(0) 推荐(1) 编辑
摘要: 引言 数据库设计规范,仁者见仁,但是有共同的目标都是想要更加简洁清新,可维护可扩展等等。有时候设计的时候没有想到,等到开发的时候,或者发布完了,客户帮我们发现BUG,那是很得不偿失的事,这些得不偿失的事,我都经历着或经历过,记得刚毕业出来工作,对命名没有什么概念,很随意,更别谈用心去设计了,后面带来 阅读全文
posted @ 2012-04-13 13:09 张飞洪[厦门] 阅读(3015) 评论(11) 推荐(3) 编辑
摘要: 一、前言 线程同步其实很简单,但是往往被老师教的很复杂。这是之前上课受的伤。脑袋瓜当人人家的跑马场,被蹂躏一番,最后老师留下的是先入为主的错误,以至于后面不停的干扰我的理解,纠起错来,真是不知道浪费了多少精力。 二、什么是线程同步 一直想要找一个良好的方式来表达什么是线程同步。 先看一个模拟线程同步 阅读全文
posted @ 2012-04-11 23:18 张飞洪[厦门] 阅读(1002) 评论(0) 推荐(4) 编辑
摘要: 一.委托和异步调用: 先上代码: public class AsyncClass { private List<string> output=new List<string>(); public List<string> OutPut { get { return output; } } public AsyncClass() { Timer solwTimer = new Timer(new TimerCallback(OnTimerCallBack), "slow", 2500, 2500); ... 阅读全文
posted @ 2012-04-04 21:43 张飞洪[厦门] 阅读(1767) 评论(0) 推荐(0) 编辑
摘要: 本文主要谈的是委托相关运用。包括委托的简单定义,使用,好处;以及委托和Lambda的关系。所有知识点都简化为启发式的注释,应该不难理解,希望对你有帮助。 /// <summary> /// 委托让排序代码更加优雅(易扩展,易维护) /// 本文包含知识点: /// 1.委托定义 /// 2.委托的好处 /// 3.Lamda(包括语句Lamda和表达式Lambda) /// 4.Lambda和委托的关系 /// </summary> class Program { //定义内嵌委托(委托本质是一个类;编译器默认为继承自... 阅读全文
posted @ 2011-10-06 18:25 张飞洪[厦门] 阅读(2210) 评论(3) 推荐(0) 编辑
摘要: As its name suggest, with code-first, you start with the code. You can create the corresponding database directly from the code, but you could also be working from an existing DB. The advantage of code-first is that your entity-classes don’t have any EF artefacts on them: they don’t derive from a .. 阅读全文
posted @ 2011-09-13 20:24 张飞洪[厦门] 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 经过调研后,我们需要用需求规格说明书的方式将需求表达出来,并和客户进行确认。需求规格说明书可以明确定义系统的要求。 说明书所包括如下图: 这里面的重点应该是用例图和用例描述,因为这直接决定了开发人员的开发方向。 (1)例子 用例图:权限管理系统 (2)用例的详尽描述: 用例图简洁,但是达不到明确的要求。因为我们还有一些工作没有做,那就是描述我们的每一个用例: 权限管理系统-用户登陆: 前置条件:用户在系统首页输入用户名和密码。 事件流: 1)用户在首页输入用户名和密码,单击登陆按钮时,用例开始。2)用户向系统提交用户名和密码。 a,当用户名和密码输入错误,提示重... 阅读全文
posted @ 2011-08-30 09:21 张飞洪[厦门] 阅读(607) 评论(0) 推荐(0) 编辑
摘要: 新项目开启,公司一伙4个人一起开往联华电子有限公司参与调研。这次调研主要采用的是会议形式。前期时间安排比较少,一周2次,因为对方在交流的过程中,发现有些问题暂时无法确认,需要内部讨论后才能决定。所以就安排了每周一、四过去。感觉调研的时间安排也很重要。比如前期以慢为主,如果太过频繁,紧凑,有些东西会考虑的不全面。一个项目成功与否往往在需求阶段就定下了基调。所以还是需要认真对待。因为我们之前有做过飞创的项目,也是电子企业,所以有这方面的经验,加李老师是我们这个组的领域专家,之前在工厂呆过,又指导质量管理开发多年,可以说是业务精。所以这次调研比较顺利,思路特别清晰。之前对调研的经历和准备都不很系统. 阅读全文
posted @ 2011-08-26 11:37 张飞洪[厦门] 阅读(1872) 评论(0) 推荐(1) 编辑
摘要: 项目中碰到一个统计问题:生产派工单需要按名称进行分组,每一组的“标准工时”和“实际工时”需要进行按组统计。统计后的数据再进行分页显示。截图如下 UI图: 数据表结构图: 为了实现效果 模拟数据如下: 模拟数据截图: 应该还有更好的做法,希望你能提点建议,不胜感谢。 阅读全文
posted @ 2011-05-07 14:00 张飞洪[厦门] 阅读(7728) 评论(7) 推荐(1) 编辑
摘要: 如果一个项目做完了,没有做认真的总结,不但印象不深,而且有一些低级的错误会重犯,为了能尽量减少后面的错误,特标记错误集合,用来鼓励自己。 阅读全文
posted @ 2011-05-05 14:58 张飞洪[厦门] 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 面对纷繁的技术更新,如何不变应万变,更快更有效的学习一门知识,并且能让知识更加的持久化保存,初次尝试用思维导图,感觉在知识点的系统梳理方面很直观,顾边学边画,于是有了数据结构的系列笔记,希望一起分享,一起进步。 本书参考严蔚敏<数据结构>教程,整理书本结构如图:导图: 该图分3大点,每大点分2小点,共6小点。记次6点,后面可顺藤而展开,不影响记忆。 阅读全文
posted @ 2011-05-01 22:19 张飞洪[厦门] 阅读(630) 评论(0) 推荐(0) 编辑
摘要: 平时项目用到菜单或者Tab,首先想到的是到网上找一个漂亮的插件来用,周末闲来无事,自己也写一个简洁,轻量的Tab菜单,分享如下:效果图:Common CSS部分: .nav{ list-style:none; border-bottom:1px solid #11a3ff; height:30px; margin:0px; padding-left:0px; font-size:12px; text-align:center; } .nav li{ float:left; border:1px solid #11a3ff; width:80px; height:29px; backgroun. 阅读全文
posted @ 2011-04-16 12:31 张飞洪[厦门] 阅读(4747) 评论(7) 推荐(5) 编辑
摘要: 网页布局经常要用到DIV+CSS,CSS虽然不难,但是要精通也没有那么容易,为了学点CSS,我也做了一个菜单,拿出来献丑。做的时候有个疑问,为什么去掉position:absolute;背景色就不会横向100%撑满,请拍砖指教。效果图:CSS部分: ul{ padding:0px; background:url(button1_bg.jpg) repeat-x; width:100%; position:absolute; } ul li{ list-style:none; background:url(button1.jpg) repeat-x; f... 阅读全文
posted @ 2011-04-15 20:55 张飞洪[厦门] 阅读(1219) 评论(1) 推荐(0) 编辑
摘要: 由于项目需要,客户要求首页模块可以自由定义,考虑自己实现的效率,所以选择了用插件来实现,支持拖拽,效果如下: JS引入 HTML部分: JS部分: 链接下载 阅读全文
posted @ 2011-04-15 16:30 张飞洪[厦门] 阅读(3575) 评论(16) 推荐(6) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页
点击右上角即可分享
微信分享提示