Java大概是什么,前端后端又是什么意思?

来来来,让我这个善良的小哥哥来告诉你。

从你的提问来看,我暂且当做你对计算机编程几乎什么都不知道,努力说明到小学生都能明白的程度。如果达不到,就只有请其他高人写更好的回答了。

首先,java是个什么。

在公元1995年之前,为众人所知的java代表的是东南亚的一个小岛。

公元1995年,当时还活着的Sun公司,把Oak改名为java发布了出来。从那以后,更为人熟知的java,就是一个技术名词了。如果不追求精确的表达,可以说java就是一门计算机语言。但是这个计算机语言编译出来字节码只能运行在java虚拟机上,所以,java有时候也指代包括虚拟机等在内的整个平台。

好吧,我说过要努力让小学生也能懂,所以,这里本来应该再解释一下什么是计算机语言,什么是编译,什么是虚拟机。不过,那样有点偏离主题了,如果不知道,可以自己去查查,或者再提几个问题:什么是计算机语言,什么是编译,什么是虚拟机……我这里就省略了。

至此,java是个什么就已经说完了。

然后,再来说后端。

这个要说,先得说一下现在我们看到的网页是啥。

我们通常看到的网页,本来都是放在遥远的服务器上的。这个服务器不是你在用的电脑也不是手机,而是网络那一头连接的一台电脑(当然,也可以是手机)。你在浏览器里填写网址,按下回车之后,浏览器就替你通过网络去服务器上把网页弄到你自己的电脑上了。然后,浏览器就根据定义好的规则,读这个网页,把它转化成相应的文字、颜色、格式,显示在屏幕上。

上古的网页,基本就是这样的了。服务器上放着固定的文件,每个人看到的网页也都一样。后来,有人觉得这样不好玩,我们应该让每个人看到的不一样才有趣。尤其是想通过网页卖货的人,总不能跟所有人收一样的钱吧……

所以,有人就开始在服务器上写程序。当接到浏览器要某个网页的请求的时候,根据请求里面的内容现编网页。反正网页也不过就是个包含了一些规则的文字,只要根据一些条件编出来不同的文字就好了。

后来,人们发现这个办法好啊!就都开始这么玩了。后来越玩越大,程序也越来越复杂,最开始人们用来写这些程序的C语言呀、perl什么的,已经没办法满足大家希望快速开发这种编网页的程序的需要了,于是大家就开始用各种各样的语言开始玩这个。而且还出现了专门干这个的框架软件。

这种编网页的软件,叫做应用服务器(Application Server)。呃……服务器这个词有点被滥用了,有时候指硬件,有时候指软件。这里的应用服务器指的是软件。哦,对了,刚才说的提供普通网页的服务器,叫……Web服务器(Web Server),这玩意儿的中文应该怎么翻译?网页服务器?大概是吧。

因为这些服务器都在网络的另一端,或者从我们坐着的位置来看,在网线的后面,所以,这部分的工作,都被简称为后端(backend)的工作了。

那么,这个后端跟Java有什么关系呢?

刚才说了,很多编程语言后来都加入到了后端编程的行列里。其中就包括java,而且因为各种各样的原因,java成为了这各种各样语言中被广泛使用的语言之一,并且有很多大企业和组织联合起来制定了用java写后端的规则——术语叫标准。所以,很多人一提到后端就想到java,也不奇怪了。

最后,再来说说前端

刚才说了,因为在网线的后面,所以叫后端,那么前端自然就是网线前面的部分了。也就是我们自己电脑上或者手机上运行的部分。

当然,所有的前端后端都是指网络服务相关的,所以,不联网的程序,虽然也是运行在我们自己的设备上,通常不在前后端的讨论范围之内。当然,这并不排除这类程序也可能用到相关的技术。

网络服务相关的程序,目前应用最广的,就是网页了。所以,网页相关技术就成了主要的前端技术。

本来,上古时期的网页,就是能把文字稍微加点格式显示出来的东西。后来,人们加上了图片、声音、动画、按钮……越加越多,结果现在都够做个操作系统了。所以,相关的技术也就越来越复杂了。

然而,前端再复杂,本质还是从后端发过来的东西或者处理从后端发过来的东西。所以,前端后端总是不分家的。而且要提前谈好了,才能做好整套系统。前端想要造个飞机,后端给发了一堆奶嘴,显然这套系统就彻底完蛋了。

广义说来,前端也不光是网页,手机应用,也算作是前端的范畴。一切IoT设备,也都可以算作是前端的部分。不过,狭义说前端,一般也就是指用HTML/CSS/JavaScript来做网页了。

哦,对了,这里有个JavaScript,看起来跟Java长得挺像,其实跟Java几乎就是两个东西,当年这玩意儿就是为了蹭Java的热度,才起了这么个名字,用了相似的语法。

至此,差不多就说完了。

最后总结一下,后端是网线后面,用的是服务器上的资源;前端是网线前面,用的是自己家的电。java是一个自带平台的计算机语言,在后端开发上有广泛应用,偶尔也有做前端的时候。(曾经在前端也广泛应用过,后来没了……)

本文以通俗易懂为第一优先级,部分定义或许不严谨。欢迎在评论中补充严谨定义。


补充一下,这里说的网线前后,是指通常情况。有时候,比如开发的时候,都是在一台电脑上完成的,就没有网线这一说了。这时候,可以理解为在电脑里面有一根网线,前端连后端是自己连自己。并不会因为都在一台电脑上,这个概念就消失了。

原创文章 Java大概是什么,前端后端又是什么意思?,版权所有
如若转载,请注明出处:https://www.itxiaozhan.cn/202211359.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注