
谷歌
前端技术本质上是建立在一个高度集中的平台上,这种集中化意味着开发者几乎没有选择权。你了解垄断的概念吗?它指的是在某个领域中,用户或开发者无法选择替代方案的状态。
谷歌并非没有尝试过改变这一局面。过去,他们推出过带有Dart虚拟机的
Chrome浏览器,并试图用Dart取代
JavaScript。然而,其他浏览器厂商对此毫无兴趣,拒绝跟进,最终导致该项目被取消。即使像
谷歌这样在浏览器市场占据主导地位的
公司,也难以推动变革。那么,又有谁能成功做到这一点?在PC端,你可以完全不依赖Win32、MFC或其他
微软官方框架和工具来开发应用。你可以自由选择任何你喜欢的编程语言或框架进行开发。但在浏览器环境中,你有这样的自由吗?显然没有。这就是垄断平台的本质——技术栈的选择权被限制。HTML、
CSS和
JavaScript这些技术,是在浏览器发展的早期由网景
公司创建的。它们从一开始就奠定了基础,后来的浏览器厂商自然继承了这套体系。这是各浏览器厂商之间的最大公约数。每家厂商都在这些技术上投入了大量资源和成本。如果现在要引入一套全新的技术栈来取代原有的体系,这些厂商将如何应对?此外,还有大量的兼容性问题需要解决,例如如何确保旧网站能够正常运行?基于这些原因,HTML、
CSS和
JavaScript的地位始终稳固。尽管可能存在一些问题,但通过打补丁和升级的方式,这些问题通常可以得到解决,而无需推倒重来。即便后来出现了WebAssembly这样的新技术,它也一直强调不会取代
JavaScript。实际上,WebAssembly甚至不敢绕过
JavaScript,直接提供操作DOM的接口。这是因为没有人敢轻易触碰这块奶酪,否则可能会阻碍技术的发展。即使到现在,WebAssembly的发展依然缓慢,面临着重重阻力。