设计模式之装饰模式

问题的引出人们日常生活中所使用的手机是不断迭代的、不断产生新功能的。初代的座机,只能打电话。如今手机经过了发展,又产生了很多功能,如听音乐、看视频等。将手机当做一个产品类,如果我们要实现这一模型的话,若采用一般继承的方式来构造的话,无疑会产生很多类。如下:interface ITelepho
...
阅读全文

设计模式之工厂方法模式

使用工厂模式创建对象时,我们不需要对客户端暴露创建逻辑,只需要通过一个共同的接口(工厂)来创建即可,从而使得代码简洁易懂。工厂方法模式中有以下几个元素:产品:要创建的对象工厂:用于创建产品的媒介在介绍工厂方法模式之前,先介绍一下简单工厂简单工厂的实现十分简单:共同的产品接口
...
阅读全文

设计模式之动态代理

动态代理和静态代理同属于代理模式。所不同的是,在Java中,动态代理的代理者对象是由Jdk给我们提供的。以上次租房为案例,真实角色和共同接口如下:// 共同的接口 interface Rent{ abstract void rentHouse(); } // 真实对象 class Person
...
阅读全文

vim插件vundle实战

vim添加Bundle(vundle)插件管理工具Vundle(https://github.com/VundleVim/Vundle.vim)的全称是Vim Bundle,它是一款Vim插件管理工具。Vundle让你可以非常轻松地安装、更新、搜索和清理Vim插件。它
...
阅读全文

MongoDB设置密码登录

1.创建user administrator> use admin > db.createUser( { user: "myUserAdmin", pwd: "abc123", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
...
阅读全文