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

101 阅读4分钟
  • 这是我参与「第四届青训营 」笔记创作活动的第5天

    以下为日常上课笔记,有关于Web标准与前端开发的一些基础内容 

  • 关于前端开发\

    • 起源、架构、变迁\

      • 上网指接入lnternet,它是地球上相互连接的计算机构成的网络。计算机网络诞生于上个世纪的60年代,标志性通信协议是TCP/IP 。\
      • 1989年诞生时,Web由HTML、HTTP、URL三种技术构成\
      • CSS和JavaScript是几年之后才出现的\
      • 前端时代划分\
    • 前端应用的领域\

      • 面向的对象\

        • To Business\
        • To Customer\
        • To Developer\
      • 浏览器\

        • 浏览器包括桌面浏览器和移动浏览器,以及移动App中的WebView,都属于浏览器直接渲染Web应用的范畴\
        • 桌面浏览器\

          • 包括Chrome、Edge、Firefox、Opera、Safari这五个主流浏览器\
          • 因为Edge和Opera都已经选择站到了谷歌的阵营,所以事实上只有Chrome、Safari和Firefox三个浏览器。\
          • 目前,Chrome具有事实上的垄断地位。\
        • 移动浏览器\

          • 主要是Chrome、Satai,还有国内小程序提供商定制的一些浏览器引擎\
          • 换句话说,前接不仅要开发在浏览器和WebView中运行的网页,也要开发小程序\
      • 服务器\

        • 服务端的开发目前主要还是依托于Nodejs这个成熟的JS运行时\
        • npm包管理平台已经成为世界最大的程序包管理平台\
        • 还有Express、Koa等Web开发框架的生态\
        • 也要关注Deno\
      • 终端和跨端\

        • 这个应用领域通常是开发者工具\

          • 命令行工具里的Webpack、Babel、React、Vue都有CLl(Command-Line-Interface)版\
          • 桌面跨端主要有Electron和NW.js\
          • 移动跨端主要有React Native和Flutter\
        • 目前世界上最流行的编码环境VSCode就是基于Electron的一个Web应用.\
  • 关于Web标准\

    • W3C与Ecma会员\

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

      • W3C规范制定流程\
      • WD: Working Draft,即工作草案\
      • CR: Candiate Recommendation,即候选推荐\
      • PR: Proposed Recommendation,即提议推荐\
      • REC: Recommendation,即推荐标准\
      • 推荐标准就是W3C的标准的最终形态,不是强制性标准\
      • W3C规范的流程在前面的流程文档里有详细介绍。但一个规范从草案到正式发布,通常都涉及以下几个方面:\
      • Explainer\

        • 就是建议说明文档,比如要标准化某个领域的API,要先写一个建议文档\
      • Find the right community/group\

        • 找到合适的社区或小组,把建议文档提交到社区或小组里充分讨论\
      • Web IDL for APIs\

        • IDL (Interface Description Language,接口描述语言)\
      • Step-by-step algorithms\

        • 分步算法,就是要把算法步骤描述清楚\
      • GitHub, Markdown, respec, bikeshed, etc.\

        • 工具\
      • Get an early review w3ctag/design-reviews\

        • 事先请TAG(Technical Architecture Group,技术架构组)进行设计评审\
      • Write web-platform-tests (WPT) tests\

        • 编写WPT测试\
    • TC39流程\

      • 负责制定ECMAScript规范的是TC39\
      • TC是Technial Committee,技术委员会的意思\
      • Ecma TC39规范制定流程\

        • Stage 0: strawman,稻草人,以任何形式提交的想法\
        • Stage 1: proposal,提案,特性的正式建议\
        • Stage 2: draft,草案,具有语法和语义的描述\
        • Stage 3: candidate,候选,规范文本完备,有两个实现\
        • Stage 4: finished,完成,可以成为标准,通过单元测试\
      • Contributing to ECMAScript\

        • Championing a proposal at TC39\
        • How to write a good explainer\
        • Presenting a Proposal to TC39\
        • Reading a proposal draft\
        • Stage 3 Proposal Reviews\
        • How to experiment with a proposal before Stage 4\
        • 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)\
        • 工作组会议\

          • 每月会议\
      • Eema会议\

        • 年度大会\

          • GA (General Assembly)\
        • TC39会议\

          • 每1-2个月\