为什么前端代码会被设计成允许用户在浏览器中看到,而客户端代码却不能?

考虑到代码应该面向专业开发人员, 如客户端代码想要查看源码需要一整套的开发环境和工具, 但是前端代码却显示在浏览器中任何用户都可以接触. 按理说黑盒的…
关注者
567
被浏览
555,570
登录后你可以
不限量看优质回答私信答主深度交流精彩内容一键收藏

这个问题可以用达尔文的理论来进行解释。

客观上来说,如果前端代码也变成二进制的,这个逻辑是一样通的,就跟当年的Java的Applet一样,可以通过浏览器加载字节码并启动,所以在客观上即使不需要可读的HTML也是可以通的。

所以客观条件上并不一定需要可读的代码。那这意味着设计成可读更多的是主观设计上和历史的原因。

1. 代码是可读文字演变的结果

由李博士发明的世界上第一款浏览器就是以传输纯文本为目的。所以一开始并没有什么HTML,只有纯文本。纯文本的缺陷就是表达方式是线性的,所以为了能表达更多内容就产生了包括制表符在内的ASCII标准。

但是人们希望能用Web来传输更多的内容,于是产生了标记语言可以表达二维信息(样式,图片)等。所有的这些都是以可读代码来演进发生的,所以可读的标记语言会成为标准的一种。

2. 适者生存,开放者胜(核心原因)

我们可以假设当年不仅只有一种Web技术标准,可能有不可读代码的标准,也有可读代码的标准。但是在当年那种Web内容稀缺的年代,哪种标准能够最快地让生产者产生内容就意味着能够占领先机。可读形式的代码最容易被复制、学习、传播,所以能更好地存活下来并且发扬光大。

随着信息内容越来越盈余,稀缺性减少,内容发布者拥有足够多的内容时,为了保护自己的内容或生态圈,也会不断地发明一些封闭代码的生态比如现在的小程序等。

结论

从以上的分析,我们可以看到:在一项事物的发展初期,当内容稀缺的时候,就要使用开放、开源的策略,这样能使你的技术或者标准具有更强的生命力。