摘要: 定义:LINQ(读音link)代表语言集成查询(Language Integrated Query),是.NEt框架的扩展,它允许我们用SQL查询数据库的方式来查询数据的集合,使用它,你可以从数据库、程序对象的集合以及XML文档中查询数据 // See https://aka.ms/new-cons 阅读全文
posted @ 2023-05-18 16:37 KevinSteven 阅读(48) 评论(0) 推荐(0)
摘要: 定义:通过参数化类型来实现在同一份代码上操作多种数据类型的技术。利用“参数化类型”将类型抽象化,从而实现灵活的复用。 优点 1、提高了代码的复用性 2、提高了性能,指定类型,解决了类型的转换,避免了拆箱与装箱 3、比较安全 格式:声明一个泛型的方法,方法名后面需要一个<T>,其中字母T不是固定的,可 阅读全文
posted @ 2023-05-11 20:53 KevinSteven 阅读(19) 评论(0) 推荐(0)
摘要: 定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 适用场景:建造者模式是在当创建复杂对象的算法,应该独立于该对象的组成部分以及它们的装配方式时适用的模式。 示例代码: /// <summary> /// 建造者 /// </summary> abstract clas 阅读全文
posted @ 2023-03-04 23:44 KevinSteven 阅读(35) 评论(0) 推荐(0)
摘要: 定义:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 应用场景: 1、在设计初期阶段,应该要有意识的将不同的两个层分离。 2.在开发阶段,子系统往往因为不断的重构演化而变得越来越复杂。 3.在维护一个遗留的大型系统时,可能这个系统已经非常难以维 阅读全文
posted @ 2023-03-04 23:07 KevinSteven 阅读(22) 评论(0) 推荐(0)
摘要: 迪米特法则也叫最少知识原则 定义; 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。 迪米特法则首先强调的前提是在类的结构设计上,每一个类都应当尽量降低成员的访问权限。迪米特法则的根本思想,是强调了类之间 阅读全文
posted @ 2023-03-04 22:42 KevinSteven 阅读(33) 评论(0) 推荐(0)
摘要: 定义:代理模式(Proxy),为其他对象提供一种代理以控制对这个对象的访问 应用: 1.远程代理,也就是为一个对象在不同的地址空间提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。 2.虚拟代表,是根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真实对象 3.完全代理,用来控制 阅读全文
posted @ 2023-03-04 22:21 KevinSteven 阅读(263) 评论(0) 推荐(0)
摘要: private void btn_OutExcel_Click(object sender, EventArgs e) { string localFilePath = ""; string fileName = "库存信息" + DateTime.Now.ToString("yyyyMMdd"); 阅读全文
posted @ 2022-06-09 17:04 KevinSteven 阅读(49) 评论(0) 推荐(0)
摘要: Thread thread = new Thread(ThreadStartUpdate); thread.IsBackground = true; //设为后台运行 thread.Start(); //开始线程 private void ThreadStartUpdate() { string e 阅读全文
posted @ 2022-04-21 17:10 KevinSteven 阅读(33) 评论(0) 推荐(0)
摘要: /// <summary> /// 1现金收费抽象类 /// </summary> abstract class CashSuper { public abstract double acceptCash(double money); } /// <summary> /// 2返利收费子类 /// 阅读全文
posted @ 2022-04-02 10:36 KevinSteven 阅读(60) 评论(0) 推荐(0)
摘要: class Program { static void Main(string[] args) { #region v0.1 //ConcretePrototypel pl = new ConcretePrototypel("1"); //ConcretePrototypel c1 = (Concr 阅读全文
posted @ 2022-04-02 10:18 KevinSteven 阅读(41) 评论(0) 推荐(0)