这是我参与「第四届青训营 」笔记创作活动的的第5天
1、关于前端开发
起源、架构、变迁
- 起源:前端开发最早要从一个建议说起
“Suppose all the information stored on computers everywhere were linked.Suppose I could program my computer to create a space in which everything could be linked to everything.”
-Tim Berners-Lee, inventor of the World Wide Web
- 架构:在上网过程中,我们打开浏览器,通过HTTP请求来获得服务器上存储的HTML文档,文档解析出来呈现在屏幕上,这就是最基础的架构
- 变迁:主要分为三个时代,只读时代、体验时代、敏捷时代
2、前端应用的领域
前端开发的应用
- To Business
企业的应用,包括大型机构、银行,互联网公司内部也有很多,例如字节的火山引擎
- To Customer
在大众实现信息共享的作用,门户网站、电商平台、在线教育、新闻资讯、生活娱乐等平台
- To Developer
面向开发者的工具、平台和框架
前端应用的领域之浏览器
- 桌面浏览器: Chrome,Edge,Firefox,Opera,Safari等
- mobile: 安卓和苹果
前端应用的领域之服务器
目前服务器开发主要是依托Node.js,npm包管理平台已经成为世界上最大的程序包管理平台
当然还有Express.js、Koa等web开发框架的生态
也要关注一下Deno,号称安全运行时
前端应用的领域之终端和跨端
- 命令行/终端:Webpack CLI, Babel CLI, Vue CLI, React CLI
- 桌面跨端:Electron, NW.js
- 移动跨端:React Native, Flutter
3、语言、框架、工具
- 语言:HTML、CSS和JavaScript是前端开发必须掌握的三门语言,HTML负责结构页面,CSS为页面提供装饰,JavaScript赋予页面动态和交互能力
-
框架:node.js, koa, vue, ts, git, webpack,esbuild等
-
工具:前端开发离不开代码运行的环境,就是浏览器、网格和服务器
深入理解现代浏览器这篇文章以Chrome作为现代浏览器的示例,图文并茂讲解了浏览器的工作原理
An overview of HTTPHTTP的简介,涉及HTTP请求和响应的过程及概念
4、前端学习路线图
5、关于Web标准
标准组织
-
W3C : World Wide Web Consortium
- 官网:www.w3.org
- Github:github.com/w3c
- 规范查询:www.w3.org/TR
-
Ecma : Ecma International
- 官网:www.ecma-international.org
- TC39:tc39.es
- Github:github.com/tc39
- 规范查询:es.discourse.group
-
WHATWG : Web Hypertext Application Technology Working Group
- 官网:whatwg.org/
- Github:github.com/whatwg
- 规范查询:spec.whatwg.org/
-
IETF : Internet Engineering Task Force
- 官网:www.ietf.org/
- Github:github.com/ietf
W3C规范制定流程
生命周期
- WD: Working Draft,即工作草案
- CR: Candiate Recommendation,即候选推荐
- PR: Proposed Recommendation,即提议推荐
- REC: Recommendation,即推荐标准,推荐标准就是W3C的标准的最终形态,不是强制性标准
规范流程
一个规范从草案到正式发布,通常涉及以下几个方面:
-
Explainer demo
建议说明文档
-
Find the right community/group
找到合适的社区或小组,把建议文档提交到社区或者小组里充分讨论
-
Web IDL for APIs link
IDL, Interface Description Language,接口描述语言,用于描述API的一种标准方式
-
Step-by-step algorithems
分步算法,把算法步骤描述清楚
-
GitHub,Markdown,respec,bikeshed,etc.
工具
-
Get an early review w3ctag/design-reviews
事先请TAG(Technical Architecture Group,技术架构组)进行设计评审
-
Write web-platform-tests(WPT) tests
编写WPT测试
Ecma TC39规范制定流程
负责制定ECMAScript规范的是TC39,TC是Technical Committee,技术委员会
- Stage 0: strawman,稻草人,以任何形式提交的想法
- Stage 1: proposal,提案,特性的正式建议
- Stage 2: draft,草案,具有语法和语义的描述
- Stage 3: candidate,候选,规范文本完备,有了两个实现
- Stage 4: finished,完成,可以成为标准,通过单元测试
总结
通过这次课程,我学习到了关于前端开发的起源、架构和变迁,知道了前端开发的应用的领域,也知道了前端学习的路线图,清晰明了有重点,也学到了关于Web标准以及规范的制定流程。