只是你以为你看到的是源代码而已。
这一句话已经答完了其实。
你现在从钱包里掏出一张人民币,现在这张人民币的各种信息你都可以想办法检查出来。但是,你能造得出一张人民币么?你不能。
除非你有专门的机器,专门的纸张油墨,专门的技术流程。这些才是源代码,那一张人民币本身并不是。
查看源代码并不意味着开源。
所谓的查看源代码是浏览器里的查看页面源代码的效果。这些代码很多情况下都是被编译后的代码,并非原始代码。并且还是前端页面用到的代码。而一个网站的工作前端展示和交互操作只是很小一部分。你的一个点击,可能触发的是按钮按下后页面向服务器发送了一个包含请求的url,然后服务器就开始工作,找到信息返回给页面。而具体服务器端怎么做,你是看不到代码的。
1、http是超文本传输协议,它最早的设计就是偶放个文件在服务器上大家自己看就好了,没后端这一说法的,所以html一直都是文本文件。
2、前端上的那些技术其实出现过很多二进制的,从java applet到activex再到flash,其实html+js+css成为主流并没有很长历史。js一开始是做些简单的dom操作的,比如做个文字变色之类的简单的东西,不复杂所以也就是文本文件了。
3、所有二进制的方案基本都有安全性问题,后来也渐渐不用了。脚本文件曾经还有过vbs,不过这东西也已经emmmm
4、大概google还是谁(肯定不是ms)带头用js+css做web应用,大家才发现前端还能这样啊,就开始了。
首先你看到的不是源代码,只是一种标记语言。
HTML称为超文本标记语言,是一种标识性的语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。[1]
简单的是,就是把文字标记都好看一点,把图片和文字整合在一起,就是排版。
然后加入了一些动态元素,比如git动画,视频,音频flash动画等。
css是做美化的,js是一种脚本语言。
就好比,你用记事本打开一个txt文件,就可以看到一大堆文字,这个有什么源码不源码的?
用浏览器打开html文件,本质和记事本打开txt是一样的,只是浏览器可以根据标记(标签,css)渲染的好看一些。