经过这几年的发展,前端普遍进入了技术深水区 ,只会Web页面开发已经难以满足企业需求,Node逐渐成为了刚性技能。
但Node在业务上的使用还没有那么普及,有的时候想用老板还不同意,本文将从4个角度解析“为什么要使用Node”。
业务驱动
Node有个突出的优势, 他的开发者可以是前端。而前端对于页面所需要懂得数据会有更好的理解, 每个页面要用到哪些接口,每个接口要用到哪些字段前端是最清楚的。
再加上实际业务开发中,前端页面需求经常会发生变化,需要修改字段或者数据结构, 所以对接页面的这部分接口由前端直接开发非常合适,可以显著的减少沟通成本 。
架构需要
面向用户的接口由Node中间层负责以后,真正的服务端可以专注于提供基于领域模型的对内接口,做微服务。 比如可以基于Goods模型,提供所有商品相关的接口,基于Users模型,提供所有用户相关 。
当一个接口需要商品+用户信息时,由Node分别查询组装, 从整体业务代码维护角度来说,变得更容易,不会因为业务发展使得每个接口都异常繁杂 。
性能满足
如果仅仅是架构层面的需求,需要有一个中间层来沉淀业务,那用Java,PHP也可以做到,为什么说Node更适合做呢?
因为Node天生异步!
众所周知,js是一门单线程语言,所以N ode在实现的时候,需要借助libuv来实现异步。
如图所示,libuv为Node提供了线程池,事件池,异步I/O等能力。 正是因为其中网络I/O的异步能力,可以让Node做接口聚合时,能够更高效的异步并发处理。
学习成本较低
Node使用js开发,只需要学习简单的api,前端开发者就可以无障碍使用,学习成本很低。
而且,Node具有活跃的社区和丰富的模块池,拥有很多现成的功能实现,框架方面,也有成熟的koa,express等基本框架和egg等二次封装框架,可根据需求选择上手也比较方便。
课程四大主题
扫码领取
0元前端进阶系列直播课
成功添加之后即可0元获得七天进阶课程。
课程内容涉及Vue的组件库封装,源码解读 ,高度定制化的框架下Vue的设计架构之道... 也通过对源码的解读去培养大家的程序员思维,帮助大家加深对工具的理解,同时也分享实用的面试技巧。
1. 技巧 : 《Vue组件库级组件封装示例:高复用弹窗组件 》
组件库的组件&业务组件的区别
保持组件可复用性,可扩展性的方法
一个弹窗组件示例
2. 源码 : 《SPA前端路由原理与实现方式的深度剖析 》
如何理解前端路由
前端路由的实现
路由模式的深度对比
3. 源码 : 《阅读JQuery源码,带你突破技术大瓶颈 》
使用开闭原则降低代码依赖
架构必备思维:分离业务代码和功能
技术瓶颈突破:0基础玩转面向扩展程的程序设计
4. 实战 : 《基于MVVM,我们一起实现自己的Vue 》
Vue如何监听data的属性变化
Vue的模板是如何被解析的
Vue的模板是如何被渲染的
5. 案例 : 《网易云课堂前端性能优化最佳实践方案 》
性能优化的最佳实践方案
大厂性能优化体系建立
实例:网易云课堂打包优化最佳实践方案
6. 架构 : 《 前端架构师必看第一课:架构师的工作内容 》
深度揭秘前端架构师的工作内容
成为一位前端架构师必备的知识体系
实操:如何对一个项目进行架构
7. 源码 : 《 高度定制化的框架下Vue的设计架构之道 》
mergeoptions
定制化的配置选项不同策略处理
vue.config.optionMergeStrategies自定义选项合并策略
深入浅出的干货课程,没有套路,扫码添加网易云课堂前端助教,就可以0元获得!
▲阮一峰微博推荐
▲添加成功附赠前端资料包一份
限时0元直播
扫码领取