UML类图关系:继承、实现、依赖、关联、聚合、组合

学习自:UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别 和 《UML和模式应用》

继承

一个类继承另外一个类,或者一个接口继承了其他接口。

1
2
3
@startuml
ClassA <|-- ClassB
@enduml

Read more...

2014-03-27 UML

JSONP是如何实现跨域请求的?

学习自:说说JSON和JSONP,也许你会豁然开朗,含jQuery用例

条件


  1. 由于JS的同源策略限制,无法通过AJAX向其他域发送请求;
  2. 凡是拥有”src”这个属性的标签都拥有跨域的能力,比如<script><img><iframe>
  3. JS可动态为当前DOM结构增加和删除节点;
  4. 当浏览器请求一个JS文件时,会执行请求返回的内容。

Read more...


MySQL查询优化学习

学习自《高性能MySQL 第三版》和网络资源

一张图了解MySQL执行SQL语句过程:

是否向数据库请求了不需要的数据


  • 查询了不需要的记录
  • 多表关联时返回全部列
  • 总是取出全部列

解决方案:1、使用 LIMIT;2、避免使用 *,从而有机会使用索引覆盖查询。


Read more...

2014-03-20 MySQL查询优化

MySQL EXPLAIN学习

参考自:Mysql Explain 详解EXPLAIN Output Format

EXPLAIN 列输出解析:

id


SELECT 标识,是执行 SELECT 的顺序。该值可以为 NULL ,如果是引用了 union 的结果。在这种情况下,table 列的值应该像<unionM,N>,表示被 union 的行的id值为 M 和 N。


Read more...

2014-03-18 MySQL查询优化

MySQL Index学习

学习自《高性能MySQL 第三版》和网络资源

索引是存储引擎用于快速找到记录的一种数据结构。

在MySQL中,索引是在存储引擎层而不是服务器层实现的。因此,不同存储引擎的索引的工作方式不一样,所支持的索引类型也不同。

mysql architecture


Read more...

2014-03-16 MySQL索引

进程调度算法

非抢占方式


批处理系统:

先来先服务(FCFS)

基于时间片的轮转调度算法

将就绪进程按先来先服务的原则排成一个队列,每次调度时,把CPU分配给队首进程,并令其执行一个时间片(从几ms到几百ms)。当执行时间片用完时,由一个计数器发出时钟中断请求,调度进程便根据此信号来停止该进程的执行,并将它送往就绪队列的末尾;然后,再把处理机分配给就绪队列中新的队首进程,同时也让它执行一个时间片。


Read more...

2014-03-12 进程

推荐系统学习

参考自网上许多资料,维基百科,IBM Developer三篇文章,《WEB智能算法》

基础数学知识


  • 加权平均数\overline{x} = \frac{\sum_{i=1}^{n}w_ix_i}{\sum_{i=1}^{n}w_i}
  • 方差:在概率论和统计学中,一个随机变量的方差描述的是它的离散程度,也就是该变量离其期望值的距离。s^2 = \sum_{i=1}^{n}p_i \cdot (x_i-\bar{x})
  • 标准差:又常称均方差,反映组内个体间的离散程度。s = \sqrt{\sum_{i=1}^{n}p_i \cdot (x_i-\bar{x})}

数据归一化



Read more...

2014-03-05 WEB智能算法