Ruby's Louvre

每天学习一点点算法

导航

上一页 1 ··· 62 63 64 65 66 67 68 69 70 ··· 125 下一页

2011年12月13日 #

node.js 后端框架设计构想

摘要: 我打算把我的后端的框架定位为建站框架,本文是我的一些思路与初步实践。如果园子里有做过后端框架的高手(不限语言),也请指教一下。以下是大概的流程。后端的核心文件mass.js包含批量创建与删除文件夹,MD5加密,类型识别与模块加载等功能。现在网站名与网站的路径也还是混淆在里面,以后会独立到一个配置文件中。只要运行node mass.js这命令就立即从模板文件中构建一个样板网站出来。下面就是它建站的最主要代码: //--------开始创建网站--------- //你想建立的网站的名字(请修正这里) mass.appname = "jslouvre"; //在哪个目录下建立. 阅读全文

posted @ 2011-12-13 16:22 司徒正美 阅读(8674) 评论(6) 推荐(2) 编辑

2011年12月12日 #

硬盘挂了

摘要: 这样难得的事我竟然碰上了,500G的大硬盘,意味着我损失了300G的数据,伤不起啊!虽然里面都是动画与CG,但这可以是我花了N长时间积累下来的。这噩梦持续了两个星期,其间重装了三次。都怪我没有先见之明,第一次系统挂掉时就立即搞个移动硬盘把所有数据备份好……早上买了个新硬盘才装上系统,面对空白的E盘,想起我的那些动漫音乐,心碎似绞! 阅读全文

posted @ 2011-12-12 14:42 司徒正美 阅读(1703) 评论(8) 推荐(0) 编辑

2011年12月5日 #

mass Framework在后端的核心模块

摘要: mass Framework前后通吃,后端是基于node.js组建起来。后端与前端不一样,是依赖于node.js内置模块提供的一些API,因此前端那些依赖于浏览器提供的DOM API的模块无法复用。现在掐指一算,基本上核心模块上只有lang, flow能用得上,more则多一点,如random, pinyin, base64, uuid...node.js内置了模块加载机制,这与我在前端使用的API非常不一致,我就再把它包装一层。核心模块与前端的核心模块在其他方法也尽量保持一致,当然像domReady在后端就不需要,去掉。如类型判定,由于是V8引擎,支持ECMA262v5,因此可以写得精简。最 阅读全文

posted @ 2011-12-05 09:49 司徒正美 阅读(1506) 评论(0) 推荐(0) 编辑

2011年12月3日 #

node.js 跨文件的自定义全局对象

摘要: 作为一个框架,我们需要一个跨文件的命名空间作为共享对象,方便所有文件的JS代码都赖以调用其成员。方法很简单,在你第一个JS文件中在global对象设置一个对象就行了。比如mass.js为我们的入口文件global.mass = { name:"mass Framework", description:"the after-end of the mass Framework"}require("./test")console.log(mass.test)同一目录下有一个test.js文件,里面内容很简单:mass.test = &quo 阅读全文

posted @ 2011-12-03 18:22 司徒正美 阅读(4152) 评论(0) 推荐(0) 编辑

node.js 判定是否为Buffer

摘要: Buffer是node.js自行添加的一个全局对象,不用导入模块就可以使用,可以地位与Array, String等原生对象是同等重要。下面是其判定方法:var dom = { isBuffer : function(str){ return str && typeof str === "object" && Buffer.isBuffer(str) } } 阅读全文

posted @ 2011-12-03 00:12 司徒正美 阅读(3391) 评论(0) 推荐(0) 编辑

2011年12月2日 #

FF或将支持返回一个HTML文档对象

摘要: 详见这里:Bug 651072 - Support HTML parsing in XMLHttpRequest per XMLHttpRequest Level 2假想代码:function getDocument (aURL, aCallback) { var xhr = new XMLHttpRequest; xhr.open("GET", aURL, true); xhr.responseType = "document"; xhr.onreadystatechange = function() { if (xhr.readyState === 阅读全文

posted @ 2011-12-02 10:14 司徒正美 阅读(1390) 评论(1) 推荐(0) 编辑

2011年11月29日 #

node.js 热部署

摘要: 在开发过程中,我们太需要Jetty那样的热部署机制,要不修改一点东西就要频频重启服务器,真是烦死人了。在node.js实现这种机制非常简单,首先我们有watchFile,通过它用来监听文件的内容是否被修改,如果修改就让子线程关闭当前线程,并让它重新启动新的线程来处理请求与发出响应。技术点:要监听文件的变动,那么是监听那些目录下的文件呢?何种后缀名的文件呢?子线程相应事件的绑定,线程的关闭,线程的新建。。。首先是监听问题,为了防止硬编程,我们用一个专门的文件来配置这些消息,在javascript,在适合做这种事的是JSON,在node.js有一种叫.json的文件类型。// 位置 ./conf. 阅读全文

posted @ 2011-11-29 12:47 司徒正美 阅读(8310) 评论(6) 推荐(4) 编辑

Ubuntu 安装node.js

摘要: //http://superuser.com/questions/273962/installing-nodejswget http://nodejs.org/dist/v0.6.6/node-v0.6.6.tar.gzgzip -d node-v0.6.6.tar.gztar -xvf node-v0.6.6.tar.gz//开始编译安装node.jscd node-v0.6.6./configuremakesudo make install 阅读全文

posted @ 2011-11-29 02:00 司徒正美 阅读(2306) 评论(0) 推荐(0) 编辑

2011年11月28日 #

node.js 文件操作

摘要: 既然到了后台,只要你有权限就可以为所欲为了!创建文件夹//fs.jsvar fs = require('fs');fs.mkdirSync('a', 0755);fs.mkdirSync('a/b', 0755);fs.mkdirSync('a/b/c', 0755);那么它会在fs.js所在目录中... 阅读全文

posted @ 2011-11-28 09:17 司徒正美 阅读(44235) 评论(12) 推荐(6) 编辑

2011年11月25日 #

node.js 动态执行脚本

摘要: node.js最近新增了虚拟机模块,其实也不能说是新增的,只是把一些内部接口暴露出来罢了,从2.x就有了。我们可以从node / src / node.js看到这些代码:var Script = process.binding('evals').NodeScript;var runInThisContext = Script.runInThisContext; NativeModule.wrap = function(script) { return NativeModule.wrapper[0] + script + NativeModule.wrapper[1]; }; N 阅读全文

posted @ 2011-11-25 18:26 司徒正美 阅读(13667) 评论(2) 推荐(0) 编辑

上一页 1 ··· 62 63 64 65 66 67 68 69 70 ··· 125 下一页