零基础Nodejs快速入门——Node.js简介

Node.JS简介

1. 熟悉动态网站开发

(1)B/S软件体系结构

C/S架构

客户端/服务器

B/S架构

浏览器/服务器 ,B/S架构讲Web浏览器作为客户端应用软件,B/s架构实际上就是一种特殊的C/S架构

一般客户端叫做前端, 管这个服务旗叫做后端

关系:举例子。登录淘宝界面,想要要查看自己的购买记录,购买记录存存储在阿里的服务器上面,所以浏览器就需要从阿里的服务器上获取你的购买记录

(2)动态网站介绍、HTTP协议

静态网页是指内容是死的。这里的静,指的就是内容完全不变,不会跑。

动态网页是指内容是活的。这里的动,指的是内容是从数据库中,或者是从别的地方写出来的,拼接而成的。

(3)几种主流的Web应用程序平台

一个动态网站服务器平台的最少组合包括:操作系统+Web服务器+应用服务器+数据库。网站开发平台中的每个组件都有多种可以选择的软件,例如,操作系统可以使用UNIX、Linux、Windows

目前,网站服务器平台比较常见的有ASP.NET、JavaEE和LAMP三种

1.ASP.NET

ASP.NET是Windows Server+IIS+SQL Server+ASP组合,

2.JavaEE开发平台

JavaEE是一个开放的、基于标准的开发和部署的平台,基于Web的、以服务端计算为核心的、模块化的企业应用。由Sun公司领导着JavaEE规范和标准的制定,但同时很多公司如IBM、BEA也为该标准的制定贡献了很多力量。JavaEE开发架构是UNIX+Tomcat+Oracle+JSP的组合,是一个非常强大的组合,

3.LAMP开发平台

LAMP是Linux+Apache+MySQL+PHP的标准缩写。

(4)Web工作原理

Web 前端开发

Web 前端开发的重点是 : 提供用户界面给 用户进行观看和操作。

HTML5放数据

css3进行

Web 后端 开发

后端程序的主要工作就是 数据管理

通常包括数据的增删改查

这个通常应该是架构师设计的, 但是往往这工作经常会落到后端工程师头上。

  • 数据库表结构设计, 要能合理、高效的存储业务数据,这样才能 高效查询、修改各种关联性的数据。
  • 为了提高性能, 需要决定使用怎样的 缓存服务 和 异步任务服务
  • 还有 其它种种特殊的考虑,比如 要熟悉目前日益流行的云存储技术,将有的数据,如图片,视频等 合理存储在云端
  • 有的系统还需要有 大数据分析的需求 要后端高效实现。

2. 了解NODE.JS

(1)NODE.JS发展历史与特点

(2)NODE.JS工作原理、相关网络资源

盘点那些将nodejs作为后端的大公司 (baidu.com)

  1. 为什么学习nodejs?

随着node.js快速发展,是HTML\CSS\JS过度到前端框架学习必备技能!!

  1. nodejs 是什么?

Node.js 是2009的时候由大神 Ryan Dahl 开发的。Ryan 的本职工作是用 C++ 写服务器,后来他总结出一个经验,一个高性能服务器应该是满足“事件驱动,非阻塞 I/O”模型的。C++ 开发起来比较麻烦,于是 Ryan 就想找一种更高级的语言,以便快速开发。

可以说有两点促成了 Nodejs 的诞生。首先第一点,Ryan 发现 JS 语言本身的特点就是事件驱动并且是非阻塞 I/O 的,跟他的思路正是绝配。第二点,Chrome 的 JS 引擎,也就是 V8 引擎是开源的,而且性能特别棒。于是 Ryan 就基于 V8 开发了 Node.js ,注意 Node.js 听名字好像是个 JS 库,其实不是的,Node.js 是 C++ 开发的,到官网 http://nodejs.org 可以看到

Node.js 是一个基于 Chrome V8 引擎的 Javascript 运行环境

所以说 Node.js 不是库,是一个运行环境,或者说是一个 JS 语言解释器。

Node.js 最初的定位是提升 Ryan 自己的日常工作效率,也就是用来写服务器代码的,但是后来没有想到的是 Node.js 在前端领域却大放异彩。

先说几句 Node.js 在服务器端的发展。Node.js 的诞生带给人们的是个大大的惊喜,传统上 Web 开发者,前端用 JS 写,但是写服务器端代码的时候还必须用另外一种语言,类似 Ruby/Java/PHP 等。但是 Node.js 出现之后,JS 前后通吃了。如果去网上搜 Node.js 的资料,很多都是用 Node.js 去写服务器代码的。

但是,Node.js 今天也成为了 Web 前端开发必不可少的基础设施。注意,Web 前端的 JS 代码最终还是运行在浏览器中的,所以运行的时候,或者说在产品环境下,不依赖于 Node.js 。但是,Node.js 诞生以后,前端大爆发,类似 React/Vuejs 这样的前端框架的开发环境变得非常强大和负责,Node.js 是这些开发环境运行的基础。

这就是关于 Node.js 诞生,以及它如何从纯后端发展到前后通吃的故事。

  1. nodejs作用?

服务器应用程序可以用来:

1.开发服务器应用

除了需要cpu登硬件外还需要部署nodejs来实现服务器功能,比如接收发送评论等。

nodejs保存网站开发文件,客户端用户通过URL来访问服务器内容,nodejs运行在服务器端,可以对用户的请求做处理。

2.开发工具类应用

提高前端工具,借助nodejs实现

3.开发桌面端应用

代码编辑工具、设计工具、接口测试工具,都是借助于electron框架

3. nodejs注意事项:

4. WEB中 JS VS NODEJS 区别

5. 学习nodejs之前需要掌握

nodejs 采用了单线程、异步式I/O、事件驱动式的程序设计模型

【入门指南】node.js - 菜鸟学院 (noobyard.com)

事件驱动:以事件的形式通知执行 I/O 操做的线程,线程会在特定时候处理这个 事件。为了处理异步 I/O,线程必须有事件循环,不断地检查有没有未处理的事件,依次予 以处理进程和线程的关系

window: 任务管理器 =>进程

6. 同步和异步,单线程和多线程解释

关于Nodejs有一个很难懂的概念是关于同步和异步,单线程和多线程

        下面举一个最简单的例子来区分多线程和单线程,同步和异步,比如蜜雪冰城招了三位小姐姐干活,周日人比较多,大家在排队点单取单,这个时候美团下单了一个100份的大单子,如果是同步单线程的话就按照顺序来,三位小姐姐一起努力准备好100单然后继续给后面的顾客做奶茶,如果是同步多线程的话,三位小姐姐进行分工,比如一个人准备排队的顾客,另外两个准备100份的大单。这个是同步。

        如果按照异步的方式,单线程,三位小姐姐可以选择把这个单子先放一放,优先处理排队等候的顾客,等人少了再回过头来处理大订单,多线程再次基础上可以他们可以进行分工。

小结

  • 25
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值