摘要:
策略模式:定义了算法族,分别封装起来,让他们之间可以相互替换,次模式让算法的 变化独立于使用算法的客户。point1:针对接口编程,而不是针对实现编程point2:多用组合,少用继承point3:使用委托“delegate”简单需求定义:这是一个RPG游戏,游戏中提供多种人物角色供你选择,每个角色都有自己特定的武器。角色:骑士(长矛),剑客(长剑),刺客(匕首)使用设计模式:定义基础角色类: 1 package com.pattern.strategypattern.character; 2 3 import com.pattern.strategypattern.behavior.Figh. 阅读全文
摘要:
在本科我们做项目的时候总是会碰到这样的一种需求:当前用户查看各自相册列表,相册显示10张照片(为了方便讨论如何优化,这里只讨论当前一个用户的一个相册),在相片的下方显示该相片的评论数。好了,这种类似需求颇为常见,大部分的人都会采用下面这种非常合理的做法。分两步进行:(1)select photo_id,photo_title,photo_url fromphoto whereuser_id = ? limit 10 选出当前用户第一页相册信息(2)对于(1)的结果,对于photo_id进行循环操作 select count(*) from photo_comment where photo_i 阅读全文
摘要:
Mysql的系统架构可以简单的分成两个层次(1)sql Layer(2)Storage Engine Layer对于Mysql我们知道他支持多种存储引擎,常见的哟MyISAM,InnoDB等等我们来简单看一下Sql Layer中都有那些模块,先简单的介绍一下各个模块,再通过一个流程图来简单说明一下mysql系统架构下各个模块是如何协同工作的1.初始化模块buffer,cache,系统变量2.核心api数据结构,特殊算法,str处理,数字处理,文件I/O,格式化输出,MEM cntl3.网络交互模块底层网络交互模块抽象出网络底层数据的发送和接收所需要的api,被其他模块调用4.Client&am 阅读全文