工具链 · 中级 05
工具链中级题库第 5 组,共 12 张卡片。
工具链 · 中级 05
评估 VS Code 扩展应同时考虑实际效率收益、权限与供应链风险、资源消耗以及团队可复制性,而不是以安装数量或下载量作为主要标准。
Babel 将编译流程划分为 parse、transform 和 generate,是为了把源代码理解、结构化变换和文本输出三个职责解耦。
理解 Babel 插件应区分三个层次:语法插件负责让解析器识别某种语法,转换插件负责改写 AST 并输出另一种代码形态,提案插件面向尚未稳定的语言提案,…
定位编译链路中的执行异常,应把 VS Code Debugger、源码映射和函数插桩看成三种互补证据:调试器用于暂停进程并观察调用栈、作用域和变量;
选择解析器不能只看代码是否能被解析,还要同时评估语法覆盖、AST 方言、错误恢复、注释与位置信息、插件扩展方式、性能、类型语法支持,以及下游遍历和生成工…
基于源码生成可信文档,应以抽象语法树、作用域绑定和导出关系为依据,而不能通过正则表达式搜索 function 或 class。
还原页面布局抖动的关键,是用Chrome DevTools把“哪个元素发生位移、何时发生、此前什么资源或脚本改变了几何信息”连接成因果链。
高质量的 Git 工作流不取决于分支数量,而取决于提交是否原子化、历史是否可审查、集成过程是否可验证,以及出现故障时能否低成本回滚。
ESLint 应主要负责发现代码正确性、潜在缺陷和团队约束问题,Prettier 应主要负责确定性的文本格式化,VS Code 只负责按清晰顺序调用它们。
Babel AST 是源代码的结构化表示。
Babel 编译流水线应按“配置解析—源码解析—语法树转换—代码生成—产物校验”组织。
可复用的 Babel 配置应把插件设计为边界清晰的转换或分析单元,把预设设计为面向具体发布目标的配置组合。