2014年5月28日
摘要: http://tomycat.github.io/blog/other/2014/05/28/use-google-chrome-capture-data.html 阅读全文
posted @ 2014-05-28 00:55 wewe.Tom 阅读(282) 评论(0) 推荐(0) 编辑
  2013年7月14日
摘要: 什么是命令式编程 (Imperative Programming)?命令机器如何做事情,强调细节实现java、c、c++等都属此类。“这些语言的特征在于,写出的代码除了表现出“什么(What)”是你想做的事情之外,更多的代码则表现出实现的细节,也就是“如何(How)”完成工作。这部分代码有时候多到掩盖了我们原来问题的解决方案。比如,你会在代码里写for循环,if语句,a等于b,i加一等等,这体现出机器如何处理数据。”什么是声明式编程(Declarative Programming)?声明式编程告诉机器做什么,至于怎么做到的,你可以不用管。代表语言:prolog 特点:你只需向它提供一些事实(. 阅读全文
posted @ 2013-07-14 19:30 wewe.Tom 阅读(793) 评论(0) 推荐(0) 编辑
  2013年7月1日
摘要: 递归上一篇blog里,用js实现了quicksort算法,quicksort算法是一个递归调用过程。递归是一种非常强大的编程思想,它广泛的的存在于各种语言当中,尤其lisp的各种方言中,大量的使用递归来实现循环操作。还有一本小书叫《The litter schemer》,就是让编程的人递归的思考问题(thinking recursively)。本篇呈接上篇,是对递归思想的实践——在学习常见的算法的同时,运用递归思想。理解了递归思想,以前觉得挺难的算法也觉得不是想象的那么难了。mergsort in javascript最简单的情况是对两个元素的数组排序;如果两个数组已经排序好了,那么,再将这两 阅读全文
posted @ 2013-07-01 23:06 wewe.Tom 阅读(716) 评论(0) 推荐(0) 编辑
  2013年6月30日
摘要: 一个数组,比如:[3,9,2,1,5,4]取出某个元素(比如第一个元素3);将除3之外的元素元素分为两组,小于(less than)等于(equal)3的为一组,[1,2],记为lt,大于(greater than)3的为一组[4,5,9] ,记为gt;对lt 和 gt 重复上面的步骤——快速排序是一个递归过程(recursive);将最终的结果合并。用js来描述就是: // list that greater than n function listgt(list,n){ return list.filter(function(m){ return m > ... 阅读全文
posted @ 2013-06-30 22:17 wewe.Tom 阅读(1311) 评论(0) 推荐(0) 编辑
  2013年4月21日
摘要: GruntFile.js配置难度跟xml有得比。所有学习难度,带来的好处是高度控制,GruntFile里面就是js逻辑控制,一次配置完毕后,后面就不用痛苦了除了有GruntFile.js文件,还有一个package.json——这个是给npm用的,快把人搞晕啦 一般package.json是面向nodejs包开发者的,要开发自己的包,才会写一个package.json文件。这样一来,就增加了 使用者的门槛。设想一个平时不怎么用node.js的人,要使用grunt就要经历这个过程安装node/npm(略)grunt环境配置npm install grunt-cli -g配置package.jso 阅读全文
posted @ 2013-04-21 10:35 wewe.Tom 阅读(200) 评论(0) 推荐(0) 编辑
  2013年3月30日
摘要: 在做nodejs命令行工具的时候,需要以编程的方式来操作less文件: 一个最简单的demo如下:var less = require('less')var parser = new less.Parser() , cssstring = "" + "@color:red;" + "div{color:@color;}"parser.parse(cssstring,function(err,tree){ if(err) throw err var css try{ css = tree.toCSS() co... 阅读全文
posted @ 2013-03-30 21:00 wewe.Tom 阅读(209) 评论(0) 推荐(0) 编辑
  2013年3月21日
摘要: Table of Contents1 类型判断2 备注1 类型判断KISSY封装了 几个判别函数, KISSY.isXxx形式的:isDateisEmptyObjectisFunctionisNullisNumberisObjectisPlainObjectisRegExpisStringisUndefinedisWindow它们形式一致,所以能不能合并成一个函数呢?像下面这样调用:is(new Date,'date')is([],'array')答案是可以的:// -*- coding: utf-8; -*-function is(o, type) { var 阅读全文
posted @ 2013-03-21 09:11 wewe.Tom 阅读(8141) 评论(0) 推荐(0) 编辑
  2012年9月15日
摘要: 反向代理反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。好处能用一个端口跑多个应用:比如nginx做前台服务器,监听80端口,所有请求都首先经过nginx,,然后nginx将请求转发给node服务器 node服务器可以有多个,比如9000一个,9001一个,等等黄金搭档Nodejs + forever + node-http-proxy也可以直接用node做前台服务器,而不用Nginx做服务器。前台服务器一个最 阅读全文
posted @ 2012-09-15 16:50 wewe.Tom 阅读(4407) 评论(0) 推荐(0) 编辑
  2012年9月3日
摘要: 如果你需要在多台电脑之间同步emacs配置文件,或许你的.emacs.el文件太大了,这时你大概需要尝试一下Babel in org-mode下载org-mode http://orgmode.org/org-mode-download.html解压缩后放到比如说这里 ~/.emacs.d/org-7.9-3/配置~/.emacs.d/init.el文件(add-to-list 'load-path "~/.emacs.d/org-7.9-3/lisp")(require 'org-install)(require 'ob-tangle) ;; 你可 阅读全文
posted @ 2012-09-03 19:37 wewe.Tom 阅读(388) 评论(0) 推荐(0) 编辑
摘要: Piecon 是一个精巧的js库,用来制作动态的faviconsee大概的原理是这样的:一个网站会有一个favicon,可以在网页代码中加入这样一个标签来定义: <link rel="icon" href="favicon.ico" type="image/x-icon">这个link标签的href="favicon.ico"可以动态改变成base64编码的图片文件,利用高级浏览器的canvasAPI可以绘制一个饼图,动态更新link 的href属性就实现了动态的展现Date: 2012-09-03T1 阅读全文
posted @ 2012-09-03 18:23 wewe.Tom 阅读(240) 评论(0) 推荐(0) 编辑