Web标准和前端开发 | 青训营笔记

242 阅读3分钟

这是我参与「第四届青训营 」笔记创作活动的的第6天

关于前端开发

起源、架构、变迁

起源

上网指接入Internet,它是地球上相互连接的计算机构成的网络。计算机网络诞生于上个世纪的60年代,标志性通信协议是TCP/IP。

架构

1989年诞生时,Web由三种技术构成:

  1. HTML
  2. HTTP
  3. URL CSS和JavaScript几年之后才出现。 image.png

变迁

image.png

前端应用的领域

  1. To Business
  2. To Customer
  3. To Developer

前端应用的领域之浏览器

image.png

前端应用的领域之服务器

image.png

前端应用的领域之终端和跨端

image.png

语言、框架、工具

语言:

  1. HTML
  2. CSS
  3. JavaScript
  4. WebAssembly

框架: image.png

浏览器、网络、服务器

深入理解现代浏览器 image.png An overview of HTTP image.png

前端学习路线图

Fronted Developer Roadmaps image.png

关于Web标准

了解Web标准组织

  1. W3C:World Wide Web Consortium

  2. Ecma:Ecma International

  3. WHATWG:Web Hypertext Application Technology Working Group

  4. IETF:Internet Engineering Task Force

W3C与Ecma会员

W3C目前在全球有457家会员(link),其中北航总部(中国区)会员47家(link)。 Ecma的AM(Associate Member)会员目前有18家,中国公司有字节跳动、360、阿里、华为、腾讯等5家(link)。

W3C规范制定流程

image.png

  • WD:Working Draft,即工作草案
  • CR:Candiate Recommendation,即候选推荐
  • PR:Proposed Recommendation,即提议推荐
  • REC:Recommendation,即推荐标准 推荐标准就是W3C的标准的最终形态,不是强制性标准。

流程:

  • Explainer demo:建议说明文档,比如要标准化某个领域的API,要先写一个建议文档。相关示例:w3ctag.github.io/explainers;
  • Find the right community/group:找到合适的社区或小组,把建议文档提交到社区或小组里充分讨论;
  • Web IDL for APIs:IDL(Interface Description Language,接口描述语言),用于描述API的一种标准方式:heycam.github.io/webidl/;
  • Step-by-step algorithms:分步算法,就是要把算法步骤描述清楚;
  • GitHub, Markdown, respec, bikeshed, etc.:这些都是工具;
  • Get an early review w3ctag/design-reviews:事先请TAG(Technical Architecture Group,技术架构组)进行设计评审;
  • Write web-platform-test(WPT)tests:编写WPT测试。

TC39规范制定流程

Contributing to ECMAScript image.png 负责制定ECMAScript规范的是TC39,TC是Technial Committee,技术委员会的意思。

  • Stage 0:strawman,稻草人,以任何形式提交的想法
  • Stage 1:proposal,提案,特性的正式建议
  • Stage 2:draft,草案,具有语法和语义的描述
  • Stage 3:candidate,候选,规范文本完备,有了两个实现
  • Stage 4:finished,完成,可以成为标准,通过单元测试
  1. Championing a proposal at TC39
  2. How to write a good explainer
  3. Presenting a proposal to TC39
  4. Reading a proposal draft
  5. Stage 3 Proposal Reviews
  6. How to experiment with a proposal before Stage 4
  7. Implementing and shipping TC39 proposals

如何参与——关注会议

W3C会议

W3C Technical Plenary / Advisory Committee Meetings Week (简称TPAC)是W3C一年一度的全球技术大会,汇集W3C各工作小组成员(工作组、兴趣组、社区组等)、咨询委员会(AB)、技术架构组(TAG)、会员单位代表(AC)、公众特邀专家以及全球社区成员,通过为期1-2周的集中互动交流,深入探讨未来开放Web平台技术方向。

年度大会:

  • AC(Advisory Committee)
  • TPAC(Technical Plenary and Advisory Committee) 工作组会议:
  • 每月会议
  • 各种研讨会

Ecma会议

  • 年度大会:GA(General Assembly)
  • TC39会议:每1-2个月meeting calendar