异步编程
-
《深刻理解 JavaScript 异步系列》javascript
- JS 是单线程的语言。运行的js ,可能会有大量的网络请求,而一个网络资源啥时候返回,这个时间是不可预估的。这种状况会出现等待卡顿。JS 对于这种场景就设计了异步 ———— 即,发起一个网络请求,就先无论这边了,先干其余事儿,网络请求啥时候返回结果,到时候再说。这样就能保证一个网页的流程运行
async/await
-
《async/await 详解》html
- promise的出现对于异步编程是一个跨越式的提升,可是每每在实际业务中存在不少更加复杂的流程,promise仍是没法知足咱们的须要,这时候在ES7中提出了async函数
Promise
-
《Promise链式调用原理 》node
服务器端渲染SSR
SSR指南
-
《浅谈服务端渲染(SSR)》react
- 简单理解是将组件或页面经过服务器生成html字符串,再发送到浏览器,最后将静态标记”混合”为客户端上彻底交互的应用程序
-
《有必要使用服务器端渲染(SSR)吗?》webpack
SSR框架
-
- Next.js 为您提供生产环境所需的全部功能以及最佳的开发体验:包括静态及服务器端融合渲染、 支持 TypeScript、智能化打包、 路由预取等功能 无需任何配置
函数式编程
函数式编程
-
- 函数式编程就像第三次工业革命,前两次分别为命令式编程(Imperative programming)和面向对象编程(Object Oriented Programming)
代码质量
代码规范
-
- 代码自己的质量: 包括复杂度, 重复率, 代码风格等。
- 复杂度: 项目代码量,模块大小,耦合度等
- 重复率: 重复出现的代码区块占比,一般要求在5%如下(借助平台化工具如Sonar)
- 代码风格: 代码风格是否统一(动态语言代码如JS, Python风格不受约束)
- 代码自己的质量: 包括复杂度, 重复率, 代码风格等。
JavaScript
TypeScript
性能优化
调试工具
H5优化
缓存
压缩
内存
-
- 在JS中具备自动垃圾回收机制,对于前端开发来讲,内存空间并非被经常提起的概念,容易被你们忽视。不少东西的原理与内存息息相关,如:闭包、深签拷贝、执行上下文等,要弄清楚这些,必须对内存空间有清晰的认知才行。
渲染
资源加载
-
《使用 Preload&Prefetch 优化前端页面的资源加载》
- 对于前端页面来讲,静态资源的加载对页面性能起着相当重要的做用。本文将介绍浏览器提供的两个资源指令-preload/prefetch,它们可以辅助浏览器优化资源加载的顺序和时机,提高页面性能
监控
异常捕获
-
- JavaScript 中的一个错误是一个对象,错误会被抛出以暂停程序
-
- 在开发过程当中,咱们的目标是 0error,0warning。但有不少因素并非咱们可控的,为了不某块代码的错误,影响到其余模块或者总体代码的运行,咱们常常会使用try-catch模块来主动捕获一些异常或者错误
页面性能监控
-
- FrontJS 提供准确、实时、完整的程序错误、资源加载、网络请求信息及网站性能监测报告,帮助开发者快速追踪网站故障,及时修复问题,维护网站质量,指导改善用户体验。
埋点
-
- 关于埋点,做为用户行为过程数据采集的一种方式,被普遍用于各公司的站点中。它不只能够收集页面浏览量,还能对访问用户的时间、地点、操做路径等用户行为进行多维度记录
用户行为
设计模式
概念
-
- 在软件工程中,设计模式是软件设计中常见问题的可重用解决方案。设计模式表明了经验丰富的软件开发人员所使用的最佳实践。设计模式能够看做是编程模板
单体模式
- 《JavaScript设计模式——单体模式》
- 单体模式(Singleton Pattern)的思想在于保证一个特定类仅有一个实例,即无论使用这个类建立多少个新对象,都会获得与第一次建立的对象彻底相同。
工厂模式
工程化
构建工具
webpack
-
- webpack是一个打包模块化 JavaScript 的工具,在 webpack里一切文件皆模块,经过 Loader 转换文件,经过 Plugin 注入钩子,最后输出由多个模块组合成的文件。webpack专一于构建模块化项目
脚手架
前端标准/实践
前端标准
-
- 经过分析github代码库总结出来的工程师代码书写习惯
-
《【译】Google 官方文章——如何去作coder review》
- CR(Code review)主要目的在于确保Google 的代码库代码质量愈来愈好。而全部相关的工具与流程皆是因应这个目的而生。为达到此目的,势必须要作出一连串的权衡与取舍
-
- Git 提供了丰富的分支策略和工做流方式,咱们在深刻学习业界 Git 工做流时,每种工做流都设计的很是好,彷佛都能运用到团队实践
骨架屏
前端算法
递归
冒泡
动态规划
二分查找
链表和数组
浏览器
自动化
网络
OSI七层协议
- 《OSI七层模型各层知识解析》
- 简单理解其实就是为计算机与计算机连接所制定的通讯框架。这个模型分为七层。
DNS解析
协议
TCP
- 《TCP详解》
- 概念
- 面向链接、可靠的基于字节流的传输协议。
- 将应用层的的数据分割成报文段并发送给目标节点的 TCP 层
- 每一个数据包都有相对应的序号,对方收到后就发送 ACK 确认,未收到就重传
- 使用校验和来检测传输过程当中是否出现错误
- 概念
- 《你管这破玩意儿叫TCP?》
UDP
测试
单元测试
自动化测试
-
- 测试是完善的研发体系中不可或缺的一环。前端一样须要测试,你的css改动可能致使页面错位、js改动可能致使功能不正常。因为前端偏向GUI软件的特殊性,尽管测试领域工具层出不穷,在前端的自动化测试上面却实施并不普遍,不少人依旧以手工测试为主
可视化
d3
- 《D3 源代码解构》
- D3是一个数据可视化的javascript库,相对于highchart和echarts专一图表可视化的库,D3更适合作大数据处理的可视化,它只提供基础的可视化功能,灵活而丰富的接口让咱们能开发出各式各样的图表。
three.js
NodeJS
原理
V8引擎
移动web开发
Hybrid
Flutter
安全
抓包/代理
监控技术
机器学习
TensorFlow
客户端开发
electron
nw.js
chrome插件
- 《Chrome插件开发指南》
- Chrome插件是一个用Web技术开发、用来加强浏览器功能的软件。它其实就是一个由HTML、CSS、JS、图片等资源组成的一个.crx后缀的压缩包
源码分析
vue源码
-
- 简单来讲路由就是用来跟后端服务器进行交互的一种方式,经过不一样的路径,来请求不一样的资源,请求不一样的页面是路由的其中一种功能。
react源码
TypeScript
JavaScript
项目管理
项目管理
- 前端项目如何管理
- 前端项目的管理分为两个维度:项目内的管理与多项目之间的管理