自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 收藏
  • 关注

原创 机房重构Debug记录

1.未能加载文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件。原因:写反射加配置文件加抽象工厂的时候,Factory层没有引用DAL层2.将字符串转换为 smalldatetime 数据类型时失败。原因:插入数据的SQL语句写错了,参数@uid和@ontime不该加单引号string sql = @"Insert into Line_Info (UserID,OnTime) values('@uid','@ontime')//错误string sql = @"Insert into

2021-01-09 17:07:21 21 3

原创 七层登陆——内有详细注释

  一开始接触七层和大家一样都很茫然,到目前为止花了一个多星期终于登陆成功了,多亏了几位小伙伴的无私帮助,没有他们就没有这篇博客。  我理解的七层是根据三层出发,逐步的增加需求和代码优化成型的,据说不必拘泥于一定要七层,只要在三层的框架上即可了。这里的七层分别是:1、实体层(Entity):封装数据,为了能让数据在其他层次中运转流转。2、数据访问层(DAL):针对数据的增添、删除、修改、查找,仅限于跟数据源打交道。3、接口层(IDAL):接口层用来定义一个统一的接口,解除B层和D层的耦合。4、工

2021-01-04 11:49:50 34 3

原创 访问者模式——访问者与元素

  访问者模式(Visitor)定义:表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。  使用场景:适用于数据结构相对稳定的系统(访问者角色稳定,不多变)一个对象结构包含很多类对象,它们有不同的接口,而你想对这些对象实施一些依赖于其具体类的操作。需要对一个对象结构中的对象进行很多不同的并且不相关的操作,而你想避免让这些操作“污染”这些对象的类。Visitor模式使得你可以将相关的操作集中起来 定义在一个类中。当该对象结构被很多应用共享时,

2020-12-16 16:47:52 34 12

原创 解释器模式——解释语言

  解释器模式(interpreter)定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。  优点:扩展性好。由于在解释器模式中使用类来表示语言的文法规则,因此可以通过继承等机制来改变或扩展文法。容易实现。在语法树中的每个表达式节点类都是相似的,所以实现其文法较为容易。  缺点:执行效率较低。解释器模式中通常使用大量的循环和递归调用,当要解释的句子较复杂时,其运行速度很慢,且代码的调试过程也比较麻烦。会引起类膨胀。解释器模式中的每条规则至

2020-12-15 15:29:37 21 10

原创 中介者模式——安理会做中介

  中介者模式(Mediator)定义:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式的相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又叫调停模式,它是迪米特法则的典型应用。  使用场景:一组对象以定义良好但是复杂的方式进行通信的场合想定制一个分布在多个类中的行为,而又不想生成太多的子类的场合  优点:类之间各司其职,符合迪米特法则。降低了对象之间的耦合性,使得对象易于独立地被复用。将对象间的一对多关联转变为一对一的关联,提高系统的灵活性,使得系

2020-12-15 09:07:06 48 12

原创 职责链模式——向上级申请加薪

  职责链模式(Chain of Responsibility)定义:为了避免请求发送者与多个请求处理者耦合在一起,于是将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。也叫责任链模式。  优点:降低了对象之间的耦合度。该模式使得一个对象无须知道到底是哪一个对象处理其请求以及链的结构,发送者和接收者也无须拥有对方的明确信息。增强了系统的可扩展性。可以根据需要增加新的请求处理类,满足开闭原则。增强了给对象指派职责的灵活性

2020-12-14 20:42:26 17 7

原创 命令模式——经营烧烤摊

  命令模式(Command)定义:将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。  例如去饭馆吃饭,菜单不是等到客人来了之后才定制的,而是已经预先配置好的。这样,客人来了就只需要点菜,而不是任由客人临时定制。餐厅提供的菜单就相当于把请求和处理进行了解耦,这就是命令模式的体现。  使用场景:方法的请求者”与“方法的实现者”之间存在紧密的耦合关系时  优点:通过引入中间件(抽象接口)降低系

2020-12-14 19:37:19 22 9

原创 迭代器模式—遍历的初级阶段

  迭代器模式(Iterator)定义:提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。  这个模式现在己经被写在语言中,例如C#的foreach in,但是还是可以了解一下迭代器模式的基本结构。  优点:访问一个聚合对象的内容而无须暴露它的内部表示。遍历任务交由迭代器完成,这简化了聚合类。它支持以不同方式遍历一个聚合,甚至可以自定义迭代器的子类以支持新的遍历。增加新的聚合类和迭代器类都很方便,无须修改原有代码。封装性良好,为遍历不同的聚合结构提供一个统一的接口。

2020-12-14 10:35:36 14 9

原创 备忘录模式——存档读档

  备忘录模式(Memento)定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。该模式又叫快照模式。  使用场景:使用命令模式时,需要实现命令的撤销还原错误或无效的状态  结构:发起人(Originator)角色:记录当前时刻的内部状态信息,提供创建备忘录和恢复备忘录数据的功能,实现其他业务功能,它可以访问备忘录里的所有信息。备忘录(Memento)角色:负责存储发起人的内部状态,在需要的时候提供这些内部状态给发起

2020-12-13 19:55:11 23 8

原创 状态模式——打工人一天的状态变化

  状态模式(State)定义:当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类。  什么是状态:  应用程序中的部分对象可能会根据不同的情况做出不同的行为,我们把这种对象称为有状态的对象,而把影响对象行为的一个或多个动态变化的属性称为状态  优点:将与特定状态相关的行为放到该状态中,并且将不同状态下的行为分割开来,消除了选择语句,满足“单一职责原则”将不同的状态引入独立的对象中会使得状态转换变得更加明确,且减少对象间的相互依赖。状态类职责明确,有利于程序的扩展。通过定

2020-12-13 11:00:22 18 8

原创 享元模式——大大方方共享对象

  享元模式(Flyweight)定义:运用共享技术有效地支持大量细粒度的对象。  享元模式的定义提出了两个要求,细粒度和共享对象。因为要求细粒度,所以不可避免地会使对象数量多且性质相近,此时我们就将这些对象的信息分为两个部分:内部状态和外部状态。  享元对象的状态分类:内部状态:在享元对象内部且不会随着环境改变而改变的共享部分外部状态:随环境改变而改变的,不可共享的部分(例如五子棋中,棋子的黑白两色是内部状态,棋子的方位坐标是外部状态)  使用场景:程序使用了大量的对象,而这些对象造成

2020-12-12 16:07:48 17 7

原创 组合模式——统一的公司结构

  组合模式(Composite)模式定义:将对象组合成树形结构以表示"部分—整体"的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。  使用场景:体现部分与整体层次的结构时忽略组合对象与单个越想的不同,统一的使用组合结构中的所有对象 (整体和部分可以被一致对待)  分类:透明方式:子继承父,并具备父类所有方法,这样子类与子类之间对于外界没有区别,具备完全一致的行为接口(允许重写的方法无意义)。安全方式 :子类1继承父,不去声明无意义的方法;子类2继承父,能声明所有父类方法

2020-12-12 10:23:14 17 9

原创 桥接模式——1.分类2.找联系3.继承

  桥接模式(Bridge)定义:将抽象部分与它的显示部分分离,使它们都可以独立地变化。  桥接模式的目的是松耦合,另外也用到了合成/聚合复用原则(尽量使用合成/聚合,尽量不要使用继承)。因为继承是一种强耦合关系,所以我们优先考虑把类分好,然后找到类之间的合成/聚合关系,到最后再使用继承。Implementor类: abstract class Implementor { public abstract void Operation();//抽象方法Operation

2020-12-09 17:17:33 32 11

原创 适配器模式——在NBA我需要翻译

  适配器模式(Adapter)定义:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。  使用场景:复用一些现存的类,但接口又于复用环境不一致双方都不太容易修改的时候  代码背景: 姚明去美国打NBA,但是不会英语无法和教练球员沟通,翻译就起到了适配器的作用。球员类: abstract class Player { protected string name; publ

2020-12-09 11:48:21 39 9

原创 单例模式(懒汉和饿汉)——独生子女挺好

  单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点。  特点:单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。  懒汉和饿汉的区别:饿汉就是类一旦加载,就把单例初始化完成,保证getInstance的时候,单例是已经存在的了;而懒汉比较懒,只有当调用getInstance的时候,才回去初始化这个单例。饿汉式天生就是线程安全的,可以直接用于多线程而不会出现问题;懒汉式本身是非线程安全的,为

2020-12-09 10:36:38 1877 15

原创 抽象工厂模式——换DB了怎么办

  抽象工厂模式(Abstract Factory)定义: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。  代码背景:假设User表里有两个字段:ID和Name,要求写一段程序,让两种数据库语言实现对这俩字段的插入和查询。使用工厂模式: User表类:用户类,假设只有ID和Name两个字段 class User { private int _id; private string _name;

2020-12-08 16:47:44 55 11

原创 观察者模式(委托和事件)——老板来了我不知道

委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性。玩游戏的同事: class GameObserver { private string name; private Subject sub; public GameObserver(string name,Subject sub) .

2020-12-07 11:30:41 67 15

原创 委托和事件——老鼠跑和猫叫

CatShoutEventArgs 类:猫叫事件参数类,目前的属性只有猫的name //EventArgs是包含事件数据的类的父类,作用是事件触发时传递数据 class CatShoutEventArgs : EventArgs { private string name; public string Name { get{return name;} set { name = value;

2020-12-07 10:27:05 38 12

原创 建造者模式——画胖小人和瘦小人

  建造者模式(Builder)定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。  使用场景:创建复杂对象的算法应该独立于该对象的组成部分,以及他们的装配方式时。当构造过程必须允许被构造的对象有不同表示时。  例子背景:甲方需求是画出胖小人或瘦小人,到底要画哪个不确定,并且不想了解画小人的过程。乙方把任务交给指挥者,让画胖小人的画手1和画瘦小人的画手2都听指挥者的命令,指挥者让谁画谁就画,两个人的动作都是画画,但是画出来的内容不一样。建造人类:抽象类

2020-12-06 10:16:31 38 11

原创 外观模式——基金帮我炒股

  外观模式(Facade)定义:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。这个接口也可称作门面。●  门面(Facade)角色 :客户端可以调用这个角色的方法。此角色知晓相关的(一个或者多个)子系统的功能和责任。在正常情况下,本角色会将所有从客户端发来的请求委派到相应的子系统去。●  子系统(SubSystem)角色 :可以同时有一个或者多个子系统。每个子系统都不是一个单独的类,而是一个类的集合(如下面的子系统就是由Stock1、Stock2

2020-12-05 20:24:11 36 8

原创 模板方法模式——题号都抄错了

  模板方法模式(TemplateMethod): 定义一个操作中的算法的骨架,将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。  很好的实现了代码复用,把不变的行为放置到超类中,去除子类的重复。  例子背景: 家教老师要给两个学生出同一套题,两个学生太笨题目都分不清顺序,没办法老师要求再考一次,并且让学生把题目(题号)先写下来。试卷类:class TestPaper //给出了逻辑骨架,具体实现留到了子类中 { publ

2020-12-05 11:32:41 1744 13

原创 原型模式——找工作要复印简历

  原型模式(Prototype)定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型类:abstract class Prototype{ private string id; public Prototype(string id) //构造函数重载 { this.id=id; } public string Id //Id属性只读 { get {return id;} } public abstract Prototype Clone();

2020-12-05 10:46:39 32 8

原创 类与类的六种关系与UML图

类的关系:泛化(继承) = 实现 > 组合 > 聚合 > 关联 > 依赖泛化:(is-a),类与类、接口与接口的继承关系****************************************************************************************实现:指的是一个class类实现interface接口(可以是多个)的功能*************************************

2020-12-04 14:49:58 47 6

原创 工厂模式——学雷锋做好事

  工厂(Factory)模式定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到子类。  工厂方法把简单工厂的内部逻辑判断移到了客户端代码来进行,想要加新功能,本来是改工厂类,现在是修改客户端。  代码例子背景:大学生学习雷锋做好事,课余时间去孤寡老人家里扫地、洗衣服做家务,但是不需要让老人知道学做雷锋的是大学生还是社区志愿者,因为雷锋做好事不留名。  雷锋类:包含具体要实现的功能 class LeiFeng { publ

2020-11-27 16:02:55 57 12

原创 代理模式——为他人做嫁衣裳

  代理(Proxy)模式定义:为其它对象提供一种代理以控制对这个对象的访问。  代理(Proxy)模式的两个使用场合:远程代理,为一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。虚拟代理,根据需要创建开销很大的对象,通过它来存放实例化需要很长时间的真实对象,达到性能最优化。安全代理,用来控制真实对象访问时的权限。智能指引,当调用真实对象时,代理处理另外一些事。1.模式的结构  装饰模式主要包含以下角色。Subject类:定义RealSubject和

2020-11-24 14:52:13 26 11

原创 装饰模式——添衣加被

  装饰(Decorator)模式的定义:指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,它属于对象结构型模式。  装饰(Decorator)模式的主要优点有:采用装饰模式扩展对象的功能比采用继承方式更加灵活。可以设计出多个不同的具体装饰类,创造出多个不同行为的组合。  其主要缺点是:装饰模式增加了许多子类,如果过度使用会使程序变得很复杂。  装饰模式的结构与实现:  通常情况下,扩展一个类的功能会使用继承方式来实现。但继承具有静态特征,耦合度高

2020-11-23 14:14:45 40 12

原创 向量学习过程思想总结概括

对向量又有了新的认识,在我们生活的世界中,向量可以组成世界的局部和整体。向量的定义:既有大小,又有方向的量,在物理学称为矢量。任意两个不共线的向量就能确定一个唯一的平面,向量可以存在于一维空间、二维空间或三维空间,向量和标量不同跨越了多个空间维度,而且向量是可以沿着自身移动和平行移动的,所以说确定一个向量后,这个向量理论上可以存在任何地方,位置不一样,向量确是一样的。单位向量:长度等于一个单位的向量。测量一般是先确定单位,后测量长度,而在单位向量这里却可以先测量长度,回头再去看单位,它打破了普通计算

2020-11-15 17:00:37 122 18

原创 阶段性总结-2020年11月8日

  从上一次八月份自考结束开始,到现在已经过去了三个月,这一段时间专注学习英语,计算机都抛在脑后了,最近才重新拾起C#。经过了这么长时间,从前的知识点现在也忘得差不多了,所以打算不看视频,直接看书,再把书上的列子敲一遍,就算过了,尽快进入下一个阶段吧。  这几个月经过大大小小的测试,心态已经不堪重负,前一阵身体还出了问题,好想回到上半年的学习生活。自从疫情在家呆了两三个月后,再回到壹佰突然就能专注学习计算机了,但是没多久就被召集学习英语。我们这个英语学习历程真是坎坎坷坷,学习方案一改再改,突然之间就转换学

2020-11-08 14:37:34 157 12

原创 C#结构体和类的区别

结构体(struct)是类(class)的轻量级版本。结构体是值类型,可用于创建行为类似于内置类型的对象。比较结构体和类共享许多特性,但与类相比有以下局限性。结构体不能有默认构造函数(无参构造函数)或析构函数,构造函数中必须给所有字段赋值。 public struct Coords { public double x; public double y; public Coords() //错误,不允许无参构造函数 { this

2020-10-31 14:25:02 96 18

原创 C#重载和重写

什么是重写(override)?“重写”是指“覆盖在某物之上”=“覆盖”。这是一个与继承密切相关的功能。重写应重新定义父类方法。当您要更改继承的类中父方法的处理时使用。public class Sample{ public virtual void Test() { // 处理A }}class Sample2 : Sample{ public override void Test() { // 处理B }}在上述情况下,由于Sample2类继

2020-10-26 20:43:02 118 31

原创 第二次自考总结

第二次自考结束了,本次自考通过集体番茄的学习方式提高了效率,希望能有一个好的成果吧。这次考的是网络经济与企业管理,数据库原理,软件开发工具。后面两科都是比较贴近我们计算机学习的科目,因此学习起来比较的轻松易懂,而网管困难点就在于根本书都有知识点,知识点很密集,要记的东西非常的多。米老师指导我们通过思维导图的方式来记忆串联整本书的知识点,给他们找联系,这样从上到下一直有关联,就不容易忘记。我们想到了很多做思维导图的方式,比如说是用利用它们的谐音,还有利用他们的发展规律和自己独创的记忆方法,把知识点总结成几句

2020-10-20 09:08:05 85 24

原创 《数据库原理》思维导图总结

自考学习首先是看完整本书再画导图,然后再看章节画导图,最后看小节画导图,下面是第一次的导图,后面的下来再贴上来。

2020-10-04 21:24:41 138 26

原创 《网络经济与企业管理》自考学习心得

  最近学习《网络经济与企业管理》,从整本书到章节,再到小节都一一画了导图。今天又回顾了以下之前的导图,发现有很多能修改的空间。我们说学习是一个反复的过程,学会1+N很重要,否则变成狗熊掰棒子,一路学一路忘。适时回顾并完善之前的导图是很有必要的,所以我从今天开始完善,下面就是今日完善的部门,后面的导图会再继续贴上来:...

2020-09-27 21:28:36 119 30

原创 C#总结导图

  学习C#有一段时间了,感觉和之前的VB很大程度上都相似,但是相比面向过程的VB,面向对象的C#在内容上有很大程度上的扩充。一下是我第一次的导图,只是简单的罗列,后面的导图以后再贴上来。...

2020-09-20 10:18:53 94 28

原创 SQL语句大全,所有的SQL都在这里

学习英语有一段时间了,最近举行了保级赛,我的成绩不太理想,还有更多的发挥空间,没能晋级到大师赛和王者赛,十分遗憾,但是听说还设有复活赛,我一定要把握这个机会。

2020-09-17 14:32:23 254 25

原创 米新江语录整理2020年8月20日-2020年9月10日

2020年8月20日1.只要出了结果就是过去的事情。2.凡是有道理的事都特别简单。 3.何为良师:1.级别高十级。2.工资高十倍。3.文章发了十倍。2020年8月22日1.连自己都不能夸奖,能夸奖别人吗?2.讲“水货”就是讲道理,水有方向;而干货让你跑的快,两者缺一不可。3.全面发展,切忌偏颇。2020年8月23日1.好学近乎知,力行近乎仁,知耻近乎勇。(当听说了)2....

2020-09-13 20:35:18 159 25

原创 关窗事件—系统性思维思考,让你更有深度地思考

转载自公众号:知识运营中心https://mp.weixin.qq.com/s?src=11&timestamp=1598253052当线性思维已经看不清问题背后的复杂变化;当结构化思维已经看不到问题在历史长河中的持续演化……这是一个复杂的、动态变化的、持续演化的、混沌的世界,只有用系统性思维才能更有深度地思考,才能真正实现全局思维,能够透过问题看到未来的演变历程,培养出真正的大智慧。那么,什么才是系统性思维呢?首先,我们来看什么是系统百度百科上说:系统一词创成于英文system的

2020-08-24 15:25:46 298 23

原创 安全会议心得—无规矩不成方圆

今天纪老师和16期、15期的师哥一起给我们开了一场有关安全理念的会议。这种会议几乎隔几个月就要开一次,无规矩不成方圆,有时候不是人制定了规矩,而是规矩塑造了人。前一阵子我家门口塞满了东西,我临时把电车停在了电梯旁,原本这地方没人停车,当天晚上就有人和我并排停了一辆电车,他家门口没堆东西。人的恶习太容易培养了,我赶紧把门口收拾出来,把电车挪走了,邻居的电车也很自然的回到应该停放的地方。米老师常常说熵增,熵的物理意义是体系混乱程度的度量,熵增是一种规律,宇宙一切的事物都是由简到繁易,由繁到简难,好比一个杯子碎

2020-08-20 18:42:07 128 18

原创 第一次自考学习总结《运筹学》《管理经济学》《计算机网络原理》

  当初我报名自考的原因很简单,仅仅是因为提升一下学历,最起初是因为在网上瞎逛,我逛知乎有一年多了,这里的环境真是人均精英,尤其这个地气氛很特别,喜欢划分人群,前一阵子刚看了如何看待专科生的问题,回答普遍认为专科生就是不自律的一种体现。尤其是现在本科生遍地走的,专科生不如狗的时代。确实,现在找工作就是有学习门槛,相亲也看你学校出身,甚至在电梯看到的广告——小教班孩子的父母学历高的都比学历低的优惠好几千块钱。到2020年8月18日第一次自考成绩出来了,最难的一科得了69分,最简单的一科得了73分。截止第一次考

2020-08-19 21:31:03 181 14

原创 音标学习

音标的学习已经有一段时间了,总的来说收获非常的大,我从小没有接触过音标的学习,现在几乎是从头开始。难得的是一开始就取得了较好的成就,我掌握了所有音标的读法,只是还需要一些后期的熟练。现阶段的音标学习,不为别的,只是为了让我们更好的去听那些资料中的单词发音。不过,这也是给我们能说纯真英语打基础,同样需要我们认真的去对待。在这几天的学习中,尤其是小组之间的相互帮助和鼓励,我的音标学习可以说是突飞猛进,一些本来不注意的小细节,让我读的更加标准,甚至比外国人还要标准。现在每一天的学习,学到的不仅是知识,更是在

2020-08-08 13:50:43 117 18

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除