zoukankan      html  css  js  c++  java
  • node

    前言

    1. 不废话直接官网下载安装
    2. windows安装很简单,双击ok. 完成后命令行输入node -v. 会提示版本号,说明安装成功(Node.js 还自动附带安装了 npm,类似ruby的gem)。
    3. linux安装。对于linux我是菜鸟,并且安装要麻烦一些,俺废了一天的劲终于在centos下安装完成。后来一问才知道人家大神都是直接命令行的那种系统,瞬时崩溃了。 大概总结下来就是:注意python的编译环境,时刻注意自己的权限够不够。

          4. sublime text  一个灰常不错的编辑器.   使用入门

           

    开始干活

           1. 来个helloworld      

               创建test.js   输入:console.log('hello world');  

               打开命令行到你的当前目录(test.js所在目录),执行  node  test.js   回车。

               如下图所示  

           

            2.  $ node -e "console.log('Hello World');"

                 Hello World

            3.   $ node

                >console.log('hello world');

                Hello World

                undefind

                需要注意的地方:第一句话是打印的结果,第二句话是说函数返回值。

            4.  创建httprequest如此简单   

                a. 新建test1.js.  拷贝如图代码, node test1.js.    

                b. 打开浏览器,输入   http://localhost:3000/  可以看到效果。web版hello world.

                                                    

    复制代码
    var http = require('http');
    
    http.createServer(function(req,res){
      
      res.writeHead(200,{'content-type':'text/html'});
      res.write('<h1>Node.js</h1>');
      res.end('<p>hello world</p>');
    }).listen(3000);
    
    
    console.log('http server is listening at port 3000');
    复制代码

                  这个模块中第一句话 require('http').  是应用node.js中的http模块。 凡是node.js提供的模块均可以直接require. 

            

            5. 通过上面运行,可以看到和asp.net 有一些不同。 asp.net 是通过浏览器发出请求->IIS->解析渲染成html返回。 而node则直接面向浏览器。

    总结

             1. node.js不是javascript库,和jquery、extjs不能相提并论。node.js是让脚步运行在服务端的平台.

           2.  npm是node.js包管理器,可以全局安装,也可以只安装到工作目录。重复利用的一般选择全局安装,而本地安装则一般是当前程序使用。

           3.  在windows下安装,会在自动配置环境变量。所以可以直接输入node命令。

           4.  第三方包够不够多:

                        (npm)Total Packages: 49 639

                   node.js够不够活跃

    1 154 560 downloads in the last day
    29 060 396 downloads in the last week

            5. node.js架构:  说实在的这张图我看到node下层接口,在向下就看不懂了,V8我还知道一些,google浏览器就是基于v8引擎开发,而javascritp在google运行良好,所以我也更好的理解了node.js。

                                            来自Node.js开发指南

               5. 事件驱动,异步:

                   a. nodejs内部是单进程,单线程的方式运行。nodejs通过单线程维护一个事件循环队列来应对http并发的访问,同时也避免了进程/线程之间的切换。那么对未来服务器的多核时代、甚至是众核nodejs是怎么处理的。我的理解是nodejs调用C++代码,c++代码实现多线程,这样暴露api供nodejs使用者调用,实现充分利用cpu。后来看到文章(nodejs多线程,真正的非阻塞),更坚定了学习node的信心。

                   b. 放眼望去全是callback.   同步和异步就是 m+n  和  max(m,n)。这样node.js开发就要求我们转换开发思路。

               6. 为什么要趁热,看很多资料发现都调试不过,我就各种查询也了解了很多知识,才可以调试通过。

               7.  node擅长干什么,不擅长干什么?

                   nodejs为网络而生,剩下的就不用说了。

                   nodejs不适合做什么? (以下内容来自nodejs开发指南)

                   a. 计算密集型的程序

                   b. 单用户多任务型应用

                   c. 逻辑十分复杂的事务

                   d. unicode与国际化

                8. 有问题还是去 stackoverflow 

                9. 中文资料汇总

    参考资料:

                深入浅出node.js

                node.js学习指南

    下一站:

                 使用express创建一个网站,数据库使用mongodb.

                 模板使用ejs. 

                 

  • 相关阅读:
    JMeter压力测试入门教程[图文]
    从技术转管理的困惑
    APP纯黑盒测试—某些可以试试的操作
    测试网站访问速度的方法(GTmetrix)
    【转】web测试技术经典案例(基础、全面)
    【转】H5页面的测试点总结
    【转】测试思考之——思想有多远,你就能走多远
    【转】测试趋势之我的观点
    线程学习一
    继承log4.net的类
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3461123.html
Copyright © 2011-2022 走看看