随笔 | 寻路人

java中的IO模型

IO 所谓的 I/O 就是计算机内存与外部设备之间拷贝数据的过程 我们知道 CPU 访问内存的速度远远高于外部设备,因此 CPU 是先把外部设备的数据读到内存里,然后再进行处理。请考虑一下这个场景,当你的程序通过 CPU 向外部设备发出一个读指令时,数据从外部设备拷贝到内存往往需要一段时间,这个时候 CPU 没事干了,你的程序是主动把 CPU 让给别人?还是让 CPU 不停地查:数据到了...

23种设计模式-命令模式

Command模式 命令模式 Intent/目的 将请求封装为对象,从而允许您使用不同的请求为客户端参数化、排队或记录请求,并支持可撤销的操作。 Also Known As Action,Transaction Motivation/动机 有时候,需要向对象发出请求,而不知道所请求的操作或接收请求的对象的任何信息。例如,用户界面工具包包括按钮和菜单等对象,以响应用户输入执行请求。但...

23种设计模式-代理模式

Proxy模式 代理模式 Intent/目的 提供另一个对象的替代品或占位符,以控制对它的访问。 Also Known As Surrogate/替代品 Motivation/动机 控制对一个对象访问的一个原因是,将其创建和初始化的全部成本延后,直到我们实际需要使用它时再进行。考虑一个可以在文档中嵌入图形对象的文档编辑器。一些图形对象,比如大型光栅图像,创建起来可能非常昂贵。但是...

23种设计模式-享元模式

Flyweight模式 享元模式 Intent/目的 使用共享来有效地支持大量的细粒度对象。 Motivation/动机 一些应用程序可以通过在其设计中贯穿使用对象来受益,但是一个简单的实现会代价昂贵到令人望而却步。 例如,大多数文档编辑器实现都在某种程度上模块化了文本格式化和编辑功能。面向对象的文档编辑器通常使用对象来代表嵌入的元素,如表格和图形。然而,他们通常不会为文档中的每一...

科学记忆

科学记忆 学习金字塔 具体来讲,你可以做以下几件事情: 主动上台讲课(如果你们老师有这种学生讲课的活动环节); 给其他同学讲题; 做ppt演示和分享; 自己编写小教材(解题经验、方法等); 费曼技巧 1、拿张白纸; 2、在白纸顶部写上你想理解概念; 3、用你自己的话解释它,就像你在教给别人一样。 4、遇到解释不了的地方,就通过查课本、问老师、或到互联网搜寻答案。 5、1-4...

7个习惯(转载)

7个习惯 原文链接 史蒂芬·柯维(Stephen R. Covey)美国著名管理学大师,入选美《时代周刊》“影响美国历史进程的25位人物之一”,是美国家喻户晓的启蒙家。柯维在领导理论,家庭与人际关系,个人管理等领域久负盛名。在美国乃至全世界,其思想成就,绝不亚于杰克·韦尔奇、卡内基、巴菲特、德鲁克中的任何一位。天地之大,愈衬得人如蝼蚁,踽踽独行数十年,仓皇期间。有限的生命,如何装下诸多丰...

23种设计模式-外观模式

Facade模式 外观模式 Intent/目的 提供一个统一的接口给子系统中的一组接口。Facade定义了一个更高级别的接口,使得子系统更容易使用。 Motivation/动机 将系统分为子系统有助于降低复杂性。一个常见的设计目标是最小化子系统之间的通信和依赖关系。实现这一目标的一种方法是引入一个外观对象,它提供了一个简化的接口来访问子系统的更一般的功能。 例如,考虑一个编程环...

Mysql 索引删除后,磁盘文件没有变化?

Mysql 索引删除后,磁盘文件没有变化? 今天碰到一个问题,线上数据库磁盘文件快满了,最后定位发现某张表的索引文件过大,里面有6个索引!!打算清理一下释放一下磁盘空间。可以没想到的是索引删除之后磁盘占用丝毫没有降低。这个就离了个大谱了!! 然后自己做了个实验: 首先创建一个测试表your_table_name -- 创建表 CREATE TABLE your_table_name (...

© Poul.Y. 保留部分权利。