首页 > 代码库 > Node 即学即用 笔记 思维导图

Node 即学即用 笔记 思维导图

Node即学即用
  REPL(Read-Evaluate-Print-Loop)
    console.log
    .clear .help .exit
    require(‘http‘) createServer
  聊天服务器
    tcp服务器
      require(‘net‘)
        on connection
        on data
        on end
        on error
      telnet
    express
      app.get
      app.post
      -app.js -public -views ----partials
      EJS模板语言
  测试
    require assert
      assert.strictEqual
  健壮的Node
    事件循环
      require events EventEmitter
      如果长时间处理数据,分配给web worker
    模式
      用一个闭包把所有回调函数都包含进去
      function(req,res,next)传递状态
    使用多处理器
      集群 require cluster
        require(‘os‘).cpus().length isMaster fork() on death
        process.send worker on message
  核心API
    所有的模块名称都是小写的
    EventEmitter
      utls.inherits(xx,EventEmitter)
      emit最好不超过3个参数(速度快)
      EventEmitter改变了上下文,注意this的传递
    Http
      createServer
      request
      get
      req.write,req.end 发送PUT POST
    URL
      parse
        href protocol host auth hostname port pathname search query hash
      format
      resolve
    querystring
      parse 传入参数不要带?
      encode
    I/O
      readFile
      unlink
    Buffer
  工具类API
    DNS
      resolve
      reverse
      lookup
    加密
      crypto.createHash
      HMAC
    进程
      process  on exit on uncaughtException
      process.version process.installPrefix process.platform process.uptime
      process.nextTick
      child_process exec spawn
    虚拟机
      require vm runInNewContext runInThisContext
      对比eval,vm不能与本地作用域互动
  数据访问
    CouchDB
    Redis
    MongoDB
    PostgreSQL
    RabbitMQ
  外部模块
    Express
      路由
      中间件http-Connect-Express
    模板引擎
      Jade
      Haml
      jQuery
      CoffeeKup
    Socket.IO
  扩展Node
    commonJS标准
  npm包管理