- VSCode从2011年开始开发,当时各种前端框架并不像今天这么流行,微软在选取技术时很难考虑当时还未成熟和推广的前端框架。
- 前端框架性能较差。现代前端框架本质上是用虚拟DOM(React)、脏检测(Angular)和数据劫持(Vue)等手段将数据的变化自动响应到DOM变化上。对于绝大多数前端应用而言,前端框架从数据到UI的这一套处理方法是没有性能问题的,其保证的是性能不会太慢和自动响应,这很契合普通前端应用的开发需求。但是对于VSCode这种应用就不适用了。代码编辑器对性能的要求很高,可以说其性能要求是各种前端应用中最高级别的。目前的前端框架难以满足VSCode的性能需求。
- 微软具备强大的开发团队,所以直接使用DOMapi开发并不是太高的技术门槛,开发成本不会太高,且进行进一步优化的空间更大,也不会受制于某个框架的发展。
- 代码编辑器设计的前端技术更为底层,增量变化、等宽字体的排列和渲染等问题,使用现有的前端框架难以抽象,往往还是需要使用底层API进行定制开发,前端框架在这些部分能力不足。
综上所述,VSCode使用DOMapi开发是微软团队的正确选择,前端框架不是开发VSCode的最佳选择。