一个老问题,前端不仅仅只是拥有展示的能力,数据库也拥有业务处理的能力,那这两者与应用程序间责任的分配应该是怎样的?

枚枚枚 发布于 2017/06/29 15:33
阅读 111
收藏 0

一个老问题,前端不仅仅只是拥有展示的能力,数据库也拥有业务处理的能力,那这两者与应用程序间责任的分配应该是怎样的?

加载中
0
DeMoNHaDeS
DeMoNHaDeS

拿地图举例

一些比较简单的且不需要验证的逻辑,比如地图上两点测距,可以放到前端实现。

复杂一些的逻辑需要放后台,比如计算路线。

还有一些逻辑,比如输入框里面字符长度限制,前后端可能都需要有,前端是为了提示友好,后端是为了数据准确。

大致是这样,能放前端的一般尽量放前端,减少通讯和服务器压力。具体情况具体分析吧。

DeMoNHaDeS
DeMoNHaDeS
回复 @枚枚枚 : 基本思路是这样,但是总会有些特殊情况需要平衡。1、比如某个功能可能需要的数据比较复杂,需要多表关联,那么在数据库中查出来放到程序里处理反而会增加程序与数据库的通讯压力以及程序的压力,还不如写个sql将数据组装一下,毕竟数据库处理数据的效率更高,需要传输的数据量也会减小。2、大部分的逻辑处理是需要在后台验证的,放到前端并不安全,因此虽然说尽量放前端,但是能放的逻辑实际有限
枚枚枚
枚枚枚
我其实是这么想的,数据库作为数据源来说,要尽量减少数据库压力,所有数据库仅提供增删查改的功能,将复杂的逻辑放在应用程序,即数据转换组装等等。对于前端来说,需要的做的是对后台返回数据进行展示处理,例如数据的拼接,view的显示权限等。将压力从数据库平摊到服务器,再平摊到前端浏览器等,当然这只是对于WEB的认知。不知道对不对
返回顶部
顶部