六月过了将近2个星期了,马上要期末考试了,就没有多少心情去写一些自己感兴趣的东西了.这个模型是我很早就想去做的,因为网上吹捧NodeJS很过分.貌似到了膜拜的境地,虽然对JavaScript并不是很感冒,但作为圈子里的人,也是要看一下的.所以就有了前一篇文章《初识NodeJS》
其中,我就对NodeJS的事件机制有了兴趣,因为从来没有想过代码可以这样写,完全基于事件进行编写,虽然之前在写SWING,AWT等程序的时候,会有事件概念,但像NodeJS一样完全架构于事件只上的代码,确实没有编写过。
比如说,我们常见的读取文件的代码,如果是Java顺序读写,我们会这么写:public static void main(String[] args) throws IOException {
File file = new File("info.txt");
BufferedReader reader = new BufferedReader(new FileReader(file));
String data = "";
while (!(data = reader.readLine()).equals("null")) {
System.out.println(data);
data = "";
}
reader.close();
}
但是,如果我们细看这段代码,如果需要你基于事件驱动进行编写,你会怎么去写?事件需要尽可能的细化,以至于可以在单线程环境下快速执行。也就是类似于操作系统中,时间片的大小选择。
我们可以从中看