设计模式
AI让世界更懂你
计算机科学与技术专业博士,主要研究方向为人工智能、自然语言处理、大规模语言模型和对话系统等。曾与微软小冰、微软小娜共同工作。兴趣广泛,包括并不限于人工智能,心理学,认知科学,语言学,数学,天文学等。让我们一起和AI,改进世界!
展开
-
设计模式之观察者模式(1)
今天,我们就介绍一个很简单的设计 模式,叫做观察者模式。什么叫做观察者模式呢。所谓的观察者模式,就是牵一发而动全身。没错,就是你把你的敌人关了起来,并且派兵把守着,只要敌人有什么动静。你的士兵一定会第一时间做出反应。这就使观察者模式。其实,在C#语言里,这种模式的机制,可以用委托来进行实现。但是在java里,则是直接在工具类中有观察者模式类,可以很方便的让我们实现观察者模式。下面,原创 2016-05-25 21:21:24 · 647 阅读 · 0 评论 -
从代理模式到IOC/AOP
业务代理模式,也成为代理者模式。它的核心思想即使用一个通用接口包装一个功能接口,这样,外部访问此功能时,可以在通用接口的代理这里先预处理一部分内容,然后再去执行功能接口。如果是一个通用接口对一个功能接口,那么这是代理者模式,如果是一个通用接口对应N个功能接口,那么就比较像工厂模式了。工厂模式的优缺点也很明显,优点一是通用接口单一便于权限管理。优点二则是实现代码简洁,易于更换。但是,缺点也有两个原创 2016-07-17 10:23:41 · 1809 阅读 · 0 评论 -
从TabletoList到Xml、Json序列化
在日常的使用中,经常需要持久化数据,那么数据来源纷繁多样,有可能来自SQL的,有可能来自文件的,有可能是来自XML或者JSON格式的(通常这类是从网上获得的),那么真的每次都要一点一点写么?答案当然是否定的。单单从SQL方面来讲,无论是熟悉的Hibernate还是流行的Mybatis,都是非常好的SQL_ORM框架。可是如果只是一个很小型的项目,需要这么大动干戈的使用这种吗?比如只是用来做原创 2016-09-03 18:33:49 · 542 阅读 · 0 评论 -
设计模式基础——抽象类、抽象方法、接口与虚方法
抽象类定义:不能初始化的类被叫做抽象类,它们只提供部分实现,但是另一个类可以继承它并且能创建它们。抽象类的功能:为子类提供功能约束。与接口不同的是它还有其他普通方法、成员变量等。样子,以abstract修饰:public abstract class A { //这是一个抽象类 }可包含成员:普通方法、抽象方法、构造函数、成员变量(变量、常量)原创 2017-12-06 17:02:02 · 1048 阅读 · 0 评论