这个问题,吾其实认为很简单:

  用户看到的部分,就是前端。主要指页面内容。

  用户看不到的部分,就是后端。比如数据库、业务逻辑等。

  这个说法是不是对的呢?吾上网搜索了一些说法,供大家参考:

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

  • 前端:是网民在上网页时第一眼看到的页面或是分支点信息页面等。或者是页面中的图片、文字、框架分配、视频、语音等整体布局都是web的前端。

  • 后端:是网民第一眼是看不到的,一般只有部分专业人员才能大致看到。像语言编写、创建方式、改写或优化网站的方式这些操作则为web的后端。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1、网站前端

网站前端就是网站的页面设计或者是静态的网页设计,简单的说我们访问一个网站看到的所有页面网页上的内容和版式样式都属于网站前端,网站前端工作就是设计网站的静态页面,所谓的静态页面就是网站前端不包括后端,简单的例子说一下,静态页面就像一张报纸,上面有文字图片和内容,并排好版,之所以称之为静态是因为这些内容不能动态的改变,也就是所有人看到的静态页面都是一模一样的,没有任何区别,这是因为这个页面是静态的,不会改变。总之,网站前端就是指的网站的静态页面设计,网站前端工作使用的是html、css、js等技术设计网站页面的样式和排版布局,这就是网站前端。

2、网站后端

网站后端也叫网站后台技术或者动态网站技术,上面我们也说了静态页面的缺点就是不能动态的改变页面上的内容和实现一些代码逻辑,比如我们要实现用户的注册登录验证、或者购物结算等,这些都是要代码逻辑来实现的,还有我们需要一个后台来往我们的网页添加一些消息新闻通知等,因为不是每一个网站的使用者都懂前端技术来来改变页面内容,而且这样也太不方便了,所以需要网站后台来实现这些功能,这些东西都是需要网站后台技术来实现的。常见的网站后端开发语言有asp、asp.net、jsp、php等。同时网站后台技术还包括数据库如MySQL、sqlserver等,数据库是用来存储后台数据的。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

网站前端和后台的工作是完全不同的,前端的工作是设计静态页面,后台是结合数据库实现一些代码的逻辑如验证用户登录等,后台更加偏重与逻辑思维。

使用html、Javascript写的是Web前端,它不用向服务器(比如apache、nginx、tomcat等)交互在浏览器端就执行完了,比如使用Javascript弹出一个警告框的效果。

而php、Python等是后台语言,当通过浏览器向服务器发送访问php文件的请求时(比如:http://localhost:63342/php_basic/helloworld.php),由web服务器收到请求,发现是php代码则交给php解析器完成解析,然后发回给web服务器,最后返回给浏览器。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

一个追求任何场景下都美丽动人,

一个追求巨大压力下举重若轻。

但两者又必须密切分工合作,才能使得项目顺利进行。分工的核心在于在哪里渲染页面。不同的渲染位置决定了不同分工模式。

在服务器端渲染

这个模式有一个问题——不能实现部分更新。即使用户点了一个按钮,产生了很细微的数据变动,也需要后端重新渲染整个页面再将页面发往浏览器端。如果页面存在大量的静态的部分,这种方式无疑不是高效的。

同时,前端工程师们需要用模板定义展现形式,后端工程师们需要用模板输出数据。久而久之,模板就会越来越复杂,越来越不可维护。

在浏览器端渲染

浏览器端发送请求后从服务器端接受到了模板和 J S代码。浏览器执行接受到的 JS 代码,JS 代码会从服务器请求数据,并将数据填充到模板中。

利用运行在浏览器端的Javascript语言,前端工程师能够从后端服务器获取数据,进而按照业务逻辑渲染页面。这时候后端工程师只需要开发稳定的 API 提供数据就可以了。这种模式虽然依然是B/S模式,但开发的场景却和C/S模式比较相近。在浏览器端渲染的好处在于前端完全控制了模板,后端只需要开发相应的 API, 分工比较明确。并且支持部分页面更新。同时同一套后端服务可以同时支持不同的展示模式,比如同一套后端服务还可以支持移动开发。

当然啦,浏览器渲染也存在一些问题。其中最大的问题是对 SEO 不友好。搜索引擎的爬虫程序必须像浏览器一样执行 JS 代码才能获得页面的内容,从而提高了爬虫爬取页面的难度。

大前端模式

借助神器Node.js,前端工程师终于把磨爪伸进服务器了。Node.js是一个来自老毛子的高性能异步服务器。如果只是一个服务器,Node.js并不出奇。一般服务器需要提供一种编程语言的runtime,方便开发者进行开发。Node.js因为异步的关系选择了异步性能很好的Javascript,就是前端工程师经常在页面上写的那个Javascript。这时前端工程师们一看,呀,这玩意我会呀。因此利用Node.js,前端工程师不再局限在浏览器,可以在服务器写Javascript代码了。这时前端工程师可以按需要,选择在浏览器端或者服务器端完成渲染。这个模式我们可以称之为大前端模式。

大前端模式下,前端工程师有更大的灵活性进行开发,从而可以避免前面两种模式的弊端,发挥他们的长处。但是,世间无十全十美之事,大前端模式也有自己的弊端。前端工程师们被赋予了服务器写代码的能力,也就需要承担服务器编程的责任。能力越大责任也就越大嘛。在服务器写代码,前端工程师必须承担日志、安全和负载均衡等后端工程师才需要承担的责任。大前端攻城狮相当于把前端攻城狮和后端攻城狮两种物种的基因杂揉在一起创造出来的混元体,其稀有程度可想而知。这也就是现在精通Node.js程序员少的原因。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Tomcat是Application Server,Apache和Nginx则是Web Server,这两者有区别。

Web Server一般是完整实现了HTTP协议的服务器,负责接收用户的HTTP请求,然后响应请求,至于这么处理这个请求,就要交给Application Server去处理了,Application Server里面跑着像PHP,Python的脚本。Web Server和Application Server之间需要通过协议沟通,比如CGI、WSGI这类东西。虽然一些Application Server也能充当Web Server,但是它们对HTTP协议的实现并不完整,因此生产环境下不会这么用。

像node这种本身自带Web Server的,就不需要额外弄一个Web Server了。SSR的情况下,直接服务端渲染返回,这个理解起来应该不难。如果非SSR,后端返回一个页面,前端要加去载。至于前端资源要放哪,可以有很多选择,直接放在项目静态资源目录下,或者上传到CDN,或者在nginx下开一个静态目录存放都可以。

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

前端技术

  • nodejs.
  • webpack.

后端技术

  • mysql.
  • springMVC.

1、前端请求数据URL由谁来写

在开发中,URL主要是由后台来写好给前端。 
若后台在查询数据,需要借助查询条件才能查询到前端需要的数据时,这时后台会要求前端提供相关的查询参数(即URL请求的参数)。

2、接口文档主要由谁来写

接口文档主要由后台设计和修改。 
后台直接跟数据打交道,最清楚数据库里有什么数据,能返回什么数据。 
前端只是数据的被动接受者,只是接口文档的使用者。 
使用过程中,发现返回的数据部队,则跟后台商量,由后台修改。 
切记:前端不能随意更改接口文档,除非取得后台同意。

3、前端与后台交互的数据格式

主要是JSON,XML现在用的不多

JSON 通常用于与服务端交换数据。

在接收服务器数据时一般是字符串。

我们可以使用 JSON.parse() 方法将数据转换为 JavaScript 对象。

4、前端与后台的交互原理

关注点:接口地址、前端请求的参数、后端返回的参数。 
调一下接口,看一下返回的数据。

5、前端请求参数的形式

GET和POST两种方式 
GET从指定的服务器中获取数据,POST提交数据给指定的服务器处理

6、前端应该告知后台那些有效信息,后台才能返回前端想要的数据

先将要展示的页面内容进行模块划分,将模块的内容提取出来,以及方便前端的一些标志值等,将所有想要的内容和逻辑告知后端 
后端从数据库里面去查询相应的数据表以获得相应的内容或者图片地址信息 
URL中的参数主要是根据后台需要,若后台需要一个参数作为查询的辅助条件,前端在URL数据请求时就传递参数

7、前端如何把页面信息有效传达给后台,以及后台如何获取到这些数据

所有前端请求的URL后面的参数都是辅助后台数据查询的 
若不需要参数,那后台就会直接给个URL给前端

8、前端应该如何回拒一些本不属于自己做的一些功能需求或任务

前端负责把数据展示在页面上 
清晰的认识自己需要做的需求和任务

9、当前端在调用数据接口时,发现有些数据不是我们想要的,那么前端应该怎么办

把请求的URL和返回的数据以及在页面的展示的情况给后台看【后台查询数据、取数据、封装数据方面等蛮难处理的】

10、为什么需要在请求的时候传入参数

后台在查询数据库的时候需要条件查询

WEB前端、后端的说明相关推荐

  1. Web前端后端傻傻分不清

    前言   做C开发将近六年,基本上没有接触过web相关的东西,原来听别人说web相关的东西的时候也是分不太清楚到底哪个是前端哪个是后台,前端和后台又是怎么配合着工作的?经过各方法搜索,很多类似的疑问终 ...

  2. web前端后端的连接:Servlet简单演示

    一.简介 1.项目中我们一般使用IDEA用作后端开发,HBuilderX用作前端开发.要实现前后端的连接,需要通过Servlet来实现. 2.什么是servlet呢? Servlet(Server A ...

  3. python web前端后端页面详解

    HTML DOM elements 集合: 第一栏:elements是基础元素:(网页源代码) 这几个参数都比较重要:在基础入门web的时候,判断出问题需要找这几个参数: elements.resou ...

  4. 前后端解析_好程序员Web前端教程分享前后端分离接口

    随着互联网的高速发展以及IT开发技术的升级,前后端分离已成为互联网项目开发的业界标准使用方式.在实际工作中,前后端的接口联调对接工作量占Web前端人员日常工作的30%-50%,甚至会更高.接下来的好程 ...

  5. Java、Python、Go 哪个后端编程语言适合web前端工程师学习?

    不知道作为web前端工程师的大家有没有相似的经历:很多时候我们想深入学习node,立志向web全栈方向发展,但是却十分遗憾的发现很多node教程基本都是helloworld级别的.如果真想搞后端开发, ...

  6. web前端技术分享:前端开发与后端开发的区别是什么?

    相信很多人在技术岗都听到过前端和后端这两个职位,但是大部分人对前端开发与后端开发的区别是什么?并不是很清楚,下面小千就为大家详细的介绍一下两者的区别之处. web前端分享:前端开发与后端开发的区别是什 ...

  7. Web前端和后端开发的区别和要求

    Web前端和后端开发的区别和要求 有时候自己会分不清,其实是因为前后端都了解,类似于全栈工程师,但又什么都不是很精通.那到底什么是前端.后端呢,我整理了一些企业要求级别的前端/后端基础,开发框架等. ...

  8. Web前端和后端的区别是什么?如何区分?

    Web前端和后端的区别是什么?如何区分?从前端和后端两者工作内容和负责项目是完全不同.后端:入门难深入更难,枯燥乏味,看业务逻辑代码:前端:入门简单先易后难,能看到自己做出来的展示界面,有成就感. W ...

  9. web前端(2)——了解什么是前端,以及与后端的关系

    简介 1.什么是web前端 说这个之前,我们先了解web前端工程师是干什么的,百度百科的解释: Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript/Flash等各种Web ...

  10. 站点的安全防范都是后端的职责?非也,Web前端安全同样不可忽视

    前言 随着网络的快速普及,网络安全问题的受害者不再只是政府.企业等集体,每一个接触网络的普通人都有可能成为网络攻击的受害者.随着网络的普及,黑客进行网络攻击的手段越来也多,越来越复杂.以网站的攻击为例 ...

最新文章

  1. 怎么挪动_你真的懂iPhone上的小圆点怎么玩吗
  2. Hibernate 小结
  3. spring AoP学习 -----AoP织入器ProxyFactory剖析
  4. html分页实现w3c,分页_w3cschool
  5. android五子棋设计模板,基于android的五子棋游戏设计
  6. dp - 2016腾讯笔试 A
  7. Android 来电归属地显示功能demo
  8. 洛谷——P1909 [NOIP2016 普及组] 买铅笔
  9. UnityShader9.1:光照基础实例
  10. 查询名字重复但不是相同的人的记录
  11. 帆软折线图设置红色警戒线
  12. Qt 5.x 多点触摸配置
  13. 菜菜学paddle第六篇:利用LeNet卷积神经网络识别手写数字
  14. 金山WPS升级后导致用友输出Excel表格打不开
  15. PID算法实现及参数整定图解(附代码)
  16. 奶牛家族(斐波那契数列的快速幂乘矩阵算法)
  17. 搭建量化交易系统接口的步骤是什么?
  18. 安装完Vmware-tools后找不到共享文件夹的解决办法-Ubuntu 18有效
  19. 网际协议IP---ARP协议
  20. camera Intrinsic and Extrinsic

热门文章

  1. 【少儿软件的定制】如何吸引少儿的学习兴趣?如何提高少儿学习软件的粘度?
  2. linux Load average负载详细解释
  3. apollo重要服务之metaService
  4. for循环中包含跨服务查询优化
  5. “狮”口逃生!长颈鹿勇斗狮群 4小时后脱身
  6. 团队作业3 需求分析与系统设计
  7. 九天学会Java,第三天,选择结构
  8. JQuery easyui (1) Draggable(拖动)组件
  9. hive变量传递的源码实现
  10. Python使用matplotlib可视化模拟正弦余弦折线图