月度归档:2015年09月

前端开发 Grunt 之 Connect – 冠军

在前端开发过程中,我们需要在开发过程中,将开发中的站点部署到服务器上,然后,在浏览器中查看实际的效果,在 Grunt 环境下,可以直接使用集成在 Grunt 中的 Connect 插件完成站点服务器的支持,在开发过程中,直接查看效果。

本文链接:前端开发 Grunt 之 Connect,转载请注明。

本条目发布于。属于.NetWEB分类。作者是
分享到:

前端开发 Grunt 之 Connect – 冠军

在前端开发过程中,我们需要在开发过程中,将开发中的站点部署到服务器上,然后,在浏览器中查看实际的效果,在 Grunt 环境下,可以直接使用集成在 Grunt 中的 Connect 插件完成站点服务器的支持,在开发过程中,直接查看效果。

本文链接:前端开发 Grunt 之 Connect,转载请注明。

本条目发布于。属于.NetWEB分类。作者是
分享到:

创建 Web 前端开发环境 – 冠军

Web 前端开发涉及多种工具,这里将常用工具的安装和配置进行说明,提供了详细的说明,为后继的开发创建一个坚实的基础。本文介绍的工具有:NodeJS, NPM, Bower, Git 和 Grunt。

本文链接:创建 Web 前端开发环境,转载请注明。

本条目发布于。属于.NetWEB分类。作者是
分享到:

创建 Web 前端开发环境 – 冠军

Web 前端开发涉及多种工具,这里将常用工具的安装和配置进行说明,提供了详细的说明,为后继的开发创建一个坚实的基础。本文介绍的工具有:NodeJS, NPM, Bower, Git 和 Grunt。

本文链接:创建 Web 前端开发环境,转载请注明。

本条目发布于。属于.NetWEB分类。作者是
分享到:

使用 Jasmine 进行测试驱动的 JavaScript 开发 – 冠军

Jasmine 为 JavaScript 提供了 TDD (测试驱动开发)的框架,对于前端软件开发提供了良好的质量保证。目前,Jasmine 的最新版本是 2.3 版,这里以 2.3 版进行说明。网上已经有一些关于 Jasmine 的资料,但是,有些资料比较久远,已经与现有版本不一致。所以,这里特别以最新版进行说明。

本文链接:使用 Jasmine 进行测试驱动的 JavaScript 开发,转载请注明。

本条目发布于。属于.NetWEB分类。作者是
分享到:

Cuckoo Filter:设计与实现

(感谢网友 @我的上铺叫路遥 投稿)

对于海量数据处理业务,我们通常需要一个索引数据结构,用来帮助查询,快速判断数据记录是否存在,这种数据结构通常又叫过滤器(filter)。考虑这样一个场景,上网的时候需要在浏览器上输入URL,这时浏览器需要去判断这是否一个恶意的网站,它将对本地缓存的成千上万的URL索引进行过滤,如果不存在,就放行,如果(可能)存在,则向远程服务端发起验证请求,并回馈客户端给出警告。

索引的存储又分为有序和无序,前者使用关联式容器,比如B树,后者使用哈希算法。这两类算法各有优劣:比如,关联式容器时间复杂度稳定O(logN),且支持范围查询;又比如哈希算法的查询、增删都比较快O(1),但这是在理想状态下的情形,遇到碰撞严重的情况,哈希算法的时间复杂度会退化到O(n)。因此,选择一个好的哈希算法是很重要的。

时下一个非常流行的哈希索引结构就是bloom filter,它类似于bitmap这样的hashset,所以空间利用率很高。其独特的地方在于它使用多个哈希函数来避免哈希碰撞,如图所示(来源wikipedia),bit数组初始化为全0,插入x时,x被3个哈希函数分别映射到3个不同的bit位上并置1,查询x时,只有被这3个函数映射到的bit位全部是1才能说明x可能存在,

阅读全文

本条目发布于。属于开发分类。作者是
分享到: