nodejs学习

NodeJS学习记录

匿名 (未验证) 提交于 2019-12-02 23:03:14
记录一下nodejs的学习之路 阻塞I/O:I/O时进程休眠等待I/O完成后进行下一步 非阻塞I/O:I/O时函数立即返回,进程不等待I/O完成 I/O等异步操作结束后的通知 观察者模式 Node.js is a JavaScript runtime built on Chrome's V8 Node.js uses an event-driven,non-blocking I/O model CPU密集:压缩、解压、加密、解密 I/O密集:文件操作、网络操作、数据库操作 前端职责范围变大,统一开发体验 在处理高并发,I/O密集场景( web场景 )性能优势明显 web常见场景 静态资源的获取 数据库操作 渲染页面 增加机器数、负载均衡 增加每台机器的CPU数-多核 进程:是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。 线程:进程内一个相对独立的、可调度的执行单元,与同属一个进程的线程共享进程的资源 多进程:启动多个进程,多个进程可以一块执行多个任务 单线程只是针对主进程,I/O操作系统底层多线程调度 Node单线程并不是单进程(node有一个集群(cluster)模块用来处理多进程,cpu有几个核就启动几个进程) Web Server 本地代码构建(现在前端各种框架、ES6、模块化等的出现,前端代码变得异常的复杂,无法直接在浏览器上运行

Electron初识之路

家住魔仙堡 提交于 2019-12-01 15:18:32
1.名词解释: nodejs :nodejs相当于 jvm, vs等, 它是一个运行平台, 只不过它运行的是javascript语言而已,就像vs可以解释、编译、运行c++代码一样 electron :是一个能使用传统前端技术(Nodejs, Javascript, HTML, CSS)开发一个跨平台桌面应用的框架。这里所说的桌面应用指的是在Windows、OSX及Linux系统上运行的程序。可以把它理解为一个本地的、类似浏览器的壳子,用以展示js、html、css描述的界面 初识 electron: https://blog.csdn.net/wang839305939/article/details/80741100 2.环境搭建 安装 vscode https://blog.csdn.net/HelloZEX/article/details/84029810 linux版本下载地址: https://code.visualstudio.com/Download(deb包下载) https://www.cnblogs.com/longyuan-z/p/7739864.html(deb包安装方法) 安装nodejs (注意版本) https://blog.csdn.net/yt_php/article/details/90105880 https://blog.csdn.net

Node.js开发框架Express4.x

故事扮演 提交于 2019-12-01 12:09:22
前言 Nodejs是一个年轻的编程框架,充满了活力和无限激情,一直都在保持着快速更新。基于Nodejs的官方Web开发库Express也在同步发展着,每年升级一个大版本,甚至对框架底层都做了大手术。在Express4时,替换掉中件间库connect,而改用多个更细粒度的库来取代。带来的好处是明显地,这些中间件能更自由的更新和发布,不会受到Express发布周期的影响;但问题也是很的棘手,不兼容于之前的版本,升级就意味着要修改代码。 之前写过一篇文章“ Nodejs开发框架Express3.0开发手记–从零开始 ”,很多新学Node的朋友都在参考,但由于Express已经升级,文章中有部分的代码已经不能使用,所以就有了这篇介绍Express4.x的文章。 目录 建立工程 目录结构 package.json项目配置 app.js核心文件 Bootstrap界面框架 路由功能 程序代码 Express3.x和Express4.x的改动列表 1. 建立项目 让我们从头开始Express4.x的安装和使用吧,安装Node和NPM在本文就不多说了。Linux环境安装请参考文章, 准备Nodejs开发环境Ubuntu ,Window环境安装直接下载Node的安装文件,双击安装就行了。 我的系统环境 Win7 64bit Nodejs:v0.10.31 Npm:1.4.23 首先

Nodejs和NPM初步认识

走远了吗. 提交于 2019-12-01 02:35:28
一、Nodejs 搭建 关于 Windows下的安装方法见 Windows下安装nodejs及环境配置 Nodejs的网络学习教程 见 nodejs和npm使用教程 二、NPM NPM基础 NPM的全称是Node Package Manager,是一个NodeJS包管理和分发工具,目前npm已经集成到Nodejs安装包中。 NPM相关基本信息,如安装、卸载、升级、配置以及package.json等基本介绍可参考 NPM小结 - 程序猿小卡 NPM的模块安装机制可以参考阮一峰的网络日志 npm 模块安装机制简介 ,这里面讲解的很详细。 此外,关于npm的常用命令一览可参考 npm常用命令详解 上诉基本信息了解后可以查看官方的NPM文档了解更加详细的信息: NPM命令官方Doc 版本符号 此外关于npm的package.json元数据依赖中的版本定义信息符号如 >, >=, *, ^等表示的含义见官网定义 The semantic versioner for npm ,还有个介绍在线计算NPM依赖包版本动图说明的网址 Introducing the npm semantic version calculator 以及在线NPM软件包网站 npm semantic version calculator 概括来说,部署环境中基本都不使用版本符号如^、~等,而是直接使用特定的版本。其中: ^

nodejs随手记

一世执手 提交于 2019-11-30 14:41:22
nodejs项目周 nodejs前端框架 一般做中间层 和操作数据库 传统模式和前后端分离最大的区别就是seo优化 HTTP常见的服务器软件 Apache Nginx (iis)微软的服务器现在已经不怎么用了 node服务器 可以自己编写服务 个人练习 nodejs依赖安装 Express框架 提供一系列强大特性帮助你创建各种web应用 框架安装 cnpm install --save express 依赖安装 npm init 配制文件 npm install -g supervisor node自启动工具 启动命令 supervisor 文件名 自启工具命令 npm install --save ejs 摸板引擎安装 npm install body-parser --save 安装post接收的第三方模块 服务器 •服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。 •常见的HTTP服务器软件:Apache、Nginx、IIS。 •Node服务器:如果我们使用 PHP 来编写后端的代码时,需要 Apache 或者 Nginx 的 HTTP 服务器, 来处理客户端的请求响应。不过对 Node.js 来说,概念完全不一样了。使用 Node.js 时, 我们不仅仅在实现一个应用,同时还实现了整个

nodejs随手记

时光毁灭记忆、已成空白 提交于 2019-11-30 14:39:30
nodejs项目周 nodejs前端框架 一般做中间层 和操作数据库 传统模式和前后端分离最大的区别就是seo优化 HTTP常见的服务器软件 Apache Nginx (iis)微软的服务器现在已经不怎么用了 node服务器 可以自己编写服务 个人练习 nodejs依赖安装 Express框架 提供一系列强大特性帮助你创建各种web应用 框架安装 cnpm install --save express 依赖安装 npm init 配制文件 npm install -g supervisor node自启动工具 启动命令 supervisor 文件名 自启工具命令 npm install --save ejs 摸板引擎安装 npm install body-parser --save 安装post接收的第三方模块 服务器 •服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。 •常见的HTTP服务器软件:Apache、Nginx、IIS。 •Node服务器:如果我们使用 PHP 来编写后端的代码时,需要 Apache 或者 Nginx 的 HTTP 服务器, 来处理客户端的请求响应。不过对 Node.js 来说,概念完全不一样了。使用 Node.js 时, 我们不仅仅在实现一个应用,同时还实现了整个

Nodejs安装

孤街浪徒 提交于 2019-11-30 12:28:04
Nodejs支持跨平台运行,基本可以运行于所有的操作系统,对应不同的操作系统,安装方式也不同。 Nodejs的官方网站: https://nodejs.org 对应的中文网站: http://nodejs.cn/ 倾向于英文网站,中文网站毕竟会有很大的延迟。 Windows系统的安装:不再赘述。下载对应安装包,下一步下一步就可以。如果windows都不会安装,那也没必要学习nodejs了。 Mac 安装:鉴于本人比较穷,没有mac本,因此mac的安装只能参考其他富人的安装方法。 Linux安装:参考 https://blog.csdn.net/mpchen/article/details/84061624 请尽量选择较新版本。 Nodejs是一个集成了Google V8 Javascript引擎、事件循环和底层IO应用编程接口的平台。所有的IO原语都是基于事件驱动。可以认为Nodejs的执行是基于事件,异步执行,这也就保证了Nodejs的高效,使其成为性能强劲的web服务器的前提条件。 Nodejs提供了众多的内置对象,用来实现一系列对服务器的操作,path用来操作文件路径,fs用于操作文件,dns用于对网络的操作,stream提供对流的操作,基于http 实现web服务器,支持众多对服务器的内置支持。 Nodejs是前端程序员向后端进发的利器,对于习惯了操作浏览器DOM的前端er

nodejs之url模块

喜夏-厌秋 提交于 2019-11-29 11:52:13
  鄙人初步学习nodejs,目前在读《nodejs入门》这一本书,书很小,但是让我知道了如何用nodejs创建一个简单的小项目。例如如何创建一个服务器啦,例如http.createServer,还有根据不同的请求路径来设置路由选择啦,模块引入,创建模块啦,巴拉巴拉的东西。 现在还没有看完这本书,看完了再来写读后感吧。   今天主要记录的是关于nodejs里面的一个简单的模块,url模块。这个url的模块要使用的话需要先引入。若只是在命令行里比如cmd或git bash 等使用url这个模块的话,是不需要require进来的。直接使用便可。(我也不知道为啥不用require)   const这个关键字是ES6里面定义的常量,不可改变。 1 const url = require("url");   url一共提供了三个方法,分别是url.parse();  url.format();  url.resolve();   1 url.parse(urlString,boolean,boolean)    parse这个方法可以将一个url的字符串解析并返回一个url的对象   参数:urlString指传入一个url地址的字符串      第二个参数(可省)传入一个布尔值,默认为false,为true时,返回的url对象中,query的属性为一个对象。      第三个参数(可省

NodeJS基础学习总结

你说的曾经没有我的故事 提交于 2019-11-28 16:30:14
一、nodeJS解释   JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。    每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情 。例如运行在浏览器中的JS的用途是操作DOM, 浏览器就提供了 document 之类的内置对象 。而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器, NodeJS就相应提供了 fs 、 http 等内置对象 。   尽管存在一听说可以直接运行JS文件就觉得很酷的同学,但大多数同学在接触新东西时首先关心的是有啥用处,以及能带来啥价值。   NodeJS的作者说,他创造 NodeJS的目的是为了 实现高性能Web服务器 ,他 首先看重的是事件机制和异步IO模型的优越性 ,而不是JS。但是他需要选择一种编程语言实现他的想法,这种编程语言不能自带IO功能,并且需要能良好支持事件机制。JS没有自带IO功能,天生就用于处理浏览器中的DOM事件,并且拥有一大群程序员,因此就成为了天然的选择。   如他所愿,NodeJS在服务端活跃起来,出现了大批基于NodeJS的Web服务。而另一方面,NodeJS让前端众如获神器,终于可以让自己的能力覆盖范围跳出浏览器窗口

一周总结

风流意气都作罢 提交于 2019-11-28 09:49:26
一.学习   1.这周的学习内容就是Nodejs,但是学的很琐碎,知识系统掌握的不够牢固,现在在对着视频做一个nodejs的项目,等项目作文之后,要回过头系统的回顾一下知识;   2.这周对招新的海报一些细节的问题做了一些更改,改了一上午,找了一些小元素让整个海报看起来不是那么空荡,还好找到一个心满意足的,虽然不太好看,但整体还是不错的,而且从做海报之后,我的PS技术比之前要好一点了;   3.在学nodejs之外,我看看了伪类元素的一些特效,发现很多好看又酷炫的特效,都可以用伪类来实现,自己也百度了一些,收集了一些例子,写了一些,但是不怎么熟练,有些生疏,还有多加练习;   4.自己要开始准备四级了,争取一次过,努力一把,时间不等人啊,不能把所有的事情一拖再拖 二.生活   1.明天,我们小组就要集体出去旅游了,内心突然好激动,哈哈哈哈,可能是待在学校这么长时间,闷的话,反正就是很激动,很开心;   2.开学的时间越来越近,小伙计们也要返程了,大二的生活也要开始了,希望自己在大二能够用心去做每一件事。 来源: https://www.cnblogs.com/xieixngbo/p/11403660.html